[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-openai-payments":3,"mdc-w0jfx2-key":35,"related-repo-openai-payments":6350,"related-org-openai-payments":6472},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":24,"repoUrl":25,"updatedAt":26,"license":27,"forks":28,"topics":29,"repo":30,"sourceUrl":33,"mdContent":34},"payments","integrate Stripe payments and subscriptions","Stripe payments integration guidance — native Vercel Marketplace setup, checkout sessions, webhook handling, subscription billing, and the Stripe SDK. Use when implementing payments, subscriptions, or processing transactions.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"openai","OpenAI","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fopenai.png",[12,16,19,21],{"name":13,"slug":14,"type":15},"Vercel","vercel","tag",{"name":17,"slug":18,"type":15},"SaaS","saas",{"name":20,"slug":4,"type":15},"Payments",{"name":22,"slug":23,"type":15},"Stripe","stripe",3992,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins","2026-04-06T18:40:58.33106",null,465,[],{"repoUrl":25,"stars":24,"forks":28,"topics":31,"description":32},[],"OpenAI Plugins","https:\u002F\u002Fgithub.com\u002Fopenai\u002Fplugins\u002Ftree\u002FHEAD\u002Fplugins\u002Fvercel\u002Fskills\u002Fpayments","---\nname: payments\ndescription: Stripe payments integration guidance — native Vercel Marketplace setup, checkout sessions, webhook handling, subscription billing, and the Stripe SDK. Use when implementing payments, subscriptions, or processing transactions.\nmetadata:\n  priority: 5\n  docs:\n    - \"https:\u002F\u002Fdocs.stripe.com\"\n    - \"https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Fquickstart\"\n  sitemap: \"https:\u002F\u002Fdocs.stripe.com\u002Fsitemap.xml\"\n  pathPatterns:\n    - 'app\u002Fapi\u002Fwebhook\u002Fstripe\u002F**'\n    - 'app\u002Fapi\u002Fwebhooks\u002Fstripe\u002F**'\n    - 'src\u002Fapp\u002Fapi\u002Fwebhook\u002Fstripe\u002F**'\n    - 'src\u002Fapp\u002Fapi\u002Fwebhooks\u002Fstripe\u002F**'\n    - 'pages\u002Fapi\u002Fwebhook\u002Fstripe.*'\n    - 'pages\u002Fapi\u002Fwebhooks\u002Fstripe.*'\n    - 'app\u002Fapi\u002Fcheckout\u002F**'\n    - 'src\u002Fapp\u002Fapi\u002Fcheckout\u002F**'\n    - 'app\u002Fapi\u002Fstripe\u002F**'\n    - 'src\u002Fapp\u002Fapi\u002Fstripe\u002F**'\n    - 'lib\u002Fstripe.*'\n    - 'src\u002Flib\u002Fstripe.*'\n    - 'utils\u002Fstripe.*'\n    - 'src\u002Futils\u002Fstripe.*'\n  bashPatterns:\n    - '\\bnpm\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b'\n    - '\\bpnpm\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b'\n    - '\\bbun\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b'\n    - '\\byarn\\s+add\\s+[^\\n]*\\bstripe\\b'\n    - '\\bnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b'\n    - '\\bpnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b'\n    - '\\bbun\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b'\n    - '\\byarn\\s+add\\s+[^\\n]*@stripe\u002Fstripe-js\\b'\n    - '\\bnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b'\n    - '\\bpnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b'\n    - '\\bbun\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b'\n    - '\\byarn\\s+add\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b'\n---\n\n# Stripe Payments Integration\n\nYou are an expert in Stripe payments for Vercel-deployed applications — covering the native Vercel Marketplace integration, Checkout Sessions, webhook handling, subscription billing, and the Stripe Node.js SDK.\n\n## Vercel Marketplace Setup (Recommended)\n\nStripe is a native Vercel Marketplace integration with sandbox provisioning and unified billing.\n\n### Install via Marketplace\n\n```bash\n# Install Stripe from Vercel Marketplace (auto-provisions sandbox + env vars)\nvercel integration add stripe\n```\n\nAuto-provisioned environment variables:\n- `STRIPE_SECRET_KEY` — server-side API key\n- `STRIPE_PUBLISHABLE_KEY` — client-side publishable key\n- `STRIPE_WEBHOOK_SECRET` — webhook endpoint signing secret\n\n### SDK Setup\n\n```bash\n# Server-side SDK\nnpm install stripe\n\n# Client-side SDK (for Stripe Elements \u002F Checkout)\nnpm install @stripe\u002Fstripe-js @stripe\u002Freact-stripe-js\n```\n\n### Initialize the Stripe Client\n\n```ts\n\u002F\u002F lib\u002Fstripe.ts\nimport Stripe from \"stripe\";\n\nexport const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, {\n  apiVersion: \"2026-02-25.clover\",\n  typescript: true,\n});\n```\n\n## Checkout Sessions\n\n### Server Action (Recommended for 2026)\n\nServer Actions are the preferred pattern for creating Checkout Sessions in Next.js 15+, eliminating the need for API routes:\n\n```ts\n\u002F\u002F app\u002Factions\u002Fcheckout.ts\n\"use server\";\nimport { redirect } from \"next\u002Fnavigation\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function createCheckoutSession(priceId: string) {\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\",\n    line_items: [{ price: priceId, quantity: 1 }],\n    success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n    cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fcancel`,\n  });\n\n  redirect(session.url!);\n}\n```\n\n```tsx\n\u002F\u002F app\u002Fpricing\u002Fpage.tsx\nimport { createCheckoutSession } from \"@\u002Fapp\u002Factions\u002Fcheckout\";\n\nexport default function PricingPage() {\n  return (\n    \u003Cform action={createCheckoutSession.bind(null, \"price_xxx\")}>\n      \u003Cbutton type=\"submit\">Buy Now\u003C\u002Fbutton>\n    \u003C\u002Fform>\n  );\n}\n```\n\n### Create a Checkout Session (API Route)\n\n```ts\n\u002F\u002F app\u002Fapi\u002Fcheckout\u002Froute.ts\nimport { NextResponse } from \"next\u002Fserver\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function POST(req: Request) {\n  const { priceId } = await req.json();\n\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\", \u002F\u002F or \"subscription\" for recurring\n    payment_method_types: [\"card\"],\n    line_items: [{ price: priceId, quantity: 1 }],\n    success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n    cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fcancel`,\n  });\n\n  return NextResponse.json({ url: session.url });\n}\n```\n\n### Redirect to Checkout (Client)\n\n```tsx\n\"use client\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nexport function CheckoutButton({ priceId }: { priceId: string }) {\n  const handleCheckout = async () => {\n    const res = await fetch(\"\u002Fapi\u002Fcheckout\", {\n      method: \"POST\",\n      headers: { \"Content-Type\": \"application\u002Fjson\" },\n      body: JSON.stringify({ priceId }),\n    });\n    const { url } = await res.json();\n    window.location.href = url;\n  };\n\n  return \u003Cbutton onClick={handleCheckout}>Subscribe\u003C\u002Fbutton>;\n}\n```\n\n## Webhook Handling\n\nStripe sends events to your webhook endpoint for asynchronous payment processing. Always verify the signature.\n\n```ts\n\u002F\u002F app\u002Fapi\u002Fwebhook\u002Fstripe\u002Froute.ts\nimport { NextResponse } from \"next\u002Fserver\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\nimport Stripe from \"stripe\";\n\nexport async function POST(req: Request) {\n  const body = await req.text();\n  const signature = req.headers.get(\"stripe-signature\")!;\n\n  let event: Stripe.Event;\n  try {\n    event = stripe.webhooks.constructEvent(\n      body,\n      signature,\n      process.env.STRIPE_WEBHOOK_SECRET!\n    );\n  } catch (err) {\n    return NextResponse.json({ error: \"Invalid signature\" }, { status: 400 });\n  }\n\n  switch (event.type) {\n    case \"checkout.session.completed\": {\n      const session = event.data.object as Stripe.Checkout.Session;\n      \u002F\u002F Fulfill the order — update database, send confirmation, etc.\n      break;\n    }\n    case \"invoice.payment_succeeded\": {\n      const invoice = event.data.object as Stripe.Invoice;\n      \u002F\u002F Handle successful subscription renewal\n      break;\n    }\n    case \"customer.subscription.deleted\": {\n      const subscription = event.data.object as Stripe.Subscription;\n      \u002F\u002F Handle cancellation — revoke access\n      break;\n    }\n  }\n\n  return NextResponse.json({ received: true });\n}\n```\n\n**Important**: Webhook routes must read the raw body as text (not JSON) for signature verification. Do not add `bodyParser` or JSON middleware to webhook routes.\n\n## Subscription Billing\n\n### Create a Subscription Checkout\n\n```ts\nconst session = await stripe.checkout.sessions.create({\n  mode: \"subscription\",\n  line_items: [{ price: priceId, quantity: 1 }],\n  success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fdashboard`,\n  cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fpricing`,\n});\n```\n\n### Customer Portal\n\nAllow customers to manage their subscriptions:\n\n```ts\n\u002F\u002F app\u002Fapi\u002Fportal\u002Froute.ts\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function POST(req: Request) {\n  const { customerId } = await req.json();\n\n  const session = await stripe.billingPortal.sessions.create({\n    customer: customerId,\n    return_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fdashboard`,\n  });\n\n  return Response.json({ url: session.url });\n}\n```\n\n## Embedded Checkout (Recommended)\n\nStripe's Embedded Checkout renders inside your page via an iframe, keeping users on your domain while offloading PCI compliance to Stripe:\n\n```ts\n\u002F\u002F app\u002Factions\u002Fembedded-checkout.ts\n\"use server\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function createEmbeddedCheckout(priceId: string) {\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\",\n    line_items: [{ price: priceId, quantity: 1 }],\n    ui_mode: \"embedded\",\n    return_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n  });\n\n  return { clientSecret: session.client_secret! };\n}\n```\n\n```tsx\n\"use client\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\nimport { EmbeddedCheckoutProvider, EmbeddedCheckout } from \"@stripe\u002Freact-stripe-js\";\nimport { createEmbeddedCheckout } from \"@\u002Fapp\u002Factions\u002Fembedded-checkout\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nexport function CheckoutEmbed({ priceId }: { priceId: string }) {\n  return (\n    \u003CEmbeddedCheckoutProvider\n      stripe={stripePromise}\n      options={{ fetchClientSecret: () => createEmbeddedCheckout(priceId).then(r => r.clientSecret) }}\n    >\n      \u003CEmbeddedCheckout \u002F>\n    \u003C\u002FEmbeddedCheckoutProvider>\n  );\n}\n```\n\n## Stripe Elements (Custom Forms)\n\n```tsx\n\"use client\";\nimport { Elements, PaymentElement, useStripe, useElements } from \"@stripe\u002Freact-stripe-js\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nfunction CheckoutForm() {\n  const stripe = useStripe();\n  const elements = useElements();\n\n  const handleSubmit = async (e: React.FormEvent) => {\n    e.preventDefault();\n    if (!stripe || !elements) return;\n\n    const { error } = await stripe.confirmPayment({\n      elements,\n      confirmParams: { return_url: `${window.location.origin}\u002Fsuccess` },\n    });\n\n    if (error) console.error(error.message);\n  };\n\n  return (\n    \u003Cform onSubmit={handleSubmit}>\n      \u003CPaymentElement \u002F>\n      \u003Cbutton type=\"submit\" disabled={!stripe}>Pay\u003C\u002Fbutton>\n    \u003C\u002Fform>\n  );\n}\n\nexport function PaymentForm({ clientSecret }: { clientSecret: string }) {\n  return (\n    \u003CElements stripe={stripePromise} options={{ clientSecret }}>\n      \u003CCheckoutForm \u002F>\n    \u003C\u002FElements>\n  );\n}\n```\n\n## Environment Variables\n\n| Variable | Scope | Description |\n|----------|-------|-------------|\n| `STRIPE_SECRET_KEY` | Server | API secret key (starts with `sk_`) |\n| `STRIPE_PUBLISHABLE_KEY` | Client | Publishable key (starts with `pk_`) |\n| `NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY` | Client | Alias exposed to browser via Next.js |\n| `STRIPE_WEBHOOK_SECRET` | Server | Webhook signing secret (starts with `whsec_`) |\n\n## Cross-References\n\n- **Marketplace install and env var provisioning** → `⤳ skill: marketplace`\n- **Webhook route patterns** → `⤳ skill: routing-middleware`\n- **Environment variable management** → `⤳ skill: env-vars`\n- **Serverless function config** → `⤳ skill: vercel-functions`\n\n## Official Documentation\n\n- [Stripe + Vercel Marketplace](https:\u002F\u002Fvercel.com\u002Fmarketplace\u002Fstripe)\n- [Stripe Node.js SDK](https:\u002F\u002Fdocs.stripe.com\u002Fsdks)\n- [Stripe Checkout](https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Fcheckout)\n- [Stripe Webhooks](https:\u002F\u002Fdocs.stripe.com\u002Fwebhooks)\n- [Stripe Elements](https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Felements)\n",{"data":36,"body":71},{"name":4,"description":6,"metadata":37},{"priority":38,"docs":39,"sitemap":42,"pathPatterns":43,"bashPatterns":58},5,[40,41],"https:\u002F\u002Fdocs.stripe.com","https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Fquickstart","https:\u002F\u002Fdocs.stripe.com\u002Fsitemap.xml",[44,45,46,47,48,49,50,51,52,53,54,55,56,57],"app\u002Fapi\u002Fwebhook\u002Fstripe\u002F**","app\u002Fapi\u002Fwebhooks\u002Fstripe\u002F**","src\u002Fapp\u002Fapi\u002Fwebhook\u002Fstripe\u002F**","src\u002Fapp\u002Fapi\u002Fwebhooks\u002Fstripe\u002F**","pages\u002Fapi\u002Fwebhook\u002Fstripe.*","pages\u002Fapi\u002Fwebhooks\u002Fstripe.*","app\u002Fapi\u002Fcheckout\u002F**","src\u002Fapp\u002Fapi\u002Fcheckout\u002F**","app\u002Fapi\u002Fstripe\u002F**","src\u002Fapp\u002Fapi\u002Fstripe\u002F**","lib\u002Fstripe.*","src\u002Flib\u002Fstripe.*","utils\u002Fstripe.*","src\u002Futils\u002Fstripe.*",[59,60,61,62,63,64,65,66,67,68,69,70],"\\bnpm\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b","\\bpnpm\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b","\\bbun\\s+(install|i|add)\\s+[^\\n]*\\bstripe\\b","\\byarn\\s+add\\s+[^\\n]*\\bstripe\\b","\\bnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b","\\bpnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b","\\bbun\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Fstripe-js\\b","\\byarn\\s+add\\s+[^\\n]*@stripe\u002Fstripe-js\\b","\\bnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b","\\bpnpm\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b","\\bbun\\s+(install|i|add)\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b","\\byarn\\s+add\\s+[^\\n]*@stripe\u002Freact-stripe-js\\b",{"type":72,"children":73},"root",[74,83,89,96,101,108,157,162,200,206,278,284,489,495,501,506,1032,1301,1307,1887,1893,2476,2482,2487,3529,3548,3554,3560,3833,3839,3844,4220,4226,4231,4647,5102,5108,6071,6077,6213,6219,6283,6289,6344],{"type":75,"tag":76,"props":77,"children":79},"element","h1",{"id":78},"stripe-payments-integration",[80],{"type":81,"value":82},"text","Stripe Payments Integration",{"type":75,"tag":84,"props":85,"children":86},"p",{},[87],{"type":81,"value":88},"You are an expert in Stripe payments for Vercel-deployed applications — covering the native Vercel Marketplace integration, Checkout Sessions, webhook handling, subscription billing, and the Stripe Node.js SDK.",{"type":75,"tag":90,"props":91,"children":93},"h2",{"id":92},"vercel-marketplace-setup-recommended",[94],{"type":81,"value":95},"Vercel Marketplace Setup (Recommended)",{"type":75,"tag":84,"props":97,"children":98},{},[99],{"type":81,"value":100},"Stripe is a native Vercel Marketplace integration with sandbox provisioning and unified billing.",{"type":75,"tag":102,"props":103,"children":105},"h3",{"id":104},"install-via-marketplace",[106],{"type":81,"value":107},"Install via Marketplace",{"type":75,"tag":109,"props":110,"children":115},"pre",{"className":111,"code":112,"language":113,"meta":114,"style":114},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Install Stripe from Vercel Marketplace (auto-provisions sandbox + env vars)\nvercel integration add stripe\n","bash","",[116],{"type":75,"tag":117,"props":118,"children":119},"code",{"__ignoreMap":114},[120,132],{"type":75,"tag":121,"props":122,"children":125},"span",{"class":123,"line":124},"line",1,[126],{"type":75,"tag":121,"props":127,"children":129},{"style":128},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic",[130],{"type":81,"value":131},"# Install Stripe from Vercel Marketplace (auto-provisions sandbox + env vars)\n",{"type":75,"tag":121,"props":133,"children":135},{"class":123,"line":134},2,[136,141,147,152],{"type":75,"tag":121,"props":137,"children":139},{"style":138},"--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B",[140],{"type":81,"value":14},{"type":75,"tag":121,"props":142,"children":144},{"style":143},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[145],{"type":81,"value":146}," integration",{"type":75,"tag":121,"props":148,"children":149},{"style":143},[150],{"type":81,"value":151}," add",{"type":75,"tag":121,"props":153,"children":154},{"style":143},[155],{"type":81,"value":156}," stripe\n",{"type":75,"tag":84,"props":158,"children":159},{},[160],{"type":81,"value":161},"Auto-provisioned environment variables:",{"type":75,"tag":163,"props":164,"children":165},"ul",{},[166,178,189],{"type":75,"tag":167,"props":168,"children":169},"li",{},[170,176],{"type":75,"tag":117,"props":171,"children":173},{"className":172},[],[174],{"type":81,"value":175},"STRIPE_SECRET_KEY",{"type":81,"value":177}," — server-side API key",{"type":75,"tag":167,"props":179,"children":180},{},[181,187],{"type":75,"tag":117,"props":182,"children":184},{"className":183},[],[185],{"type":81,"value":186},"STRIPE_PUBLISHABLE_KEY",{"type":81,"value":188}," — client-side publishable key",{"type":75,"tag":167,"props":190,"children":191},{},[192,198],{"type":75,"tag":117,"props":193,"children":195},{"className":194},[],[196],{"type":81,"value":197},"STRIPE_WEBHOOK_SECRET",{"type":81,"value":199}," — webhook endpoint signing secret",{"type":75,"tag":102,"props":201,"children":203},{"id":202},"sdk-setup",[204],{"type":81,"value":205},"SDK Setup",{"type":75,"tag":109,"props":207,"children":209},{"className":111,"code":208,"language":113,"meta":114,"style":114},"# Server-side SDK\nnpm install stripe\n\n# Client-side SDK (for Stripe Elements \u002F Checkout)\nnpm install @stripe\u002Fstripe-js @stripe\u002Freact-stripe-js\n",[210],{"type":75,"tag":117,"props":211,"children":212},{"__ignoreMap":114},[213,221,238,248,257],{"type":75,"tag":121,"props":214,"children":215},{"class":123,"line":124},[216],{"type":75,"tag":121,"props":217,"children":218},{"style":128},[219],{"type":81,"value":220},"# Server-side SDK\n",{"type":75,"tag":121,"props":222,"children":223},{"class":123,"line":134},[224,229,234],{"type":75,"tag":121,"props":225,"children":226},{"style":138},[227],{"type":81,"value":228},"npm",{"type":75,"tag":121,"props":230,"children":231},{"style":143},[232],{"type":81,"value":233}," install",{"type":75,"tag":121,"props":235,"children":236},{"style":143},[237],{"type":81,"value":156},{"type":75,"tag":121,"props":239,"children":241},{"class":123,"line":240},3,[242],{"type":75,"tag":121,"props":243,"children":245},{"emptyLinePlaceholder":244},true,[246],{"type":81,"value":247},"\n",{"type":75,"tag":121,"props":249,"children":251},{"class":123,"line":250},4,[252],{"type":75,"tag":121,"props":253,"children":254},{"style":128},[255],{"type":81,"value":256},"# Client-side SDK (for Stripe Elements \u002F Checkout)\n",{"type":75,"tag":121,"props":258,"children":259},{"class":123,"line":38},[260,264,268,273],{"type":75,"tag":121,"props":261,"children":262},{"style":138},[263],{"type":81,"value":228},{"type":75,"tag":121,"props":265,"children":266},{"style":143},[267],{"type":81,"value":233},{"type":75,"tag":121,"props":269,"children":270},{"style":143},[271],{"type":81,"value":272}," @stripe\u002Fstripe-js",{"type":75,"tag":121,"props":274,"children":275},{"style":143},[276],{"type":81,"value":277}," @stripe\u002Freact-stripe-js\n",{"type":75,"tag":102,"props":279,"children":281},{"id":280},"initialize-the-stripe-client",[282],{"type":81,"value":283},"Initialize the Stripe Client",{"type":75,"tag":109,"props":285,"children":289},{"className":286,"code":287,"language":288,"meta":114,"style":114},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F lib\u002Fstripe.ts\nimport Stripe from \"stripe\";\n\nexport const stripe = new Stripe(process.env.STRIPE_SECRET_KEY!, {\n  apiVersion: \"2026-02-25.clover\",\n  typescript: true,\n});\n","ts",[290],{"type":75,"tag":117,"props":291,"children":292},{"__ignoreMap":114},[293,301,341,348,416,448,471],{"type":75,"tag":121,"props":294,"children":295},{"class":123,"line":124},[296],{"type":75,"tag":121,"props":297,"children":298},{"style":128},[299],{"type":81,"value":300},"\u002F\u002F lib\u002Fstripe.ts\n",{"type":75,"tag":121,"props":302,"children":303},{"class":123,"line":134},[304,310,316,321,327,331,336],{"type":75,"tag":121,"props":305,"children":307},{"style":306},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[308],{"type":81,"value":309},"import",{"type":75,"tag":121,"props":311,"children":313},{"style":312},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[314],{"type":81,"value":315}," Stripe ",{"type":75,"tag":121,"props":317,"children":318},{"style":306},[319],{"type":81,"value":320},"from",{"type":75,"tag":121,"props":322,"children":324},{"style":323},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[325],{"type":81,"value":326}," \"",{"type":75,"tag":121,"props":328,"children":329},{"style":143},[330],{"type":81,"value":23},{"type":75,"tag":121,"props":332,"children":333},{"style":323},[334],{"type":81,"value":335},"\"",{"type":75,"tag":121,"props":337,"children":338},{"style":323},[339],{"type":81,"value":340},";\n",{"type":75,"tag":121,"props":342,"children":343},{"class":123,"line":240},[344],{"type":75,"tag":121,"props":345,"children":346},{"emptyLinePlaceholder":244},[347],{"type":81,"value":247},{"type":75,"tag":121,"props":349,"children":350},{"class":123,"line":250},[351,356,362,367,372,377,383,388,393,398,402,406,411],{"type":75,"tag":121,"props":352,"children":353},{"style":306},[354],{"type":81,"value":355},"export",{"type":75,"tag":121,"props":357,"children":359},{"style":358},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[360],{"type":81,"value":361}," const",{"type":75,"tag":121,"props":363,"children":364},{"style":312},[365],{"type":81,"value":366}," stripe ",{"type":75,"tag":121,"props":368,"children":369},{"style":323},[370],{"type":81,"value":371},"=",{"type":75,"tag":121,"props":373,"children":374},{"style":323},[375],{"type":81,"value":376}," new",{"type":75,"tag":121,"props":378,"children":380},{"style":379},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[381],{"type":81,"value":382}," Stripe",{"type":75,"tag":121,"props":384,"children":385},{"style":312},[386],{"type":81,"value":387},"(process",{"type":75,"tag":121,"props":389,"children":390},{"style":323},[391],{"type":81,"value":392},".",{"type":75,"tag":121,"props":394,"children":395},{"style":312},[396],{"type":81,"value":397},"env",{"type":75,"tag":121,"props":399,"children":400},{"style":323},[401],{"type":81,"value":392},{"type":75,"tag":121,"props":403,"children":404},{"style":312},[405],{"type":81,"value":175},{"type":75,"tag":121,"props":407,"children":408},{"style":323},[409],{"type":81,"value":410},"!,",{"type":75,"tag":121,"props":412,"children":413},{"style":323},[414],{"type":81,"value":415}," {\n",{"type":75,"tag":121,"props":417,"children":418},{"class":123,"line":38},[419,425,430,434,439,443],{"type":75,"tag":121,"props":420,"children":422},{"style":421},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[423],{"type":81,"value":424},"  apiVersion",{"type":75,"tag":121,"props":426,"children":427},{"style":323},[428],{"type":81,"value":429},":",{"type":75,"tag":121,"props":431,"children":432},{"style":323},[433],{"type":81,"value":326},{"type":75,"tag":121,"props":435,"children":436},{"style":143},[437],{"type":81,"value":438},"2026-02-25.clover",{"type":75,"tag":121,"props":440,"children":441},{"style":323},[442],{"type":81,"value":335},{"type":75,"tag":121,"props":444,"children":445},{"style":323},[446],{"type":81,"value":447},",\n",{"type":75,"tag":121,"props":449,"children":451},{"class":123,"line":450},6,[452,457,461,467],{"type":75,"tag":121,"props":453,"children":454},{"style":421},[455],{"type":81,"value":456},"  typescript",{"type":75,"tag":121,"props":458,"children":459},{"style":323},[460],{"type":81,"value":429},{"type":75,"tag":121,"props":462,"children":464},{"style":463},"--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC",[465],{"type":81,"value":466}," true",{"type":75,"tag":121,"props":468,"children":469},{"style":323},[470],{"type":81,"value":447},{"type":75,"tag":121,"props":472,"children":474},{"class":123,"line":473},7,[475,480,485],{"type":75,"tag":121,"props":476,"children":477},{"style":323},[478],{"type":81,"value":479},"}",{"type":75,"tag":121,"props":481,"children":482},{"style":312},[483],{"type":81,"value":484},")",{"type":75,"tag":121,"props":486,"children":487},{"style":323},[488],{"type":81,"value":340},{"type":75,"tag":90,"props":490,"children":492},{"id":491},"checkout-sessions",[493],{"type":81,"value":494},"Checkout Sessions",{"type":75,"tag":102,"props":496,"children":498},{"id":497},"server-action-recommended-for-2026",[499],{"type":81,"value":500},"Server Action (Recommended for 2026)",{"type":75,"tag":84,"props":502,"children":503},{},[504],{"type":81,"value":505},"Server Actions are the preferred pattern for creating Checkout Sessions in Next.js 15+, eliminating the need for API routes:",{"type":75,"tag":109,"props":507,"children":509},{"className":286,"code":508,"language":288,"meta":114,"style":114},"\u002F\u002F app\u002Factions\u002Fcheckout.ts\n\"use server\";\nimport { redirect } from \"next\u002Fnavigation\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function createCheckoutSession(priceId: string) {\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\",\n    line_items: [{ price: priceId, quantity: 1 }],\n    success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n    cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fcancel`,\n  });\n\n  redirect(session.url!);\n}\n",[510],{"type":75,"tag":117,"props":511,"children":512},{"__ignoreMap":114},[513,521,541,585,626,633,683,746,776,846,904,958,975,983,1023],{"type":75,"tag":121,"props":514,"children":515},{"class":123,"line":124},[516],{"type":75,"tag":121,"props":517,"children":518},{"style":128},[519],{"type":81,"value":520},"\u002F\u002F app\u002Factions\u002Fcheckout.ts\n",{"type":75,"tag":121,"props":522,"children":523},{"class":123,"line":134},[524,528,533,537],{"type":75,"tag":121,"props":525,"children":526},{"style":323},[527],{"type":81,"value":335},{"type":75,"tag":121,"props":529,"children":530},{"style":143},[531],{"type":81,"value":532},"use server",{"type":75,"tag":121,"props":534,"children":535},{"style":323},[536],{"type":81,"value":335},{"type":75,"tag":121,"props":538,"children":539},{"style":323},[540],{"type":81,"value":340},{"type":75,"tag":121,"props":542,"children":543},{"class":123,"line":240},[544,548,553,558,563,568,572,577,581],{"type":75,"tag":121,"props":545,"children":546},{"style":306},[547],{"type":81,"value":309},{"type":75,"tag":121,"props":549,"children":550},{"style":323},[551],{"type":81,"value":552}," {",{"type":75,"tag":121,"props":554,"children":555},{"style":312},[556],{"type":81,"value":557}," redirect",{"type":75,"tag":121,"props":559,"children":560},{"style":323},[561],{"type":81,"value":562}," }",{"type":75,"tag":121,"props":564,"children":565},{"style":306},[566],{"type":81,"value":567}," from",{"type":75,"tag":121,"props":569,"children":570},{"style":323},[571],{"type":81,"value":326},{"type":75,"tag":121,"props":573,"children":574},{"style":143},[575],{"type":81,"value":576},"next\u002Fnavigation",{"type":75,"tag":121,"props":578,"children":579},{"style":323},[580],{"type":81,"value":335},{"type":75,"tag":121,"props":582,"children":583},{"style":323},[584],{"type":81,"value":340},{"type":75,"tag":121,"props":586,"children":587},{"class":123,"line":250},[588,592,596,601,605,609,613,618,622],{"type":75,"tag":121,"props":589,"children":590},{"style":306},[591],{"type":81,"value":309},{"type":75,"tag":121,"props":593,"children":594},{"style":323},[595],{"type":81,"value":552},{"type":75,"tag":121,"props":597,"children":598},{"style":312},[599],{"type":81,"value":600}," stripe",{"type":75,"tag":121,"props":602,"children":603},{"style":323},[604],{"type":81,"value":562},{"type":75,"tag":121,"props":606,"children":607},{"style":306},[608],{"type":81,"value":567},{"type":75,"tag":121,"props":610,"children":611},{"style":323},[612],{"type":81,"value":326},{"type":75,"tag":121,"props":614,"children":615},{"style":143},[616],{"type":81,"value":617},"@\u002Flib\u002Fstripe",{"type":75,"tag":121,"props":619,"children":620},{"style":323},[621],{"type":81,"value":335},{"type":75,"tag":121,"props":623,"children":624},{"style":323},[625],{"type":81,"value":340},{"type":75,"tag":121,"props":627,"children":628},{"class":123,"line":38},[629],{"type":75,"tag":121,"props":630,"children":631},{"emptyLinePlaceholder":244},[632],{"type":81,"value":247},{"type":75,"tag":121,"props":634,"children":635},{"class":123,"line":450},[636,640,645,650,655,660,666,670,675,679],{"type":75,"tag":121,"props":637,"children":638},{"style":306},[639],{"type":81,"value":355},{"type":75,"tag":121,"props":641,"children":642},{"style":358},[643],{"type":81,"value":644}," async",{"type":75,"tag":121,"props":646,"children":647},{"style":358},[648],{"type":81,"value":649}," function",{"type":75,"tag":121,"props":651,"children":652},{"style":379},[653],{"type":81,"value":654}," createCheckoutSession",{"type":75,"tag":121,"props":656,"children":657},{"style":323},[658],{"type":81,"value":659},"(",{"type":75,"tag":121,"props":661,"children":663},{"style":662},"--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic",[664],{"type":81,"value":665},"priceId",{"type":75,"tag":121,"props":667,"children":668},{"style":323},[669],{"type":81,"value":429},{"type":75,"tag":121,"props":671,"children":672},{"style":138},[673],{"type":81,"value":674}," string",{"type":75,"tag":121,"props":676,"children":677},{"style":323},[678],{"type":81,"value":484},{"type":75,"tag":121,"props":680,"children":681},{"style":323},[682],{"type":81,"value":415},{"type":75,"tag":121,"props":684,"children":685},{"class":123,"line":473},[686,691,696,701,706,710,714,719,723,728,732,737,741],{"type":75,"tag":121,"props":687,"children":688},{"style":358},[689],{"type":81,"value":690},"  const",{"type":75,"tag":121,"props":692,"children":693},{"style":312},[694],{"type":81,"value":695}," session",{"type":75,"tag":121,"props":697,"children":698},{"style":323},[699],{"type":81,"value":700}," =",{"type":75,"tag":121,"props":702,"children":703},{"style":306},[704],{"type":81,"value":705}," await",{"type":75,"tag":121,"props":707,"children":708},{"style":312},[709],{"type":81,"value":600},{"type":75,"tag":121,"props":711,"children":712},{"style":323},[713],{"type":81,"value":392},{"type":75,"tag":121,"props":715,"children":716},{"style":312},[717],{"type":81,"value":718},"checkout",{"type":75,"tag":121,"props":720,"children":721},{"style":323},[722],{"type":81,"value":392},{"type":75,"tag":121,"props":724,"children":725},{"style":312},[726],{"type":81,"value":727},"sessions",{"type":75,"tag":121,"props":729,"children":730},{"style":323},[731],{"type":81,"value":392},{"type":75,"tag":121,"props":733,"children":734},{"style":379},[735],{"type":81,"value":736},"create",{"type":75,"tag":121,"props":738,"children":739},{"style":421},[740],{"type":81,"value":659},{"type":75,"tag":121,"props":742,"children":743},{"style":323},[744],{"type":81,"value":745},"{\n",{"type":75,"tag":121,"props":747,"children":749},{"class":123,"line":748},8,[750,755,759,763,768,772],{"type":75,"tag":121,"props":751,"children":752},{"style":421},[753],{"type":81,"value":754},"    mode",{"type":75,"tag":121,"props":756,"children":757},{"style":323},[758],{"type":81,"value":429},{"type":75,"tag":121,"props":760,"children":761},{"style":323},[762],{"type":81,"value":326},{"type":75,"tag":121,"props":764,"children":765},{"style":143},[766],{"type":81,"value":767},"payment",{"type":75,"tag":121,"props":769,"children":770},{"style":323},[771],{"type":81,"value":335},{"type":75,"tag":121,"props":773,"children":774},{"style":323},[775],{"type":81,"value":447},{"type":75,"tag":121,"props":777,"children":779},{"class":123,"line":778},9,[780,785,789,794,799,804,808,813,818,823,827,833,837,842],{"type":75,"tag":121,"props":781,"children":782},{"style":421},[783],{"type":81,"value":784},"    line_items",{"type":75,"tag":121,"props":786,"children":787},{"style":323},[788],{"type":81,"value":429},{"type":75,"tag":121,"props":790,"children":791},{"style":421},[792],{"type":81,"value":793}," [",{"type":75,"tag":121,"props":795,"children":796},{"style":323},[797],{"type":81,"value":798},"{",{"type":75,"tag":121,"props":800,"children":801},{"style":421},[802],{"type":81,"value":803}," price",{"type":75,"tag":121,"props":805,"children":806},{"style":323},[807],{"type":81,"value":429},{"type":75,"tag":121,"props":809,"children":810},{"style":312},[811],{"type":81,"value":812}," priceId",{"type":75,"tag":121,"props":814,"children":815},{"style":323},[816],{"type":81,"value":817},",",{"type":75,"tag":121,"props":819,"children":820},{"style":421},[821],{"type":81,"value":822}," quantity",{"type":75,"tag":121,"props":824,"children":825},{"style":323},[826],{"type":81,"value":429},{"type":75,"tag":121,"props":828,"children":830},{"style":829},"--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C",[831],{"type":81,"value":832}," 1",{"type":75,"tag":121,"props":834,"children":835},{"style":323},[836],{"type":81,"value":562},{"type":75,"tag":121,"props":838,"children":839},{"style":421},[840],{"type":81,"value":841},"]",{"type":75,"tag":121,"props":843,"children":844},{"style":323},[845],{"type":81,"value":447},{"type":75,"tag":121,"props":847,"children":849},{"class":123,"line":848},10,[850,855,859,864,869,873,877,881,886,890,895,900],{"type":75,"tag":121,"props":851,"children":852},{"style":421},[853],{"type":81,"value":854},"    success_url",{"type":75,"tag":121,"props":856,"children":857},{"style":323},[858],{"type":81,"value":429},{"type":75,"tag":121,"props":860,"children":861},{"style":323},[862],{"type":81,"value":863}," `${",{"type":75,"tag":121,"props":865,"children":866},{"style":312},[867],{"type":81,"value":868},"process",{"type":75,"tag":121,"props":870,"children":871},{"style":323},[872],{"type":81,"value":392},{"type":75,"tag":121,"props":874,"children":875},{"style":312},[876],{"type":81,"value":397},{"type":75,"tag":121,"props":878,"children":879},{"style":323},[880],{"type":81,"value":392},{"type":75,"tag":121,"props":882,"children":883},{"style":312},[884],{"type":81,"value":885},"NEXT_PUBLIC_APP_URL",{"type":75,"tag":121,"props":887,"children":888},{"style":323},[889],{"type":81,"value":479},{"type":75,"tag":121,"props":891,"children":892},{"style":143},[893],{"type":81,"value":894},"\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}",{"type":75,"tag":121,"props":896,"children":897},{"style":323},[898],{"type":81,"value":899},"`",{"type":75,"tag":121,"props":901,"children":902},{"style":323},[903],{"type":81,"value":447},{"type":75,"tag":121,"props":905,"children":907},{"class":123,"line":906},11,[908,913,917,921,925,929,933,937,941,945,950,954],{"type":75,"tag":121,"props":909,"children":910},{"style":421},[911],{"type":81,"value":912},"    cancel_url",{"type":75,"tag":121,"props":914,"children":915},{"style":323},[916],{"type":81,"value":429},{"type":75,"tag":121,"props":918,"children":919},{"style":323},[920],{"type":81,"value":863},{"type":75,"tag":121,"props":922,"children":923},{"style":312},[924],{"type":81,"value":868},{"type":75,"tag":121,"props":926,"children":927},{"style":323},[928],{"type":81,"value":392},{"type":75,"tag":121,"props":930,"children":931},{"style":312},[932],{"type":81,"value":397},{"type":75,"tag":121,"props":934,"children":935},{"style":323},[936],{"type":81,"value":392},{"type":75,"tag":121,"props":938,"children":939},{"style":312},[940],{"type":81,"value":885},{"type":75,"tag":121,"props":942,"children":943},{"style":323},[944],{"type":81,"value":479},{"type":75,"tag":121,"props":946,"children":947},{"style":143},[948],{"type":81,"value":949},"\u002Fcancel",{"type":75,"tag":121,"props":951,"children":952},{"style":323},[953],{"type":81,"value":899},{"type":75,"tag":121,"props":955,"children":956},{"style":323},[957],{"type":81,"value":447},{"type":75,"tag":121,"props":959,"children":961},{"class":123,"line":960},12,[962,967,971],{"type":75,"tag":121,"props":963,"children":964},{"style":323},[965],{"type":81,"value":966},"  }",{"type":75,"tag":121,"props":968,"children":969},{"style":421},[970],{"type":81,"value":484},{"type":75,"tag":121,"props":972,"children":973},{"style":323},[974],{"type":81,"value":340},{"type":75,"tag":121,"props":976,"children":978},{"class":123,"line":977},13,[979],{"type":75,"tag":121,"props":980,"children":981},{"emptyLinePlaceholder":244},[982],{"type":81,"value":247},{"type":75,"tag":121,"props":984,"children":986},{"class":123,"line":985},14,[987,992,996,1001,1005,1010,1015,1019],{"type":75,"tag":121,"props":988,"children":989},{"style":379},[990],{"type":81,"value":991},"  redirect",{"type":75,"tag":121,"props":993,"children":994},{"style":421},[995],{"type":81,"value":659},{"type":75,"tag":121,"props":997,"children":998},{"style":312},[999],{"type":81,"value":1000},"session",{"type":75,"tag":121,"props":1002,"children":1003},{"style":323},[1004],{"type":81,"value":392},{"type":75,"tag":121,"props":1006,"children":1007},{"style":312},[1008],{"type":81,"value":1009},"url",{"type":75,"tag":121,"props":1011,"children":1012},{"style":323},[1013],{"type":81,"value":1014},"!",{"type":75,"tag":121,"props":1016,"children":1017},{"style":421},[1018],{"type":81,"value":484},{"type":75,"tag":121,"props":1020,"children":1021},{"style":323},[1022],{"type":81,"value":340},{"type":75,"tag":121,"props":1024,"children":1026},{"class":123,"line":1025},15,[1027],{"type":75,"tag":121,"props":1028,"children":1029},{"style":323},[1030],{"type":81,"value":1031},"}\n",{"type":75,"tag":109,"props":1033,"children":1037},{"className":1034,"code":1035,"language":1036,"meta":114,"style":114},"language-tsx shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F app\u002Fpricing\u002Fpage.tsx\nimport { createCheckoutSession } from \"@\u002Fapp\u002Factions\u002Fcheckout\";\n\nexport default function PricingPage() {\n  return (\n    \u003Cform action={createCheckoutSession.bind(null, \"price_xxx\")}>\n      \u003Cbutton type=\"submit\">Buy Now\u003C\u002Fbutton>\n    \u003C\u002Fform>\n  );\n}\n","tsx",[1038],{"type":75,"tag":117,"props":1039,"children":1040},{"__ignoreMap":114},[1041,1049,1089,1096,1126,1139,1207,1266,1282,1294],{"type":75,"tag":121,"props":1042,"children":1043},{"class":123,"line":124},[1044],{"type":75,"tag":121,"props":1045,"children":1046},{"style":128},[1047],{"type":81,"value":1048},"\u002F\u002F app\u002Fpricing\u002Fpage.tsx\n",{"type":75,"tag":121,"props":1050,"children":1051},{"class":123,"line":134},[1052,1056,1060,1064,1068,1072,1076,1081,1085],{"type":75,"tag":121,"props":1053,"children":1054},{"style":306},[1055],{"type":81,"value":309},{"type":75,"tag":121,"props":1057,"children":1058},{"style":323},[1059],{"type":81,"value":552},{"type":75,"tag":121,"props":1061,"children":1062},{"style":312},[1063],{"type":81,"value":654},{"type":75,"tag":121,"props":1065,"children":1066},{"style":323},[1067],{"type":81,"value":562},{"type":75,"tag":121,"props":1069,"children":1070},{"style":306},[1071],{"type":81,"value":567},{"type":75,"tag":121,"props":1073,"children":1074},{"style":323},[1075],{"type":81,"value":326},{"type":75,"tag":121,"props":1077,"children":1078},{"style":143},[1079],{"type":81,"value":1080},"@\u002Fapp\u002Factions\u002Fcheckout",{"type":75,"tag":121,"props":1082,"children":1083},{"style":323},[1084],{"type":81,"value":335},{"type":75,"tag":121,"props":1086,"children":1087},{"style":323},[1088],{"type":81,"value":340},{"type":75,"tag":121,"props":1090,"children":1091},{"class":123,"line":240},[1092],{"type":75,"tag":121,"props":1093,"children":1094},{"emptyLinePlaceholder":244},[1095],{"type":81,"value":247},{"type":75,"tag":121,"props":1097,"children":1098},{"class":123,"line":250},[1099,1103,1108,1112,1117,1122],{"type":75,"tag":121,"props":1100,"children":1101},{"style":306},[1102],{"type":81,"value":355},{"type":75,"tag":121,"props":1104,"children":1105},{"style":306},[1106],{"type":81,"value":1107}," default",{"type":75,"tag":121,"props":1109,"children":1110},{"style":358},[1111],{"type":81,"value":649},{"type":75,"tag":121,"props":1113,"children":1114},{"style":379},[1115],{"type":81,"value":1116}," PricingPage",{"type":75,"tag":121,"props":1118,"children":1119},{"style":323},[1120],{"type":81,"value":1121},"()",{"type":75,"tag":121,"props":1123,"children":1124},{"style":323},[1125],{"type":81,"value":415},{"type":75,"tag":121,"props":1127,"children":1128},{"class":123,"line":38},[1129,1134],{"type":75,"tag":121,"props":1130,"children":1131},{"style":306},[1132],{"type":81,"value":1133},"  return",{"type":75,"tag":121,"props":1135,"children":1136},{"style":421},[1137],{"type":81,"value":1138}," (\n",{"type":75,"tag":121,"props":1140,"children":1141},{"class":123,"line":450},[1142,1147,1152,1157,1162,1167,1171,1176,1180,1185,1189,1194,1198,1202],{"type":75,"tag":121,"props":1143,"children":1144},{"style":323},[1145],{"type":81,"value":1146},"    \u003C",{"type":75,"tag":121,"props":1148,"children":1149},{"style":421},[1150],{"type":81,"value":1151},"form",{"type":75,"tag":121,"props":1153,"children":1154},{"style":358},[1155],{"type":81,"value":1156}," action",{"type":75,"tag":121,"props":1158,"children":1159},{"style":323},[1160],{"type":81,"value":1161},"={",{"type":75,"tag":121,"props":1163,"children":1164},{"style":312},[1165],{"type":81,"value":1166},"createCheckoutSession",{"type":75,"tag":121,"props":1168,"children":1169},{"style":323},[1170],{"type":81,"value":392},{"type":75,"tag":121,"props":1172,"children":1173},{"style":379},[1174],{"type":81,"value":1175},"bind",{"type":75,"tag":121,"props":1177,"children":1178},{"style":312},[1179],{"type":81,"value":659},{"type":75,"tag":121,"props":1181,"children":1182},{"style":323},[1183],{"type":81,"value":1184},"null,",{"type":75,"tag":121,"props":1186,"children":1187},{"style":323},[1188],{"type":81,"value":326},{"type":75,"tag":121,"props":1190,"children":1191},{"style":143},[1192],{"type":81,"value":1193},"price_xxx",{"type":75,"tag":121,"props":1195,"children":1196},{"style":323},[1197],{"type":81,"value":335},{"type":75,"tag":121,"props":1199,"children":1200},{"style":312},[1201],{"type":81,"value":484},{"type":75,"tag":121,"props":1203,"children":1204},{"style":323},[1205],{"type":81,"value":1206},"}>\n",{"type":75,"tag":121,"props":1208,"children":1209},{"class":123,"line":473},[1210,1215,1220,1225,1229,1233,1238,1242,1247,1252,1257,1261],{"type":75,"tag":121,"props":1211,"children":1212},{"style":323},[1213],{"type":81,"value":1214},"      \u003C",{"type":75,"tag":121,"props":1216,"children":1217},{"style":421},[1218],{"type":81,"value":1219},"button",{"type":75,"tag":121,"props":1221,"children":1222},{"style":358},[1223],{"type":81,"value":1224}," type",{"type":75,"tag":121,"props":1226,"children":1227},{"style":323},[1228],{"type":81,"value":371},{"type":75,"tag":121,"props":1230,"children":1231},{"style":323},[1232],{"type":81,"value":335},{"type":75,"tag":121,"props":1234,"children":1235},{"style":143},[1236],{"type":81,"value":1237},"submit",{"type":75,"tag":121,"props":1239,"children":1240},{"style":323},[1241],{"type":81,"value":335},{"type":75,"tag":121,"props":1243,"children":1244},{"style":323},[1245],{"type":81,"value":1246},">",{"type":75,"tag":121,"props":1248,"children":1249},{"style":312},[1250],{"type":81,"value":1251},"Buy Now",{"type":75,"tag":121,"props":1253,"children":1254},{"style":323},[1255],{"type":81,"value":1256},"\u003C\u002F",{"type":75,"tag":121,"props":1258,"children":1259},{"style":421},[1260],{"type":81,"value":1219},{"type":75,"tag":121,"props":1262,"children":1263},{"style":323},[1264],{"type":81,"value":1265},">\n",{"type":75,"tag":121,"props":1267,"children":1268},{"class":123,"line":748},[1269,1274,1278],{"type":75,"tag":121,"props":1270,"children":1271},{"style":323},[1272],{"type":81,"value":1273},"    \u003C\u002F",{"type":75,"tag":121,"props":1275,"children":1276},{"style":421},[1277],{"type":81,"value":1151},{"type":75,"tag":121,"props":1279,"children":1280},{"style":323},[1281],{"type":81,"value":1265},{"type":75,"tag":121,"props":1283,"children":1284},{"class":123,"line":778},[1285,1290],{"type":75,"tag":121,"props":1286,"children":1287},{"style":421},[1288],{"type":81,"value":1289},"  )",{"type":75,"tag":121,"props":1291,"children":1292},{"style":323},[1293],{"type":81,"value":340},{"type":75,"tag":121,"props":1295,"children":1296},{"class":123,"line":848},[1297],{"type":75,"tag":121,"props":1298,"children":1299},{"style":323},[1300],{"type":81,"value":1031},{"type":75,"tag":102,"props":1302,"children":1304},{"id":1303},"create-a-checkout-session-api-route",[1305],{"type":81,"value":1306},"Create a Checkout Session (API Route)",{"type":75,"tag":109,"props":1308,"children":1310},{"className":286,"code":1309,"language":288,"meta":114,"style":114},"\u002F\u002F app\u002Fapi\u002Fcheckout\u002Froute.ts\nimport { NextResponse } from \"next\u002Fserver\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function POST(req: Request) {\n  const { priceId } = await req.json();\n\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\", \u002F\u002F or \"subscription\" for recurring\n    payment_method_types: [\"card\"],\n    line_items: [{ price: priceId, quantity: 1 }],\n    success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n    cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fcancel`,\n  });\n\n  return NextResponse.json({ url: session.url });\n}\n",[1311],{"type":75,"tag":117,"props":1312,"children":1313},{"__ignoreMap":114},[1314,1322,1363,1402,1409,1455,1504,1511,1566,1598,1635,1694,1745,1796,1811,1818,1879],{"type":75,"tag":121,"props":1315,"children":1316},{"class":123,"line":124},[1317],{"type":75,"tag":121,"props":1318,"children":1319},{"style":128},[1320],{"type":81,"value":1321},"\u002F\u002F app\u002Fapi\u002Fcheckout\u002Froute.ts\n",{"type":75,"tag":121,"props":1323,"children":1324},{"class":123,"line":134},[1325,1329,1333,1338,1342,1346,1350,1355,1359],{"type":75,"tag":121,"props":1326,"children":1327},{"style":306},[1328],{"type":81,"value":309},{"type":75,"tag":121,"props":1330,"children":1331},{"style":323},[1332],{"type":81,"value":552},{"type":75,"tag":121,"props":1334,"children":1335},{"style":312},[1336],{"type":81,"value":1337}," NextResponse",{"type":75,"tag":121,"props":1339,"children":1340},{"style":323},[1341],{"type":81,"value":562},{"type":75,"tag":121,"props":1343,"children":1344},{"style":306},[1345],{"type":81,"value":567},{"type":75,"tag":121,"props":1347,"children":1348},{"style":323},[1349],{"type":81,"value":326},{"type":75,"tag":121,"props":1351,"children":1352},{"style":143},[1353],{"type":81,"value":1354},"next\u002Fserver",{"type":75,"tag":121,"props":1356,"children":1357},{"style":323},[1358],{"type":81,"value":335},{"type":75,"tag":121,"props":1360,"children":1361},{"style":323},[1362],{"type":81,"value":340},{"type":75,"tag":121,"props":1364,"children":1365},{"class":123,"line":240},[1366,1370,1374,1378,1382,1386,1390,1394,1398],{"type":75,"tag":121,"props":1367,"children":1368},{"style":306},[1369],{"type":81,"value":309},{"type":75,"tag":121,"props":1371,"children":1372},{"style":323},[1373],{"type":81,"value":552},{"type":75,"tag":121,"props":1375,"children":1376},{"style":312},[1377],{"type":81,"value":600},{"type":75,"tag":121,"props":1379,"children":1380},{"style":323},[1381],{"type":81,"value":562},{"type":75,"tag":121,"props":1383,"children":1384},{"style":306},[1385],{"type":81,"value":567},{"type":75,"tag":121,"props":1387,"children":1388},{"style":323},[1389],{"type":81,"value":326},{"type":75,"tag":121,"props":1391,"children":1392},{"style":143},[1393],{"type":81,"value":617},{"type":75,"tag":121,"props":1395,"children":1396},{"style":323},[1397],{"type":81,"value":335},{"type":75,"tag":121,"props":1399,"children":1400},{"style":323},[1401],{"type":81,"value":340},{"type":75,"tag":121,"props":1403,"children":1404},{"class":123,"line":250},[1405],{"type":75,"tag":121,"props":1406,"children":1407},{"emptyLinePlaceholder":244},[1408],{"type":81,"value":247},{"type":75,"tag":121,"props":1410,"children":1411},{"class":123,"line":38},[1412,1416,1420,1424,1429,1433,1438,1442,1447,1451],{"type":75,"tag":121,"props":1413,"children":1414},{"style":306},[1415],{"type":81,"value":355},{"type":75,"tag":121,"props":1417,"children":1418},{"style":358},[1419],{"type":81,"value":644},{"type":75,"tag":121,"props":1421,"children":1422},{"style":358},[1423],{"type":81,"value":649},{"type":75,"tag":121,"props":1425,"children":1426},{"style":379},[1427],{"type":81,"value":1428}," POST",{"type":75,"tag":121,"props":1430,"children":1431},{"style":323},[1432],{"type":81,"value":659},{"type":75,"tag":121,"props":1434,"children":1435},{"style":662},[1436],{"type":81,"value":1437},"req",{"type":75,"tag":121,"props":1439,"children":1440},{"style":323},[1441],{"type":81,"value":429},{"type":75,"tag":121,"props":1443,"children":1444},{"style":138},[1445],{"type":81,"value":1446}," Request",{"type":75,"tag":121,"props":1448,"children":1449},{"style":323},[1450],{"type":81,"value":484},{"type":75,"tag":121,"props":1452,"children":1453},{"style":323},[1454],{"type":81,"value":415},{"type":75,"tag":121,"props":1456,"children":1457},{"class":123,"line":450},[1458,1462,1466,1470,1474,1478,1482,1487,1491,1496,1500],{"type":75,"tag":121,"props":1459,"children":1460},{"style":358},[1461],{"type":81,"value":690},{"type":75,"tag":121,"props":1463,"children":1464},{"style":323},[1465],{"type":81,"value":552},{"type":75,"tag":121,"props":1467,"children":1468},{"style":312},[1469],{"type":81,"value":812},{"type":75,"tag":121,"props":1471,"children":1472},{"style":323},[1473],{"type":81,"value":562},{"type":75,"tag":121,"props":1475,"children":1476},{"style":323},[1477],{"type":81,"value":700},{"type":75,"tag":121,"props":1479,"children":1480},{"style":306},[1481],{"type":81,"value":705},{"type":75,"tag":121,"props":1483,"children":1484},{"style":312},[1485],{"type":81,"value":1486}," req",{"type":75,"tag":121,"props":1488,"children":1489},{"style":323},[1490],{"type":81,"value":392},{"type":75,"tag":121,"props":1492,"children":1493},{"style":379},[1494],{"type":81,"value":1495},"json",{"type":75,"tag":121,"props":1497,"children":1498},{"style":421},[1499],{"type":81,"value":1121},{"type":75,"tag":121,"props":1501,"children":1502},{"style":323},[1503],{"type":81,"value":340},{"type":75,"tag":121,"props":1505,"children":1506},{"class":123,"line":473},[1507],{"type":75,"tag":121,"props":1508,"children":1509},{"emptyLinePlaceholder":244},[1510],{"type":81,"value":247},{"type":75,"tag":121,"props":1512,"children":1513},{"class":123,"line":748},[1514,1518,1522,1526,1530,1534,1538,1542,1546,1550,1554,1558,1562],{"type":75,"tag":121,"props":1515,"children":1516},{"style":358},[1517],{"type":81,"value":690},{"type":75,"tag":121,"props":1519,"children":1520},{"style":312},[1521],{"type":81,"value":695},{"type":75,"tag":121,"props":1523,"children":1524},{"style":323},[1525],{"type":81,"value":700},{"type":75,"tag":121,"props":1527,"children":1528},{"style":306},[1529],{"type":81,"value":705},{"type":75,"tag":121,"props":1531,"children":1532},{"style":312},[1533],{"type":81,"value":600},{"type":75,"tag":121,"props":1535,"children":1536},{"style":323},[1537],{"type":81,"value":392},{"type":75,"tag":121,"props":1539,"children":1540},{"style":312},[1541],{"type":81,"value":718},{"type":75,"tag":121,"props":1543,"children":1544},{"style":323},[1545],{"type":81,"value":392},{"type":75,"tag":121,"props":1547,"children":1548},{"style":312},[1549],{"type":81,"value":727},{"type":75,"tag":121,"props":1551,"children":1552},{"style":323},[1553],{"type":81,"value":392},{"type":75,"tag":121,"props":1555,"children":1556},{"style":379},[1557],{"type":81,"value":736},{"type":75,"tag":121,"props":1559,"children":1560},{"style":421},[1561],{"type":81,"value":659},{"type":75,"tag":121,"props":1563,"children":1564},{"style":323},[1565],{"type":81,"value":745},{"type":75,"tag":121,"props":1567,"children":1568},{"class":123,"line":778},[1569,1573,1577,1581,1585,1589,1593],{"type":75,"tag":121,"props":1570,"children":1571},{"style":421},[1572],{"type":81,"value":754},{"type":75,"tag":121,"props":1574,"children":1575},{"style":323},[1576],{"type":81,"value":429},{"type":75,"tag":121,"props":1578,"children":1579},{"style":323},[1580],{"type":81,"value":326},{"type":75,"tag":121,"props":1582,"children":1583},{"style":143},[1584],{"type":81,"value":767},{"type":75,"tag":121,"props":1586,"children":1587},{"style":323},[1588],{"type":81,"value":335},{"type":75,"tag":121,"props":1590,"children":1591},{"style":323},[1592],{"type":81,"value":817},{"type":75,"tag":121,"props":1594,"children":1595},{"style":128},[1596],{"type":81,"value":1597}," \u002F\u002F or \"subscription\" for recurring\n",{"type":75,"tag":121,"props":1599,"children":1600},{"class":123,"line":848},[1601,1606,1610,1614,1618,1623,1627,1631],{"type":75,"tag":121,"props":1602,"children":1603},{"style":421},[1604],{"type":81,"value":1605},"    payment_method_types",{"type":75,"tag":121,"props":1607,"children":1608},{"style":323},[1609],{"type":81,"value":429},{"type":75,"tag":121,"props":1611,"children":1612},{"style":421},[1613],{"type":81,"value":793},{"type":75,"tag":121,"props":1615,"children":1616},{"style":323},[1617],{"type":81,"value":335},{"type":75,"tag":121,"props":1619,"children":1620},{"style":143},[1621],{"type":81,"value":1622},"card",{"type":75,"tag":121,"props":1624,"children":1625},{"style":323},[1626],{"type":81,"value":335},{"type":75,"tag":121,"props":1628,"children":1629},{"style":421},[1630],{"type":81,"value":841},{"type":75,"tag":121,"props":1632,"children":1633},{"style":323},[1634],{"type":81,"value":447},{"type":75,"tag":121,"props":1636,"children":1637},{"class":123,"line":906},[1638,1642,1646,1650,1654,1658,1662,1666,1670,1674,1678,1682,1686,1690],{"type":75,"tag":121,"props":1639,"children":1640},{"style":421},[1641],{"type":81,"value":784},{"type":75,"tag":121,"props":1643,"children":1644},{"style":323},[1645],{"type":81,"value":429},{"type":75,"tag":121,"props":1647,"children":1648},{"style":421},[1649],{"type":81,"value":793},{"type":75,"tag":121,"props":1651,"children":1652},{"style":323},[1653],{"type":81,"value":798},{"type":75,"tag":121,"props":1655,"children":1656},{"style":421},[1657],{"type":81,"value":803},{"type":75,"tag":121,"props":1659,"children":1660},{"style":323},[1661],{"type":81,"value":429},{"type":75,"tag":121,"props":1663,"children":1664},{"style":312},[1665],{"type":81,"value":812},{"type":75,"tag":121,"props":1667,"children":1668},{"style":323},[1669],{"type":81,"value":817},{"type":75,"tag":121,"props":1671,"children":1672},{"style":421},[1673],{"type":81,"value":822},{"type":75,"tag":121,"props":1675,"children":1676},{"style":323},[1677],{"type":81,"value":429},{"type":75,"tag":121,"props":1679,"children":1680},{"style":829},[1681],{"type":81,"value":832},{"type":75,"tag":121,"props":1683,"children":1684},{"style":323},[1685],{"type":81,"value":562},{"type":75,"tag":121,"props":1687,"children":1688},{"style":421},[1689],{"type":81,"value":841},{"type":75,"tag":121,"props":1691,"children":1692},{"style":323},[1693],{"type":81,"value":447},{"type":75,"tag":121,"props":1695,"children":1696},{"class":123,"line":960},[1697,1701,1705,1709,1713,1717,1721,1725,1729,1733,1737,1741],{"type":75,"tag":121,"props":1698,"children":1699},{"style":421},[1700],{"type":81,"value":854},{"type":75,"tag":121,"props":1702,"children":1703},{"style":323},[1704],{"type":81,"value":429},{"type":75,"tag":121,"props":1706,"children":1707},{"style":323},[1708],{"type":81,"value":863},{"type":75,"tag":121,"props":1710,"children":1711},{"style":312},[1712],{"type":81,"value":868},{"type":75,"tag":121,"props":1714,"children":1715},{"style":323},[1716],{"type":81,"value":392},{"type":75,"tag":121,"props":1718,"children":1719},{"style":312},[1720],{"type":81,"value":397},{"type":75,"tag":121,"props":1722,"children":1723},{"style":323},[1724],{"type":81,"value":392},{"type":75,"tag":121,"props":1726,"children":1727},{"style":312},[1728],{"type":81,"value":885},{"type":75,"tag":121,"props":1730,"children":1731},{"style":323},[1732],{"type":81,"value":479},{"type":75,"tag":121,"props":1734,"children":1735},{"style":143},[1736],{"type":81,"value":894},{"type":75,"tag":121,"props":1738,"children":1739},{"style":323},[1740],{"type":81,"value":899},{"type":75,"tag":121,"props":1742,"children":1743},{"style":323},[1744],{"type":81,"value":447},{"type":75,"tag":121,"props":1746,"children":1747},{"class":123,"line":977},[1748,1752,1756,1760,1764,1768,1772,1776,1780,1784,1788,1792],{"type":75,"tag":121,"props":1749,"children":1750},{"style":421},[1751],{"type":81,"value":912},{"type":75,"tag":121,"props":1753,"children":1754},{"style":323},[1755],{"type":81,"value":429},{"type":75,"tag":121,"props":1757,"children":1758},{"style":323},[1759],{"type":81,"value":863},{"type":75,"tag":121,"props":1761,"children":1762},{"style":312},[1763],{"type":81,"value":868},{"type":75,"tag":121,"props":1765,"children":1766},{"style":323},[1767],{"type":81,"value":392},{"type":75,"tag":121,"props":1769,"children":1770},{"style":312},[1771],{"type":81,"value":397},{"type":75,"tag":121,"props":1773,"children":1774},{"style":323},[1775],{"type":81,"value":392},{"type":75,"tag":121,"props":1777,"children":1778},{"style":312},[1779],{"type":81,"value":885},{"type":75,"tag":121,"props":1781,"children":1782},{"style":323},[1783],{"type":81,"value":479},{"type":75,"tag":121,"props":1785,"children":1786},{"style":143},[1787],{"type":81,"value":949},{"type":75,"tag":121,"props":1789,"children":1790},{"style":323},[1791],{"type":81,"value":899},{"type":75,"tag":121,"props":1793,"children":1794},{"style":323},[1795],{"type":81,"value":447},{"type":75,"tag":121,"props":1797,"children":1798},{"class":123,"line":985},[1799,1803,1807],{"type":75,"tag":121,"props":1800,"children":1801},{"style":323},[1802],{"type":81,"value":966},{"type":75,"tag":121,"props":1804,"children":1805},{"style":421},[1806],{"type":81,"value":484},{"type":75,"tag":121,"props":1808,"children":1809},{"style":323},[1810],{"type":81,"value":340},{"type":75,"tag":121,"props":1812,"children":1813},{"class":123,"line":1025},[1814],{"type":75,"tag":121,"props":1815,"children":1816},{"emptyLinePlaceholder":244},[1817],{"type":81,"value":247},{"type":75,"tag":121,"props":1819,"children":1821},{"class":123,"line":1820},16,[1822,1826,1830,1834,1838,1842,1846,1851,1855,1859,1863,1867,1871,1875],{"type":75,"tag":121,"props":1823,"children":1824},{"style":306},[1825],{"type":81,"value":1133},{"type":75,"tag":121,"props":1827,"children":1828},{"style":312},[1829],{"type":81,"value":1337},{"type":75,"tag":121,"props":1831,"children":1832},{"style":323},[1833],{"type":81,"value":392},{"type":75,"tag":121,"props":1835,"children":1836},{"style":379},[1837],{"type":81,"value":1495},{"type":75,"tag":121,"props":1839,"children":1840},{"style":421},[1841],{"type":81,"value":659},{"type":75,"tag":121,"props":1843,"children":1844},{"style":323},[1845],{"type":81,"value":798},{"type":75,"tag":121,"props":1847,"children":1848},{"style":421},[1849],{"type":81,"value":1850}," url",{"type":75,"tag":121,"props":1852,"children":1853},{"style":323},[1854],{"type":81,"value":429},{"type":75,"tag":121,"props":1856,"children":1857},{"style":312},[1858],{"type":81,"value":695},{"type":75,"tag":121,"props":1860,"children":1861},{"style":323},[1862],{"type":81,"value":392},{"type":75,"tag":121,"props":1864,"children":1865},{"style":312},[1866],{"type":81,"value":1009},{"type":75,"tag":121,"props":1868,"children":1869},{"style":323},[1870],{"type":81,"value":562},{"type":75,"tag":121,"props":1872,"children":1873},{"style":421},[1874],{"type":81,"value":484},{"type":75,"tag":121,"props":1876,"children":1877},{"style":323},[1878],{"type":81,"value":340},{"type":75,"tag":121,"props":1880,"children":1882},{"class":123,"line":1881},17,[1883],{"type":75,"tag":121,"props":1884,"children":1885},{"style":323},[1886],{"type":81,"value":1031},{"type":75,"tag":102,"props":1888,"children":1890},{"id":1889},"redirect-to-checkout-client",[1891],{"type":81,"value":1892},"Redirect to Checkout (Client)",{"type":75,"tag":109,"props":1894,"children":1896},{"className":1034,"code":1895,"language":1036,"meta":114,"style":114},"\"use client\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nexport function CheckoutButton({ priceId }: { priceId: string }) {\n  const handleCheckout = async () => {\n    const res = await fetch(\"\u002Fapi\u002Fcheckout\", {\n      method: \"POST\",\n      headers: { \"Content-Type\": \"application\u002Fjson\" },\n      body: JSON.stringify({ priceId }),\n    });\n    const { url } = await res.json();\n    window.location.href = url;\n  };\n\n  return \u003Cbutton onClick={handleCheckout}>Subscribe\u003C\u002Fbutton>;\n}\n",[1897],{"type":75,"tag":117,"props":1898,"children":1899},{"__ignoreMap":114},[1900,1920,1961,1968,2022,2029,2084,2118,2169,2198,2249,2299,2315,2362,2400,2408,2415,2468],{"type":75,"tag":121,"props":1901,"children":1902},{"class":123,"line":124},[1903,1907,1912,1916],{"type":75,"tag":121,"props":1904,"children":1905},{"style":323},[1906],{"type":81,"value":335},{"type":75,"tag":121,"props":1908,"children":1909},{"style":143},[1910],{"type":81,"value":1911},"use client",{"type":75,"tag":121,"props":1913,"children":1914},{"style":323},[1915],{"type":81,"value":335},{"type":75,"tag":121,"props":1917,"children":1918},{"style":323},[1919],{"type":81,"value":340},{"type":75,"tag":121,"props":1921,"children":1922},{"class":123,"line":134},[1923,1927,1931,1936,1940,1944,1948,1953,1957],{"type":75,"tag":121,"props":1924,"children":1925},{"style":306},[1926],{"type":81,"value":309},{"type":75,"tag":121,"props":1928,"children":1929},{"style":323},[1930],{"type":81,"value":552},{"type":75,"tag":121,"props":1932,"children":1933},{"style":312},[1934],{"type":81,"value":1935}," loadStripe",{"type":75,"tag":121,"props":1937,"children":1938},{"style":323},[1939],{"type":81,"value":562},{"type":75,"tag":121,"props":1941,"children":1942},{"style":306},[1943],{"type":81,"value":567},{"type":75,"tag":121,"props":1945,"children":1946},{"style":323},[1947],{"type":81,"value":326},{"type":75,"tag":121,"props":1949,"children":1950},{"style":143},[1951],{"type":81,"value":1952},"@stripe\u002Fstripe-js",{"type":75,"tag":121,"props":1954,"children":1955},{"style":323},[1956],{"type":81,"value":335},{"type":75,"tag":121,"props":1958,"children":1959},{"style":323},[1960],{"type":81,"value":340},{"type":75,"tag":121,"props":1962,"children":1963},{"class":123,"line":240},[1964],{"type":75,"tag":121,"props":1965,"children":1966},{"emptyLinePlaceholder":244},[1967],{"type":81,"value":247},{"type":75,"tag":121,"props":1969,"children":1970},{"class":123,"line":250},[1971,1976,1981,1985,1989,1993,1997,2001,2005,2010,2014,2018],{"type":75,"tag":121,"props":1972,"children":1973},{"style":358},[1974],{"type":81,"value":1975},"const",{"type":75,"tag":121,"props":1977,"children":1978},{"style":312},[1979],{"type":81,"value":1980}," stripePromise ",{"type":75,"tag":121,"props":1982,"children":1983},{"style":323},[1984],{"type":81,"value":371},{"type":75,"tag":121,"props":1986,"children":1987},{"style":379},[1988],{"type":81,"value":1935},{"type":75,"tag":121,"props":1990,"children":1991},{"style":312},[1992],{"type":81,"value":387},{"type":75,"tag":121,"props":1994,"children":1995},{"style":323},[1996],{"type":81,"value":392},{"type":75,"tag":121,"props":1998,"children":1999},{"style":312},[2000],{"type":81,"value":397},{"type":75,"tag":121,"props":2002,"children":2003},{"style":323},[2004],{"type":81,"value":392},{"type":75,"tag":121,"props":2006,"children":2007},{"style":312},[2008],{"type":81,"value":2009},"NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY",{"type":75,"tag":121,"props":2011,"children":2012},{"style":323},[2013],{"type":81,"value":1014},{"type":75,"tag":121,"props":2015,"children":2016},{"style":312},[2017],{"type":81,"value":484},{"type":75,"tag":121,"props":2019,"children":2020},{"style":323},[2021],{"type":81,"value":340},{"type":75,"tag":121,"props":2023,"children":2024},{"class":123,"line":38},[2025],{"type":75,"tag":121,"props":2026,"children":2027},{"emptyLinePlaceholder":244},[2028],{"type":81,"value":247},{"type":75,"tag":121,"props":2030,"children":2031},{"class":123,"line":450},[2032,2036,2040,2045,2050,2054,2059,2063,2067,2071,2075,2080],{"type":75,"tag":121,"props":2033,"children":2034},{"style":306},[2035],{"type":81,"value":355},{"type":75,"tag":121,"props":2037,"children":2038},{"style":358},[2039],{"type":81,"value":649},{"type":75,"tag":121,"props":2041,"children":2042},{"style":379},[2043],{"type":81,"value":2044}," CheckoutButton",{"type":75,"tag":121,"props":2046,"children":2047},{"style":323},[2048],{"type":81,"value":2049},"({",{"type":75,"tag":121,"props":2051,"children":2052},{"style":662},[2053],{"type":81,"value":812},{"type":75,"tag":121,"props":2055,"children":2056},{"style":323},[2057],{"type":81,"value":2058}," }:",{"type":75,"tag":121,"props":2060,"children":2061},{"style":323},[2062],{"type":81,"value":552},{"type":75,"tag":121,"props":2064,"children":2065},{"style":421},[2066],{"type":81,"value":812},{"type":75,"tag":121,"props":2068,"children":2069},{"style":323},[2070],{"type":81,"value":429},{"type":75,"tag":121,"props":2072,"children":2073},{"style":138},[2074],{"type":81,"value":674},{"type":75,"tag":121,"props":2076,"children":2077},{"style":323},[2078],{"type":81,"value":2079}," })",{"type":75,"tag":121,"props":2081,"children":2082},{"style":323},[2083],{"type":81,"value":415},{"type":75,"tag":121,"props":2085,"children":2086},{"class":123,"line":473},[2087,2091,2096,2100,2104,2109,2114],{"type":75,"tag":121,"props":2088,"children":2089},{"style":358},[2090],{"type":81,"value":690},{"type":75,"tag":121,"props":2092,"children":2093},{"style":312},[2094],{"type":81,"value":2095}," handleCheckout",{"type":75,"tag":121,"props":2097,"children":2098},{"style":323},[2099],{"type":81,"value":700},{"type":75,"tag":121,"props":2101,"children":2102},{"style":358},[2103],{"type":81,"value":644},{"type":75,"tag":121,"props":2105,"children":2106},{"style":323},[2107],{"type":81,"value":2108}," ()",{"type":75,"tag":121,"props":2110,"children":2111},{"style":358},[2112],{"type":81,"value":2113}," =>",{"type":75,"tag":121,"props":2115,"children":2116},{"style":323},[2117],{"type":81,"value":415},{"type":75,"tag":121,"props":2119,"children":2120},{"class":123,"line":748},[2121,2126,2131,2135,2139,2144,2148,2152,2157,2161,2165],{"type":75,"tag":121,"props":2122,"children":2123},{"style":358},[2124],{"type":81,"value":2125},"    const",{"type":75,"tag":121,"props":2127,"children":2128},{"style":312},[2129],{"type":81,"value":2130}," res",{"type":75,"tag":121,"props":2132,"children":2133},{"style":323},[2134],{"type":81,"value":700},{"type":75,"tag":121,"props":2136,"children":2137},{"style":306},[2138],{"type":81,"value":705},{"type":75,"tag":121,"props":2140,"children":2141},{"style":379},[2142],{"type":81,"value":2143}," fetch",{"type":75,"tag":121,"props":2145,"children":2146},{"style":421},[2147],{"type":81,"value":659},{"type":75,"tag":121,"props":2149,"children":2150},{"style":323},[2151],{"type":81,"value":335},{"type":75,"tag":121,"props":2153,"children":2154},{"style":143},[2155],{"type":81,"value":2156},"\u002Fapi\u002Fcheckout",{"type":75,"tag":121,"props":2158,"children":2159},{"style":323},[2160],{"type":81,"value":335},{"type":75,"tag":121,"props":2162,"children":2163},{"style":323},[2164],{"type":81,"value":817},{"type":75,"tag":121,"props":2166,"children":2167},{"style":323},[2168],{"type":81,"value":415},{"type":75,"tag":121,"props":2170,"children":2171},{"class":123,"line":778},[2172,2177,2181,2185,2190,2194],{"type":75,"tag":121,"props":2173,"children":2174},{"style":421},[2175],{"type":81,"value":2176},"      method",{"type":75,"tag":121,"props":2178,"children":2179},{"style":323},[2180],{"type":81,"value":429},{"type":75,"tag":121,"props":2182,"children":2183},{"style":323},[2184],{"type":81,"value":326},{"type":75,"tag":121,"props":2186,"children":2187},{"style":143},[2188],{"type":81,"value":2189},"POST",{"type":75,"tag":121,"props":2191,"children":2192},{"style":323},[2193],{"type":81,"value":335},{"type":75,"tag":121,"props":2195,"children":2196},{"style":323},[2197],{"type":81,"value":447},{"type":75,"tag":121,"props":2199,"children":2200},{"class":123,"line":848},[2201,2206,2210,2214,2218,2223,2227,2231,2235,2240,2244],{"type":75,"tag":121,"props":2202,"children":2203},{"style":421},[2204],{"type":81,"value":2205},"      headers",{"type":75,"tag":121,"props":2207,"children":2208},{"style":323},[2209],{"type":81,"value":429},{"type":75,"tag":121,"props":2211,"children":2212},{"style":323},[2213],{"type":81,"value":552},{"type":75,"tag":121,"props":2215,"children":2216},{"style":323},[2217],{"type":81,"value":326},{"type":75,"tag":121,"props":2219,"children":2220},{"style":421},[2221],{"type":81,"value":2222},"Content-Type",{"type":75,"tag":121,"props":2224,"children":2225},{"style":323},[2226],{"type":81,"value":335},{"type":75,"tag":121,"props":2228,"children":2229},{"style":323},[2230],{"type":81,"value":429},{"type":75,"tag":121,"props":2232,"children":2233},{"style":323},[2234],{"type":81,"value":326},{"type":75,"tag":121,"props":2236,"children":2237},{"style":143},[2238],{"type":81,"value":2239},"application\u002Fjson",{"type":75,"tag":121,"props":2241,"children":2242},{"style":323},[2243],{"type":81,"value":335},{"type":75,"tag":121,"props":2245,"children":2246},{"style":323},[2247],{"type":81,"value":2248}," },\n",{"type":75,"tag":121,"props":2250,"children":2251},{"class":123,"line":906},[2252,2257,2261,2266,2270,2275,2279,2283,2287,2291,2295],{"type":75,"tag":121,"props":2253,"children":2254},{"style":421},[2255],{"type":81,"value":2256},"      body",{"type":75,"tag":121,"props":2258,"children":2259},{"style":323},[2260],{"type":81,"value":429},{"type":75,"tag":121,"props":2262,"children":2263},{"style":312},[2264],{"type":81,"value":2265}," JSON",{"type":75,"tag":121,"props":2267,"children":2268},{"style":323},[2269],{"type":81,"value":392},{"type":75,"tag":121,"props":2271,"children":2272},{"style":379},[2273],{"type":81,"value":2274},"stringify",{"type":75,"tag":121,"props":2276,"children":2277},{"style":421},[2278],{"type":81,"value":659},{"type":75,"tag":121,"props":2280,"children":2281},{"style":323},[2282],{"type":81,"value":798},{"type":75,"tag":121,"props":2284,"children":2285},{"style":312},[2286],{"type":81,"value":812},{"type":75,"tag":121,"props":2288,"children":2289},{"style":323},[2290],{"type":81,"value":562},{"type":75,"tag":121,"props":2292,"children":2293},{"style":421},[2294],{"type":81,"value":484},{"type":75,"tag":121,"props":2296,"children":2297},{"style":323},[2298],{"type":81,"value":447},{"type":75,"tag":121,"props":2300,"children":2301},{"class":123,"line":960},[2302,2307,2311],{"type":75,"tag":121,"props":2303,"children":2304},{"style":323},[2305],{"type":81,"value":2306},"    }",{"type":75,"tag":121,"props":2308,"children":2309},{"style":421},[2310],{"type":81,"value":484},{"type":75,"tag":121,"props":2312,"children":2313},{"style":323},[2314],{"type":81,"value":340},{"type":75,"tag":121,"props":2316,"children":2317},{"class":123,"line":977},[2318,2322,2326,2330,2334,2338,2342,2346,2350,2354,2358],{"type":75,"tag":121,"props":2319,"children":2320},{"style":358},[2321],{"type":81,"value":2125},{"type":75,"tag":121,"props":2323,"children":2324},{"style":323},[2325],{"type":81,"value":552},{"type":75,"tag":121,"props":2327,"children":2328},{"style":312},[2329],{"type":81,"value":1850},{"type":75,"tag":121,"props":2331,"children":2332},{"style":323},[2333],{"type":81,"value":562},{"type":75,"tag":121,"props":2335,"children":2336},{"style":323},[2337],{"type":81,"value":700},{"type":75,"tag":121,"props":2339,"children":2340},{"style":306},[2341],{"type":81,"value":705},{"type":75,"tag":121,"props":2343,"children":2344},{"style":312},[2345],{"type":81,"value":2130},{"type":75,"tag":121,"props":2347,"children":2348},{"style":323},[2349],{"type":81,"value":392},{"type":75,"tag":121,"props":2351,"children":2352},{"style":379},[2353],{"type":81,"value":1495},{"type":75,"tag":121,"props":2355,"children":2356},{"style":421},[2357],{"type":81,"value":1121},{"type":75,"tag":121,"props":2359,"children":2360},{"style":323},[2361],{"type":81,"value":340},{"type":75,"tag":121,"props":2363,"children":2364},{"class":123,"line":985},[2365,2370,2374,2379,2383,2388,2392,2396],{"type":75,"tag":121,"props":2366,"children":2367},{"style":312},[2368],{"type":81,"value":2369},"    window",{"type":75,"tag":121,"props":2371,"children":2372},{"style":323},[2373],{"type":81,"value":392},{"type":75,"tag":121,"props":2375,"children":2376},{"style":312},[2377],{"type":81,"value":2378},"location",{"type":75,"tag":121,"props":2380,"children":2381},{"style":323},[2382],{"type":81,"value":392},{"type":75,"tag":121,"props":2384,"children":2385},{"style":312},[2386],{"type":81,"value":2387},"href",{"type":75,"tag":121,"props":2389,"children":2390},{"style":323},[2391],{"type":81,"value":700},{"type":75,"tag":121,"props":2393,"children":2394},{"style":312},[2395],{"type":81,"value":1850},{"type":75,"tag":121,"props":2397,"children":2398},{"style":323},[2399],{"type":81,"value":340},{"type":75,"tag":121,"props":2401,"children":2402},{"class":123,"line":1025},[2403],{"type":75,"tag":121,"props":2404,"children":2405},{"style":323},[2406],{"type":81,"value":2407},"  };\n",{"type":75,"tag":121,"props":2409,"children":2410},{"class":123,"line":1820},[2411],{"type":75,"tag":121,"props":2412,"children":2413},{"emptyLinePlaceholder":244},[2414],{"type":81,"value":247},{"type":75,"tag":121,"props":2416,"children":2417},{"class":123,"line":1881},[2418,2422,2427,2431,2436,2440,2445,2450,2455,2459,2463],{"type":75,"tag":121,"props":2419,"children":2420},{"style":306},[2421],{"type":81,"value":1133},{"type":75,"tag":121,"props":2423,"children":2424},{"style":323},[2425],{"type":81,"value":2426}," \u003C",{"type":75,"tag":121,"props":2428,"children":2429},{"style":421},[2430],{"type":81,"value":1219},{"type":75,"tag":121,"props":2432,"children":2433},{"style":358},[2434],{"type":81,"value":2435}," onClick",{"type":75,"tag":121,"props":2437,"children":2438},{"style":323},[2439],{"type":81,"value":1161},{"type":75,"tag":121,"props":2441,"children":2442},{"style":312},[2443],{"type":81,"value":2444},"handleCheckout",{"type":75,"tag":121,"props":2446,"children":2447},{"style":323},[2448],{"type":81,"value":2449},"}>",{"type":75,"tag":121,"props":2451,"children":2452},{"style":312},[2453],{"type":81,"value":2454},"Subscribe",{"type":75,"tag":121,"props":2456,"children":2457},{"style":323},[2458],{"type":81,"value":1256},{"type":75,"tag":121,"props":2460,"children":2461},{"style":421},[2462],{"type":81,"value":1219},{"type":75,"tag":121,"props":2464,"children":2465},{"style":323},[2466],{"type":81,"value":2467},">;\n",{"type":75,"tag":121,"props":2469,"children":2471},{"class":123,"line":2470},18,[2472],{"type":75,"tag":121,"props":2473,"children":2474},{"style":323},[2475],{"type":81,"value":1031},{"type":75,"tag":90,"props":2477,"children":2479},{"id":2478},"webhook-handling",[2480],{"type":81,"value":2481},"Webhook Handling",{"type":75,"tag":84,"props":2483,"children":2484},{},[2485],{"type":81,"value":2486},"Stripe sends events to your webhook endpoint for asynchronous payment processing. Always verify the signature.",{"type":75,"tag":109,"props":2488,"children":2490},{"className":286,"code":2489,"language":288,"meta":114,"style":114},"\u002F\u002F app\u002Fapi\u002Fwebhook\u002Fstripe\u002Froute.ts\nimport { NextResponse } from \"next\u002Fserver\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\nimport Stripe from \"stripe\";\n\nexport async function POST(req: Request) {\n  const body = await req.text();\n  const signature = req.headers.get(\"stripe-signature\")!;\n\n  let event: Stripe.Event;\n  try {\n    event = stripe.webhooks.constructEvent(\n      body,\n      signature,\n      process.env.STRIPE_WEBHOOK_SECRET!\n    );\n  } catch (err) {\n    return NextResponse.json({ error: \"Invalid signature\" }, { status: 400 });\n  }\n\n  switch (event.type) {\n    case \"checkout.session.completed\": {\n      const session = event.data.object as Stripe.Checkout.Session;\n      \u002F\u002F Fulfill the order — update database, send confirmation, etc.\n      break;\n    }\n    case \"invoice.payment_succeeded\": {\n      const invoice = event.data.object as Stripe.Invoice;\n      \u002F\u002F Handle successful subscription renewal\n      break;\n    }\n    case \"customer.subscription.deleted\": {\n      const subscription = event.data.object as Stripe.Subscription;\n      \u002F\u002F Handle cancellation — revoke access\n      break;\n    }\n  }\n\n  return NextResponse.json({ received: true });\n}\n",[2491],{"type":75,"tag":117,"props":2492,"children":2493},{"__ignoreMap":114},[2494,2502,2541,2580,2611,2618,2661,2701,2765,2772,2806,2818,2857,2868,2880,2909,2921,2952,3037,3046,3054,3089,3119,3189,3198,3211,3220,3249,3307,3316,3328,3336,3365,3423,3432,3444,3452,3460,3468,3521],{"type":75,"tag":121,"props":2495,"children":2496},{"class":123,"line":124},[2497],{"type":75,"tag":121,"props":2498,"children":2499},{"style":128},[2500],{"type":81,"value":2501},"\u002F\u002F app\u002Fapi\u002Fwebhook\u002Fstripe\u002Froute.ts\n",{"type":75,"tag":121,"props":2503,"children":2504},{"class":123,"line":134},[2505,2509,2513,2517,2521,2525,2529,2533,2537],{"type":75,"tag":121,"props":2506,"children":2507},{"style":306},[2508],{"type":81,"value":309},{"type":75,"tag":121,"props":2510,"children":2511},{"style":323},[2512],{"type":81,"value":552},{"type":75,"tag":121,"props":2514,"children":2515},{"style":312},[2516],{"type":81,"value":1337},{"type":75,"tag":121,"props":2518,"children":2519},{"style":323},[2520],{"type":81,"value":562},{"type":75,"tag":121,"props":2522,"children":2523},{"style":306},[2524],{"type":81,"value":567},{"type":75,"tag":121,"props":2526,"children":2527},{"style":323},[2528],{"type":81,"value":326},{"type":75,"tag":121,"props":2530,"children":2531},{"style":143},[2532],{"type":81,"value":1354},{"type":75,"tag":121,"props":2534,"children":2535},{"style":323},[2536],{"type":81,"value":335},{"type":75,"tag":121,"props":2538,"children":2539},{"style":323},[2540],{"type":81,"value":340},{"type":75,"tag":121,"props":2542,"children":2543},{"class":123,"line":240},[2544,2548,2552,2556,2560,2564,2568,2572,2576],{"type":75,"tag":121,"props":2545,"children":2546},{"style":306},[2547],{"type":81,"value":309},{"type":75,"tag":121,"props":2549,"children":2550},{"style":323},[2551],{"type":81,"value":552},{"type":75,"tag":121,"props":2553,"children":2554},{"style":312},[2555],{"type":81,"value":600},{"type":75,"tag":121,"props":2557,"children":2558},{"style":323},[2559],{"type":81,"value":562},{"type":75,"tag":121,"props":2561,"children":2562},{"style":306},[2563],{"type":81,"value":567},{"type":75,"tag":121,"props":2565,"children":2566},{"style":323},[2567],{"type":81,"value":326},{"type":75,"tag":121,"props":2569,"children":2570},{"style":143},[2571],{"type":81,"value":617},{"type":75,"tag":121,"props":2573,"children":2574},{"style":323},[2575],{"type":81,"value":335},{"type":75,"tag":121,"props":2577,"children":2578},{"style":323},[2579],{"type":81,"value":340},{"type":75,"tag":121,"props":2581,"children":2582},{"class":123,"line":250},[2583,2587,2591,2595,2599,2603,2607],{"type":75,"tag":121,"props":2584,"children":2585},{"style":306},[2586],{"type":81,"value":309},{"type":75,"tag":121,"props":2588,"children":2589},{"style":312},[2590],{"type":81,"value":315},{"type":75,"tag":121,"props":2592,"children":2593},{"style":306},[2594],{"type":81,"value":320},{"type":75,"tag":121,"props":2596,"children":2597},{"style":323},[2598],{"type":81,"value":326},{"type":75,"tag":121,"props":2600,"children":2601},{"style":143},[2602],{"type":81,"value":23},{"type":75,"tag":121,"props":2604,"children":2605},{"style":323},[2606],{"type":81,"value":335},{"type":75,"tag":121,"props":2608,"children":2609},{"style":323},[2610],{"type":81,"value":340},{"type":75,"tag":121,"props":2612,"children":2613},{"class":123,"line":38},[2614],{"type":75,"tag":121,"props":2615,"children":2616},{"emptyLinePlaceholder":244},[2617],{"type":81,"value":247},{"type":75,"tag":121,"props":2619,"children":2620},{"class":123,"line":450},[2621,2625,2629,2633,2637,2641,2645,2649,2653,2657],{"type":75,"tag":121,"props":2622,"children":2623},{"style":306},[2624],{"type":81,"value":355},{"type":75,"tag":121,"props":2626,"children":2627},{"style":358},[2628],{"type":81,"value":644},{"type":75,"tag":121,"props":2630,"children":2631},{"style":358},[2632],{"type":81,"value":649},{"type":75,"tag":121,"props":2634,"children":2635},{"style":379},[2636],{"type":81,"value":1428},{"type":75,"tag":121,"props":2638,"children":2639},{"style":323},[2640],{"type":81,"value":659},{"type":75,"tag":121,"props":2642,"children":2643},{"style":662},[2644],{"type":81,"value":1437},{"type":75,"tag":121,"props":2646,"children":2647},{"style":323},[2648],{"type":81,"value":429},{"type":75,"tag":121,"props":2650,"children":2651},{"style":138},[2652],{"type":81,"value":1446},{"type":75,"tag":121,"props":2654,"children":2655},{"style":323},[2656],{"type":81,"value":484},{"type":75,"tag":121,"props":2658,"children":2659},{"style":323},[2660],{"type":81,"value":415},{"type":75,"tag":121,"props":2662,"children":2663},{"class":123,"line":473},[2664,2668,2673,2677,2681,2685,2689,2693,2697],{"type":75,"tag":121,"props":2665,"children":2666},{"style":358},[2667],{"type":81,"value":690},{"type":75,"tag":121,"props":2669,"children":2670},{"style":312},[2671],{"type":81,"value":2672}," body",{"type":75,"tag":121,"props":2674,"children":2675},{"style":323},[2676],{"type":81,"value":700},{"type":75,"tag":121,"props":2678,"children":2679},{"style":306},[2680],{"type":81,"value":705},{"type":75,"tag":121,"props":2682,"children":2683},{"style":312},[2684],{"type":81,"value":1486},{"type":75,"tag":121,"props":2686,"children":2687},{"style":323},[2688],{"type":81,"value":392},{"type":75,"tag":121,"props":2690,"children":2691},{"style":379},[2692],{"type":81,"value":81},{"type":75,"tag":121,"props":2694,"children":2695},{"style":421},[2696],{"type":81,"value":1121},{"type":75,"tag":121,"props":2698,"children":2699},{"style":323},[2700],{"type":81,"value":340},{"type":75,"tag":121,"props":2702,"children":2703},{"class":123,"line":748},[2704,2708,2713,2717,2721,2725,2730,2734,2739,2743,2747,2752,2756,2760],{"type":75,"tag":121,"props":2705,"children":2706},{"style":358},[2707],{"type":81,"value":690},{"type":75,"tag":121,"props":2709,"children":2710},{"style":312},[2711],{"type":81,"value":2712}," signature",{"type":75,"tag":121,"props":2714,"children":2715},{"style":323},[2716],{"type":81,"value":700},{"type":75,"tag":121,"props":2718,"children":2719},{"style":312},[2720],{"type":81,"value":1486},{"type":75,"tag":121,"props":2722,"children":2723},{"style":323},[2724],{"type":81,"value":392},{"type":75,"tag":121,"props":2726,"children":2727},{"style":312},[2728],{"type":81,"value":2729},"headers",{"type":75,"tag":121,"props":2731,"children":2732},{"style":323},[2733],{"type":81,"value":392},{"type":75,"tag":121,"props":2735,"children":2736},{"style":379},[2737],{"type":81,"value":2738},"get",{"type":75,"tag":121,"props":2740,"children":2741},{"style":421},[2742],{"type":81,"value":659},{"type":75,"tag":121,"props":2744,"children":2745},{"style":323},[2746],{"type":81,"value":335},{"type":75,"tag":121,"props":2748,"children":2749},{"style":143},[2750],{"type":81,"value":2751},"stripe-signature",{"type":75,"tag":121,"props":2753,"children":2754},{"style":323},[2755],{"type":81,"value":335},{"type":75,"tag":121,"props":2757,"children":2758},{"style":421},[2759],{"type":81,"value":484},{"type":75,"tag":121,"props":2761,"children":2762},{"style":323},[2763],{"type":81,"value":2764},"!;\n",{"type":75,"tag":121,"props":2766,"children":2767},{"class":123,"line":778},[2768],{"type":75,"tag":121,"props":2769,"children":2770},{"emptyLinePlaceholder":244},[2771],{"type":81,"value":247},{"type":75,"tag":121,"props":2773,"children":2774},{"class":123,"line":848},[2775,2780,2785,2789,2793,2797,2802],{"type":75,"tag":121,"props":2776,"children":2777},{"style":358},[2778],{"type":81,"value":2779},"  let",{"type":75,"tag":121,"props":2781,"children":2782},{"style":312},[2783],{"type":81,"value":2784}," event",{"type":75,"tag":121,"props":2786,"children":2787},{"style":323},[2788],{"type":81,"value":429},{"type":75,"tag":121,"props":2790,"children":2791},{"style":138},[2792],{"type":81,"value":382},{"type":75,"tag":121,"props":2794,"children":2795},{"style":323},[2796],{"type":81,"value":392},{"type":75,"tag":121,"props":2798,"children":2799},{"style":138},[2800],{"type":81,"value":2801},"Event",{"type":75,"tag":121,"props":2803,"children":2804},{"style":323},[2805],{"type":81,"value":340},{"type":75,"tag":121,"props":2807,"children":2808},{"class":123,"line":906},[2809,2814],{"type":75,"tag":121,"props":2810,"children":2811},{"style":306},[2812],{"type":81,"value":2813},"  try",{"type":75,"tag":121,"props":2815,"children":2816},{"style":323},[2817],{"type":81,"value":415},{"type":75,"tag":121,"props":2819,"children":2820},{"class":123,"line":960},[2821,2826,2830,2834,2838,2843,2847,2852],{"type":75,"tag":121,"props":2822,"children":2823},{"style":312},[2824],{"type":81,"value":2825},"    event",{"type":75,"tag":121,"props":2827,"children":2828},{"style":323},[2829],{"type":81,"value":700},{"type":75,"tag":121,"props":2831,"children":2832},{"style":312},[2833],{"type":81,"value":600},{"type":75,"tag":121,"props":2835,"children":2836},{"style":323},[2837],{"type":81,"value":392},{"type":75,"tag":121,"props":2839,"children":2840},{"style":312},[2841],{"type":81,"value":2842},"webhooks",{"type":75,"tag":121,"props":2844,"children":2845},{"style":323},[2846],{"type":81,"value":392},{"type":75,"tag":121,"props":2848,"children":2849},{"style":379},[2850],{"type":81,"value":2851},"constructEvent",{"type":75,"tag":121,"props":2853,"children":2854},{"style":421},[2855],{"type":81,"value":2856},"(\n",{"type":75,"tag":121,"props":2858,"children":2859},{"class":123,"line":977},[2860,2864],{"type":75,"tag":121,"props":2861,"children":2862},{"style":312},[2863],{"type":81,"value":2256},{"type":75,"tag":121,"props":2865,"children":2866},{"style":323},[2867],{"type":81,"value":447},{"type":75,"tag":121,"props":2869,"children":2870},{"class":123,"line":985},[2871,2876],{"type":75,"tag":121,"props":2872,"children":2873},{"style":312},[2874],{"type":81,"value":2875},"      signature",{"type":75,"tag":121,"props":2877,"children":2878},{"style":323},[2879],{"type":81,"value":447},{"type":75,"tag":121,"props":2881,"children":2882},{"class":123,"line":1025},[2883,2888,2892,2896,2900,2904],{"type":75,"tag":121,"props":2884,"children":2885},{"style":312},[2886],{"type":81,"value":2887},"      process",{"type":75,"tag":121,"props":2889,"children":2890},{"style":323},[2891],{"type":81,"value":392},{"type":75,"tag":121,"props":2893,"children":2894},{"style":312},[2895],{"type":81,"value":397},{"type":75,"tag":121,"props":2897,"children":2898},{"style":323},[2899],{"type":81,"value":392},{"type":75,"tag":121,"props":2901,"children":2902},{"style":312},[2903],{"type":81,"value":197},{"type":75,"tag":121,"props":2905,"children":2906},{"style":323},[2907],{"type":81,"value":2908},"!\n",{"type":75,"tag":121,"props":2910,"children":2911},{"class":123,"line":1820},[2912,2917],{"type":75,"tag":121,"props":2913,"children":2914},{"style":421},[2915],{"type":81,"value":2916},"    )",{"type":75,"tag":121,"props":2918,"children":2919},{"style":323},[2920],{"type":81,"value":340},{"type":75,"tag":121,"props":2922,"children":2923},{"class":123,"line":1881},[2924,2928,2933,2938,2943,2948],{"type":75,"tag":121,"props":2925,"children":2926},{"style":323},[2927],{"type":81,"value":966},{"type":75,"tag":121,"props":2929,"children":2930},{"style":306},[2931],{"type":81,"value":2932}," catch",{"type":75,"tag":121,"props":2934,"children":2935},{"style":421},[2936],{"type":81,"value":2937}," (",{"type":75,"tag":121,"props":2939,"children":2940},{"style":312},[2941],{"type":81,"value":2942},"err",{"type":75,"tag":121,"props":2944,"children":2945},{"style":421},[2946],{"type":81,"value":2947},") ",{"type":75,"tag":121,"props":2949,"children":2950},{"style":323},[2951],{"type":81,"value":745},{"type":75,"tag":121,"props":2953,"children":2954},{"class":123,"line":2470},[2955,2960,2964,2968,2972,2976,2980,2985,2989,2993,2998,3002,3007,3011,3016,3020,3025,3029,3033],{"type":75,"tag":121,"props":2956,"children":2957},{"style":306},[2958],{"type":81,"value":2959},"    return",{"type":75,"tag":121,"props":2961,"children":2962},{"style":312},[2963],{"type":81,"value":1337},{"type":75,"tag":121,"props":2965,"children":2966},{"style":323},[2967],{"type":81,"value":392},{"type":75,"tag":121,"props":2969,"children":2970},{"style":379},[2971],{"type":81,"value":1495},{"type":75,"tag":121,"props":2973,"children":2974},{"style":421},[2975],{"type":81,"value":659},{"type":75,"tag":121,"props":2977,"children":2978},{"style":323},[2979],{"type":81,"value":798},{"type":75,"tag":121,"props":2981,"children":2982},{"style":421},[2983],{"type":81,"value":2984}," error",{"type":75,"tag":121,"props":2986,"children":2987},{"style":323},[2988],{"type":81,"value":429},{"type":75,"tag":121,"props":2990,"children":2991},{"style":323},[2992],{"type":81,"value":326},{"type":75,"tag":121,"props":2994,"children":2995},{"style":143},[2996],{"type":81,"value":2997},"Invalid signature",{"type":75,"tag":121,"props":2999,"children":3000},{"style":323},[3001],{"type":81,"value":335},{"type":75,"tag":121,"props":3003,"children":3004},{"style":323},[3005],{"type":81,"value":3006}," },",{"type":75,"tag":121,"props":3008,"children":3009},{"style":323},[3010],{"type":81,"value":552},{"type":75,"tag":121,"props":3012,"children":3013},{"style":421},[3014],{"type":81,"value":3015}," status",{"type":75,"tag":121,"props":3017,"children":3018},{"style":323},[3019],{"type":81,"value":429},{"type":75,"tag":121,"props":3021,"children":3022},{"style":829},[3023],{"type":81,"value":3024}," 400",{"type":75,"tag":121,"props":3026,"children":3027},{"style":323},[3028],{"type":81,"value":562},{"type":75,"tag":121,"props":3030,"children":3031},{"style":421},[3032],{"type":81,"value":484},{"type":75,"tag":121,"props":3034,"children":3035},{"style":323},[3036],{"type":81,"value":340},{"type":75,"tag":121,"props":3038,"children":3040},{"class":123,"line":3039},19,[3041],{"type":75,"tag":121,"props":3042,"children":3043},{"style":323},[3044],{"type":81,"value":3045},"  }\n",{"type":75,"tag":121,"props":3047,"children":3049},{"class":123,"line":3048},20,[3050],{"type":75,"tag":121,"props":3051,"children":3052},{"emptyLinePlaceholder":244},[3053],{"type":81,"value":247},{"type":75,"tag":121,"props":3055,"children":3057},{"class":123,"line":3056},21,[3058,3063,3067,3072,3076,3081,3085],{"type":75,"tag":121,"props":3059,"children":3060},{"style":306},[3061],{"type":81,"value":3062},"  switch",{"type":75,"tag":121,"props":3064,"children":3065},{"style":421},[3066],{"type":81,"value":2937},{"type":75,"tag":121,"props":3068,"children":3069},{"style":312},[3070],{"type":81,"value":3071},"event",{"type":75,"tag":121,"props":3073,"children":3074},{"style":323},[3075],{"type":81,"value":392},{"type":75,"tag":121,"props":3077,"children":3078},{"style":312},[3079],{"type":81,"value":3080},"type",{"type":75,"tag":121,"props":3082,"children":3083},{"style":421},[3084],{"type":81,"value":2947},{"type":75,"tag":121,"props":3086,"children":3087},{"style":323},[3088],{"type":81,"value":745},{"type":75,"tag":121,"props":3090,"children":3092},{"class":123,"line":3091},22,[3093,3098,3102,3107,3111,3115],{"type":75,"tag":121,"props":3094,"children":3095},{"style":306},[3096],{"type":81,"value":3097},"    case",{"type":75,"tag":121,"props":3099,"children":3100},{"style":323},[3101],{"type":81,"value":326},{"type":75,"tag":121,"props":3103,"children":3104},{"style":143},[3105],{"type":81,"value":3106},"checkout.session.completed",{"type":75,"tag":121,"props":3108,"children":3109},{"style":323},[3110],{"type":81,"value":335},{"type":75,"tag":121,"props":3112,"children":3113},{"style":323},[3114],{"type":81,"value":429},{"type":75,"tag":121,"props":3116,"children":3117},{"style":323},[3118],{"type":81,"value":415},{"type":75,"tag":121,"props":3120,"children":3122},{"class":123,"line":3121},23,[3123,3128,3132,3136,3140,3144,3149,3153,3158,3163,3167,3171,3176,3180,3185],{"type":75,"tag":121,"props":3124,"children":3125},{"style":358},[3126],{"type":81,"value":3127},"      const",{"type":75,"tag":121,"props":3129,"children":3130},{"style":312},[3131],{"type":81,"value":695},{"type":75,"tag":121,"props":3133,"children":3134},{"style":323},[3135],{"type":81,"value":700},{"type":75,"tag":121,"props":3137,"children":3138},{"style":312},[3139],{"type":81,"value":2784},{"type":75,"tag":121,"props":3141,"children":3142},{"style":323},[3143],{"type":81,"value":392},{"type":75,"tag":121,"props":3145,"children":3146},{"style":312},[3147],{"type":81,"value":3148},"data",{"type":75,"tag":121,"props":3150,"children":3151},{"style":323},[3152],{"type":81,"value":392},{"type":75,"tag":121,"props":3154,"children":3155},{"style":312},[3156],{"type":81,"value":3157},"object",{"type":75,"tag":121,"props":3159,"children":3160},{"style":306},[3161],{"type":81,"value":3162}," as",{"type":75,"tag":121,"props":3164,"children":3165},{"style":138},[3166],{"type":81,"value":382},{"type":75,"tag":121,"props":3168,"children":3169},{"style":323},[3170],{"type":81,"value":392},{"type":75,"tag":121,"props":3172,"children":3173},{"style":138},[3174],{"type":81,"value":3175},"Checkout",{"type":75,"tag":121,"props":3177,"children":3178},{"style":323},[3179],{"type":81,"value":392},{"type":75,"tag":121,"props":3181,"children":3182},{"style":138},[3183],{"type":81,"value":3184},"Session",{"type":75,"tag":121,"props":3186,"children":3187},{"style":323},[3188],{"type":81,"value":340},{"type":75,"tag":121,"props":3190,"children":3192},{"class":123,"line":3191},24,[3193],{"type":75,"tag":121,"props":3194,"children":3195},{"style":128},[3196],{"type":81,"value":3197},"      \u002F\u002F Fulfill the order — update database, send confirmation, etc.\n",{"type":75,"tag":121,"props":3199,"children":3201},{"class":123,"line":3200},25,[3202,3207],{"type":75,"tag":121,"props":3203,"children":3204},{"style":306},[3205],{"type":81,"value":3206},"      break",{"type":75,"tag":121,"props":3208,"children":3209},{"style":323},[3210],{"type":81,"value":340},{"type":75,"tag":121,"props":3212,"children":3214},{"class":123,"line":3213},26,[3215],{"type":75,"tag":121,"props":3216,"children":3217},{"style":323},[3218],{"type":81,"value":3219},"    }\n",{"type":75,"tag":121,"props":3221,"children":3223},{"class":123,"line":3222},27,[3224,3228,3232,3237,3241,3245],{"type":75,"tag":121,"props":3225,"children":3226},{"style":306},[3227],{"type":81,"value":3097},{"type":75,"tag":121,"props":3229,"children":3230},{"style":323},[3231],{"type":81,"value":326},{"type":75,"tag":121,"props":3233,"children":3234},{"style":143},[3235],{"type":81,"value":3236},"invoice.payment_succeeded",{"type":75,"tag":121,"props":3238,"children":3239},{"style":323},[3240],{"type":81,"value":335},{"type":75,"tag":121,"props":3242,"children":3243},{"style":323},[3244],{"type":81,"value":429},{"type":75,"tag":121,"props":3246,"children":3247},{"style":323},[3248],{"type":81,"value":415},{"type":75,"tag":121,"props":3250,"children":3252},{"class":123,"line":3251},28,[3253,3257,3262,3266,3270,3274,3278,3282,3286,3290,3294,3298,3303],{"type":75,"tag":121,"props":3254,"children":3255},{"style":358},[3256],{"type":81,"value":3127},{"type":75,"tag":121,"props":3258,"children":3259},{"style":312},[3260],{"type":81,"value":3261}," invoice",{"type":75,"tag":121,"props":3263,"children":3264},{"style":323},[3265],{"type":81,"value":700},{"type":75,"tag":121,"props":3267,"children":3268},{"style":312},[3269],{"type":81,"value":2784},{"type":75,"tag":121,"props":3271,"children":3272},{"style":323},[3273],{"type":81,"value":392},{"type":75,"tag":121,"props":3275,"children":3276},{"style":312},[3277],{"type":81,"value":3148},{"type":75,"tag":121,"props":3279,"children":3280},{"style":323},[3281],{"type":81,"value":392},{"type":75,"tag":121,"props":3283,"children":3284},{"style":312},[3285],{"type":81,"value":3157},{"type":75,"tag":121,"props":3287,"children":3288},{"style":306},[3289],{"type":81,"value":3162},{"type":75,"tag":121,"props":3291,"children":3292},{"style":138},[3293],{"type":81,"value":382},{"type":75,"tag":121,"props":3295,"children":3296},{"style":323},[3297],{"type":81,"value":392},{"type":75,"tag":121,"props":3299,"children":3300},{"style":138},[3301],{"type":81,"value":3302},"Invoice",{"type":75,"tag":121,"props":3304,"children":3305},{"style":323},[3306],{"type":81,"value":340},{"type":75,"tag":121,"props":3308,"children":3310},{"class":123,"line":3309},29,[3311],{"type":75,"tag":121,"props":3312,"children":3313},{"style":128},[3314],{"type":81,"value":3315},"      \u002F\u002F Handle successful subscription renewal\n",{"type":75,"tag":121,"props":3317,"children":3319},{"class":123,"line":3318},30,[3320,3324],{"type":75,"tag":121,"props":3321,"children":3322},{"style":306},[3323],{"type":81,"value":3206},{"type":75,"tag":121,"props":3325,"children":3326},{"style":323},[3327],{"type":81,"value":340},{"type":75,"tag":121,"props":3329,"children":3331},{"class":123,"line":3330},31,[3332],{"type":75,"tag":121,"props":3333,"children":3334},{"style":323},[3335],{"type":81,"value":3219},{"type":75,"tag":121,"props":3337,"children":3339},{"class":123,"line":3338},32,[3340,3344,3348,3353,3357,3361],{"type":75,"tag":121,"props":3341,"children":3342},{"style":306},[3343],{"type":81,"value":3097},{"type":75,"tag":121,"props":3345,"children":3346},{"style":323},[3347],{"type":81,"value":326},{"type":75,"tag":121,"props":3349,"children":3350},{"style":143},[3351],{"type":81,"value":3352},"customer.subscription.deleted",{"type":75,"tag":121,"props":3354,"children":3355},{"style":323},[3356],{"type":81,"value":335},{"type":75,"tag":121,"props":3358,"children":3359},{"style":323},[3360],{"type":81,"value":429},{"type":75,"tag":121,"props":3362,"children":3363},{"style":323},[3364],{"type":81,"value":415},{"type":75,"tag":121,"props":3366,"children":3368},{"class":123,"line":3367},33,[3369,3373,3378,3382,3386,3390,3394,3398,3402,3406,3410,3414,3419],{"type":75,"tag":121,"props":3370,"children":3371},{"style":358},[3372],{"type":81,"value":3127},{"type":75,"tag":121,"props":3374,"children":3375},{"style":312},[3376],{"type":81,"value":3377}," subscription",{"type":75,"tag":121,"props":3379,"children":3380},{"style":323},[3381],{"type":81,"value":700},{"type":75,"tag":121,"props":3383,"children":3384},{"style":312},[3385],{"type":81,"value":2784},{"type":75,"tag":121,"props":3387,"children":3388},{"style":323},[3389],{"type":81,"value":392},{"type":75,"tag":121,"props":3391,"children":3392},{"style":312},[3393],{"type":81,"value":3148},{"type":75,"tag":121,"props":3395,"children":3396},{"style":323},[3397],{"type":81,"value":392},{"type":75,"tag":121,"props":3399,"children":3400},{"style":312},[3401],{"type":81,"value":3157},{"type":75,"tag":121,"props":3403,"children":3404},{"style":306},[3405],{"type":81,"value":3162},{"type":75,"tag":121,"props":3407,"children":3408},{"style":138},[3409],{"type":81,"value":382},{"type":75,"tag":121,"props":3411,"children":3412},{"style":323},[3413],{"type":81,"value":392},{"type":75,"tag":121,"props":3415,"children":3416},{"style":138},[3417],{"type":81,"value":3418},"Subscription",{"type":75,"tag":121,"props":3420,"children":3421},{"style":323},[3422],{"type":81,"value":340},{"type":75,"tag":121,"props":3424,"children":3426},{"class":123,"line":3425},34,[3427],{"type":75,"tag":121,"props":3428,"children":3429},{"style":128},[3430],{"type":81,"value":3431},"      \u002F\u002F Handle cancellation — revoke access\n",{"type":75,"tag":121,"props":3433,"children":3435},{"class":123,"line":3434},35,[3436,3440],{"type":75,"tag":121,"props":3437,"children":3438},{"style":306},[3439],{"type":81,"value":3206},{"type":75,"tag":121,"props":3441,"children":3442},{"style":323},[3443],{"type":81,"value":340},{"type":75,"tag":121,"props":3445,"children":3447},{"class":123,"line":3446},36,[3448],{"type":75,"tag":121,"props":3449,"children":3450},{"style":323},[3451],{"type":81,"value":3219},{"type":75,"tag":121,"props":3453,"children":3455},{"class":123,"line":3454},37,[3456],{"type":75,"tag":121,"props":3457,"children":3458},{"style":323},[3459],{"type":81,"value":3045},{"type":75,"tag":121,"props":3461,"children":3463},{"class":123,"line":3462},38,[3464],{"type":75,"tag":121,"props":3465,"children":3466},{"emptyLinePlaceholder":244},[3467],{"type":81,"value":247},{"type":75,"tag":121,"props":3469,"children":3471},{"class":123,"line":3470},39,[3472,3476,3480,3484,3488,3492,3496,3501,3505,3509,3513,3517],{"type":75,"tag":121,"props":3473,"children":3474},{"style":306},[3475],{"type":81,"value":1133},{"type":75,"tag":121,"props":3477,"children":3478},{"style":312},[3479],{"type":81,"value":1337},{"type":75,"tag":121,"props":3481,"children":3482},{"style":323},[3483],{"type":81,"value":392},{"type":75,"tag":121,"props":3485,"children":3486},{"style":379},[3487],{"type":81,"value":1495},{"type":75,"tag":121,"props":3489,"children":3490},{"style":421},[3491],{"type":81,"value":659},{"type":75,"tag":121,"props":3493,"children":3494},{"style":323},[3495],{"type":81,"value":798},{"type":75,"tag":121,"props":3497,"children":3498},{"style":421},[3499],{"type":81,"value":3500}," received",{"type":75,"tag":121,"props":3502,"children":3503},{"style":323},[3504],{"type":81,"value":429},{"type":75,"tag":121,"props":3506,"children":3507},{"style":463},[3508],{"type":81,"value":466},{"type":75,"tag":121,"props":3510,"children":3511},{"style":323},[3512],{"type":81,"value":562},{"type":75,"tag":121,"props":3514,"children":3515},{"style":421},[3516],{"type":81,"value":484},{"type":75,"tag":121,"props":3518,"children":3519},{"style":323},[3520],{"type":81,"value":340},{"type":75,"tag":121,"props":3522,"children":3524},{"class":123,"line":3523},40,[3525],{"type":75,"tag":121,"props":3526,"children":3527},{"style":323},[3528],{"type":81,"value":1031},{"type":75,"tag":84,"props":3530,"children":3531},{},[3532,3538,3540,3546],{"type":75,"tag":3533,"props":3534,"children":3535},"strong",{},[3536],{"type":81,"value":3537},"Important",{"type":81,"value":3539},": Webhook routes must read the raw body as text (not JSON) for signature verification. Do not add ",{"type":75,"tag":117,"props":3541,"children":3543},{"className":3542},[],[3544],{"type":81,"value":3545},"bodyParser",{"type":81,"value":3547}," or JSON middleware to webhook routes.",{"type":75,"tag":90,"props":3549,"children":3551},{"id":3550},"subscription-billing",[3552],{"type":81,"value":3553},"Subscription Billing",{"type":75,"tag":102,"props":3555,"children":3557},{"id":3556},"create-a-subscription-checkout",[3558],{"type":81,"value":3559},"Create a Subscription Checkout",{"type":75,"tag":109,"props":3561,"children":3563},{"className":286,"code":3562,"language":288,"meta":114,"style":114},"const session = await stripe.checkout.sessions.create({\n  mode: \"subscription\",\n  line_items: [{ price: priceId, quantity: 1 }],\n  success_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fdashboard`,\n  cancel_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fpricing`,\n});\n",[3564],{"type":75,"tag":117,"props":3565,"children":3566},{"__ignoreMap":114},[3567,3623,3652,3712,3765,3818],{"type":75,"tag":121,"props":3568,"children":3569},{"class":123,"line":124},[3570,3574,3579,3583,3587,3591,3595,3599,3603,3607,3611,3615,3619],{"type":75,"tag":121,"props":3571,"children":3572},{"style":358},[3573],{"type":81,"value":1975},{"type":75,"tag":121,"props":3575,"children":3576},{"style":312},[3577],{"type":81,"value":3578}," session ",{"type":75,"tag":121,"props":3580,"children":3581},{"style":323},[3582],{"type":81,"value":371},{"type":75,"tag":121,"props":3584,"children":3585},{"style":306},[3586],{"type":81,"value":705},{"type":75,"tag":121,"props":3588,"children":3589},{"style":312},[3590],{"type":81,"value":600},{"type":75,"tag":121,"props":3592,"children":3593},{"style":323},[3594],{"type":81,"value":392},{"type":75,"tag":121,"props":3596,"children":3597},{"style":312},[3598],{"type":81,"value":718},{"type":75,"tag":121,"props":3600,"children":3601},{"style":323},[3602],{"type":81,"value":392},{"type":75,"tag":121,"props":3604,"children":3605},{"style":312},[3606],{"type":81,"value":727},{"type":75,"tag":121,"props":3608,"children":3609},{"style":323},[3610],{"type":81,"value":392},{"type":75,"tag":121,"props":3612,"children":3613},{"style":379},[3614],{"type":81,"value":736},{"type":75,"tag":121,"props":3616,"children":3617},{"style":312},[3618],{"type":81,"value":659},{"type":75,"tag":121,"props":3620,"children":3621},{"style":323},[3622],{"type":81,"value":745},{"type":75,"tag":121,"props":3624,"children":3625},{"class":123,"line":134},[3626,3631,3635,3639,3644,3648],{"type":75,"tag":121,"props":3627,"children":3628},{"style":421},[3629],{"type":81,"value":3630},"  mode",{"type":75,"tag":121,"props":3632,"children":3633},{"style":323},[3634],{"type":81,"value":429},{"type":75,"tag":121,"props":3636,"children":3637},{"style":323},[3638],{"type":81,"value":326},{"type":75,"tag":121,"props":3640,"children":3641},{"style":143},[3642],{"type":81,"value":3643},"subscription",{"type":75,"tag":121,"props":3645,"children":3646},{"style":323},[3647],{"type":81,"value":335},{"type":75,"tag":121,"props":3649,"children":3650},{"style":323},[3651],{"type":81,"value":447},{"type":75,"tag":121,"props":3653,"children":3654},{"class":123,"line":240},[3655,3660,3664,3668,3672,3676,3680,3684,3688,3692,3696,3700,3704,3708],{"type":75,"tag":121,"props":3656,"children":3657},{"style":421},[3658],{"type":81,"value":3659},"  line_items",{"type":75,"tag":121,"props":3661,"children":3662},{"style":323},[3663],{"type":81,"value":429},{"type":75,"tag":121,"props":3665,"children":3666},{"style":312},[3667],{"type":81,"value":793},{"type":75,"tag":121,"props":3669,"children":3670},{"style":323},[3671],{"type":81,"value":798},{"type":75,"tag":121,"props":3673,"children":3674},{"style":421},[3675],{"type":81,"value":803},{"type":75,"tag":121,"props":3677,"children":3678},{"style":323},[3679],{"type":81,"value":429},{"type":75,"tag":121,"props":3681,"children":3682},{"style":312},[3683],{"type":81,"value":812},{"type":75,"tag":121,"props":3685,"children":3686},{"style":323},[3687],{"type":81,"value":817},{"type":75,"tag":121,"props":3689,"children":3690},{"style":421},[3691],{"type":81,"value":822},{"type":75,"tag":121,"props":3693,"children":3694},{"style":323},[3695],{"type":81,"value":429},{"type":75,"tag":121,"props":3697,"children":3698},{"style":829},[3699],{"type":81,"value":832},{"type":75,"tag":121,"props":3701,"children":3702},{"style":323},[3703],{"type":81,"value":562},{"type":75,"tag":121,"props":3705,"children":3706},{"style":312},[3707],{"type":81,"value":841},{"type":75,"tag":121,"props":3709,"children":3710},{"style":323},[3711],{"type":81,"value":447},{"type":75,"tag":121,"props":3713,"children":3714},{"class":123,"line":250},[3715,3720,3724,3728,3732,3736,3740,3744,3748,3752,3757,3761],{"type":75,"tag":121,"props":3716,"children":3717},{"style":421},[3718],{"type":81,"value":3719},"  success_url",{"type":75,"tag":121,"props":3721,"children":3722},{"style":323},[3723],{"type":81,"value":429},{"type":75,"tag":121,"props":3725,"children":3726},{"style":323},[3727],{"type":81,"value":863},{"type":75,"tag":121,"props":3729,"children":3730},{"style":312},[3731],{"type":81,"value":868},{"type":75,"tag":121,"props":3733,"children":3734},{"style":323},[3735],{"type":81,"value":392},{"type":75,"tag":121,"props":3737,"children":3738},{"style":312},[3739],{"type":81,"value":397},{"type":75,"tag":121,"props":3741,"children":3742},{"style":323},[3743],{"type":81,"value":392},{"type":75,"tag":121,"props":3745,"children":3746},{"style":312},[3747],{"type":81,"value":885},{"type":75,"tag":121,"props":3749,"children":3750},{"style":323},[3751],{"type":81,"value":479},{"type":75,"tag":121,"props":3753,"children":3754},{"style":143},[3755],{"type":81,"value":3756},"\u002Fdashboard",{"type":75,"tag":121,"props":3758,"children":3759},{"style":323},[3760],{"type":81,"value":899},{"type":75,"tag":121,"props":3762,"children":3763},{"style":323},[3764],{"type":81,"value":447},{"type":75,"tag":121,"props":3766,"children":3767},{"class":123,"line":38},[3768,3773,3777,3781,3785,3789,3793,3797,3801,3805,3810,3814],{"type":75,"tag":121,"props":3769,"children":3770},{"style":421},[3771],{"type":81,"value":3772},"  cancel_url",{"type":75,"tag":121,"props":3774,"children":3775},{"style":323},[3776],{"type":81,"value":429},{"type":75,"tag":121,"props":3778,"children":3779},{"style":323},[3780],{"type":81,"value":863},{"type":75,"tag":121,"props":3782,"children":3783},{"style":312},[3784],{"type":81,"value":868},{"type":75,"tag":121,"props":3786,"children":3787},{"style":323},[3788],{"type":81,"value":392},{"type":75,"tag":121,"props":3790,"children":3791},{"style":312},[3792],{"type":81,"value":397},{"type":75,"tag":121,"props":3794,"children":3795},{"style":323},[3796],{"type":81,"value":392},{"type":75,"tag":121,"props":3798,"children":3799},{"style":312},[3800],{"type":81,"value":885},{"type":75,"tag":121,"props":3802,"children":3803},{"style":323},[3804],{"type":81,"value":479},{"type":75,"tag":121,"props":3806,"children":3807},{"style":143},[3808],{"type":81,"value":3809},"\u002Fpricing",{"type":75,"tag":121,"props":3811,"children":3812},{"style":323},[3813],{"type":81,"value":899},{"type":75,"tag":121,"props":3815,"children":3816},{"style":323},[3817],{"type":81,"value":447},{"type":75,"tag":121,"props":3819,"children":3820},{"class":123,"line":450},[3821,3825,3829],{"type":75,"tag":121,"props":3822,"children":3823},{"style":323},[3824],{"type":81,"value":479},{"type":75,"tag":121,"props":3826,"children":3827},{"style":312},[3828],{"type":81,"value":484},{"type":75,"tag":121,"props":3830,"children":3831},{"style":323},[3832],{"type":81,"value":340},{"type":75,"tag":102,"props":3834,"children":3836},{"id":3835},"customer-portal",[3837],{"type":81,"value":3838},"Customer Portal",{"type":75,"tag":84,"props":3840,"children":3841},{},[3842],{"type":81,"value":3843},"Allow customers to manage their subscriptions:",{"type":75,"tag":109,"props":3845,"children":3847},{"className":286,"code":3846,"language":288,"meta":114,"style":114},"\u002F\u002F app\u002Fapi\u002Fportal\u002Froute.ts\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function POST(req: Request) {\n  const { customerId } = await req.json();\n\n  const session = await stripe.billingPortal.sessions.create({\n    customer: customerId,\n    return_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fdashboard`,\n  });\n\n  return Response.json({ url: session.url });\n}\n",[3848],{"type":75,"tag":117,"props":3849,"children":3850},{"__ignoreMap":114},[3851,3859,3898,3905,3948,3996,4003,4059,4079,4131,4146,4153,4213],{"type":75,"tag":121,"props":3852,"children":3853},{"class":123,"line":124},[3854],{"type":75,"tag":121,"props":3855,"children":3856},{"style":128},[3857],{"type":81,"value":3858},"\u002F\u002F app\u002Fapi\u002Fportal\u002Froute.ts\n",{"type":75,"tag":121,"props":3860,"children":3861},{"class":123,"line":134},[3862,3866,3870,3874,3878,3882,3886,3890,3894],{"type":75,"tag":121,"props":3863,"children":3864},{"style":306},[3865],{"type":81,"value":309},{"type":75,"tag":121,"props":3867,"children":3868},{"style":323},[3869],{"type":81,"value":552},{"type":75,"tag":121,"props":3871,"children":3872},{"style":312},[3873],{"type":81,"value":600},{"type":75,"tag":121,"props":3875,"children":3876},{"style":323},[3877],{"type":81,"value":562},{"type":75,"tag":121,"props":3879,"children":3880},{"style":306},[3881],{"type":81,"value":567},{"type":75,"tag":121,"props":3883,"children":3884},{"style":323},[3885],{"type":81,"value":326},{"type":75,"tag":121,"props":3887,"children":3888},{"style":143},[3889],{"type":81,"value":617},{"type":75,"tag":121,"props":3891,"children":3892},{"style":323},[3893],{"type":81,"value":335},{"type":75,"tag":121,"props":3895,"children":3896},{"style":323},[3897],{"type":81,"value":340},{"type":75,"tag":121,"props":3899,"children":3900},{"class":123,"line":240},[3901],{"type":75,"tag":121,"props":3902,"children":3903},{"emptyLinePlaceholder":244},[3904],{"type":81,"value":247},{"type":75,"tag":121,"props":3906,"children":3907},{"class":123,"line":250},[3908,3912,3916,3920,3924,3928,3932,3936,3940,3944],{"type":75,"tag":121,"props":3909,"children":3910},{"style":306},[3911],{"type":81,"value":355},{"type":75,"tag":121,"props":3913,"children":3914},{"style":358},[3915],{"type":81,"value":644},{"type":75,"tag":121,"props":3917,"children":3918},{"style":358},[3919],{"type":81,"value":649},{"type":75,"tag":121,"props":3921,"children":3922},{"style":379},[3923],{"type":81,"value":1428},{"type":75,"tag":121,"props":3925,"children":3926},{"style":323},[3927],{"type":81,"value":659},{"type":75,"tag":121,"props":3929,"children":3930},{"style":662},[3931],{"type":81,"value":1437},{"type":75,"tag":121,"props":3933,"children":3934},{"style":323},[3935],{"type":81,"value":429},{"type":75,"tag":121,"props":3937,"children":3938},{"style":138},[3939],{"type":81,"value":1446},{"type":75,"tag":121,"props":3941,"children":3942},{"style":323},[3943],{"type":81,"value":484},{"type":75,"tag":121,"props":3945,"children":3946},{"style":323},[3947],{"type":81,"value":415},{"type":75,"tag":121,"props":3949,"children":3950},{"class":123,"line":38},[3951,3955,3959,3964,3968,3972,3976,3980,3984,3988,3992],{"type":75,"tag":121,"props":3952,"children":3953},{"style":358},[3954],{"type":81,"value":690},{"type":75,"tag":121,"props":3956,"children":3957},{"style":323},[3958],{"type":81,"value":552},{"type":75,"tag":121,"props":3960,"children":3961},{"style":312},[3962],{"type":81,"value":3963}," customerId",{"type":75,"tag":121,"props":3965,"children":3966},{"style":323},[3967],{"type":81,"value":562},{"type":75,"tag":121,"props":3969,"children":3970},{"style":323},[3971],{"type":81,"value":700},{"type":75,"tag":121,"props":3973,"children":3974},{"style":306},[3975],{"type":81,"value":705},{"type":75,"tag":121,"props":3977,"children":3978},{"style":312},[3979],{"type":81,"value":1486},{"type":75,"tag":121,"props":3981,"children":3982},{"style":323},[3983],{"type":81,"value":392},{"type":75,"tag":121,"props":3985,"children":3986},{"style":379},[3987],{"type":81,"value":1495},{"type":75,"tag":121,"props":3989,"children":3990},{"style":421},[3991],{"type":81,"value":1121},{"type":75,"tag":121,"props":3993,"children":3994},{"style":323},[3995],{"type":81,"value":340},{"type":75,"tag":121,"props":3997,"children":3998},{"class":123,"line":450},[3999],{"type":75,"tag":121,"props":4000,"children":4001},{"emptyLinePlaceholder":244},[4002],{"type":81,"value":247},{"type":75,"tag":121,"props":4004,"children":4005},{"class":123,"line":473},[4006,4010,4014,4018,4022,4026,4030,4035,4039,4043,4047,4051,4055],{"type":75,"tag":121,"props":4007,"children":4008},{"style":358},[4009],{"type":81,"value":690},{"type":75,"tag":121,"props":4011,"children":4012},{"style":312},[4013],{"type":81,"value":695},{"type":75,"tag":121,"props":4015,"children":4016},{"style":323},[4017],{"type":81,"value":700},{"type":75,"tag":121,"props":4019,"children":4020},{"style":306},[4021],{"type":81,"value":705},{"type":75,"tag":121,"props":4023,"children":4024},{"style":312},[4025],{"type":81,"value":600},{"type":75,"tag":121,"props":4027,"children":4028},{"style":323},[4029],{"type":81,"value":392},{"type":75,"tag":121,"props":4031,"children":4032},{"style":312},[4033],{"type":81,"value":4034},"billingPortal",{"type":75,"tag":121,"props":4036,"children":4037},{"style":323},[4038],{"type":81,"value":392},{"type":75,"tag":121,"props":4040,"children":4041},{"style":312},[4042],{"type":81,"value":727},{"type":75,"tag":121,"props":4044,"children":4045},{"style":323},[4046],{"type":81,"value":392},{"type":75,"tag":121,"props":4048,"children":4049},{"style":379},[4050],{"type":81,"value":736},{"type":75,"tag":121,"props":4052,"children":4053},{"style":421},[4054],{"type":81,"value":659},{"type":75,"tag":121,"props":4056,"children":4057},{"style":323},[4058],{"type":81,"value":745},{"type":75,"tag":121,"props":4060,"children":4061},{"class":123,"line":748},[4062,4067,4071,4075],{"type":75,"tag":121,"props":4063,"children":4064},{"style":421},[4065],{"type":81,"value":4066},"    customer",{"type":75,"tag":121,"props":4068,"children":4069},{"style":323},[4070],{"type":81,"value":429},{"type":75,"tag":121,"props":4072,"children":4073},{"style":312},[4074],{"type":81,"value":3963},{"type":75,"tag":121,"props":4076,"children":4077},{"style":323},[4078],{"type":81,"value":447},{"type":75,"tag":121,"props":4080,"children":4081},{"class":123,"line":778},[4082,4087,4091,4095,4099,4103,4107,4111,4115,4119,4123,4127],{"type":75,"tag":121,"props":4083,"children":4084},{"style":421},[4085],{"type":81,"value":4086},"    return_url",{"type":75,"tag":121,"props":4088,"children":4089},{"style":323},[4090],{"type":81,"value":429},{"type":75,"tag":121,"props":4092,"children":4093},{"style":323},[4094],{"type":81,"value":863},{"type":75,"tag":121,"props":4096,"children":4097},{"style":312},[4098],{"type":81,"value":868},{"type":75,"tag":121,"props":4100,"children":4101},{"style":323},[4102],{"type":81,"value":392},{"type":75,"tag":121,"props":4104,"children":4105},{"style":312},[4106],{"type":81,"value":397},{"type":75,"tag":121,"props":4108,"children":4109},{"style":323},[4110],{"type":81,"value":392},{"type":75,"tag":121,"props":4112,"children":4113},{"style":312},[4114],{"type":81,"value":885},{"type":75,"tag":121,"props":4116,"children":4117},{"style":323},[4118],{"type":81,"value":479},{"type":75,"tag":121,"props":4120,"children":4121},{"style":143},[4122],{"type":81,"value":3756},{"type":75,"tag":121,"props":4124,"children":4125},{"style":323},[4126],{"type":81,"value":899},{"type":75,"tag":121,"props":4128,"children":4129},{"style":323},[4130],{"type":81,"value":447},{"type":75,"tag":121,"props":4132,"children":4133},{"class":123,"line":848},[4134,4138,4142],{"type":75,"tag":121,"props":4135,"children":4136},{"style":323},[4137],{"type":81,"value":966},{"type":75,"tag":121,"props":4139,"children":4140},{"style":421},[4141],{"type":81,"value":484},{"type":75,"tag":121,"props":4143,"children":4144},{"style":323},[4145],{"type":81,"value":340},{"type":75,"tag":121,"props":4147,"children":4148},{"class":123,"line":906},[4149],{"type":75,"tag":121,"props":4150,"children":4151},{"emptyLinePlaceholder":244},[4152],{"type":81,"value":247},{"type":75,"tag":121,"props":4154,"children":4155},{"class":123,"line":960},[4156,4160,4165,4169,4173,4177,4181,4185,4189,4193,4197,4201,4205,4209],{"type":75,"tag":121,"props":4157,"children":4158},{"style":306},[4159],{"type":81,"value":1133},{"type":75,"tag":121,"props":4161,"children":4162},{"style":312},[4163],{"type":81,"value":4164}," Response",{"type":75,"tag":121,"props":4166,"children":4167},{"style":323},[4168],{"type":81,"value":392},{"type":75,"tag":121,"props":4170,"children":4171},{"style":379},[4172],{"type":81,"value":1495},{"type":75,"tag":121,"props":4174,"children":4175},{"style":421},[4176],{"type":81,"value":659},{"type":75,"tag":121,"props":4178,"children":4179},{"style":323},[4180],{"type":81,"value":798},{"type":75,"tag":121,"props":4182,"children":4183},{"style":421},[4184],{"type":81,"value":1850},{"type":75,"tag":121,"props":4186,"children":4187},{"style":323},[4188],{"type":81,"value":429},{"type":75,"tag":121,"props":4190,"children":4191},{"style":312},[4192],{"type":81,"value":695},{"type":75,"tag":121,"props":4194,"children":4195},{"style":323},[4196],{"type":81,"value":392},{"type":75,"tag":121,"props":4198,"children":4199},{"style":312},[4200],{"type":81,"value":1009},{"type":75,"tag":121,"props":4202,"children":4203},{"style":323},[4204],{"type":81,"value":562},{"type":75,"tag":121,"props":4206,"children":4207},{"style":421},[4208],{"type":81,"value":484},{"type":75,"tag":121,"props":4210,"children":4211},{"style":323},[4212],{"type":81,"value":340},{"type":75,"tag":121,"props":4214,"children":4215},{"class":123,"line":977},[4216],{"type":75,"tag":121,"props":4217,"children":4218},{"style":323},[4219],{"type":81,"value":1031},{"type":75,"tag":90,"props":4221,"children":4223},{"id":4222},"embedded-checkout-recommended",[4224],{"type":81,"value":4225},"Embedded Checkout (Recommended)",{"type":75,"tag":84,"props":4227,"children":4228},{},[4229],{"type":81,"value":4230},"Stripe's Embedded Checkout renders inside your page via an iframe, keeping users on your domain while offloading PCI compliance to Stripe:",{"type":75,"tag":109,"props":4232,"children":4234},{"className":286,"code":4233,"language":288,"meta":114,"style":114},"\u002F\u002F app\u002Factions\u002Fembedded-checkout.ts\n\"use server\";\nimport { stripe } from \"@\u002Flib\u002Fstripe\";\n\nexport async function createEmbeddedCheckout(priceId: string) {\n  const session = await stripe.checkout.sessions.create({\n    mode: \"payment\",\n    line_items: [{ price: priceId, quantity: 1 }],\n    ui_mode: \"embedded\",\n    return_url: `${process.env.NEXT_PUBLIC_APP_URL}\u002Fsuccess?session_id={CHECKOUT_SESSION_ID}`,\n  });\n\n  return { clientSecret: session.client_secret! };\n}\n",[4235],{"type":75,"tag":117,"props":4236,"children":4237},{"__ignoreMap":114},[4238,4246,4265,4304,4311,4355,4410,4437,4496,4525,4576,4591,4598,4640],{"type":75,"tag":121,"props":4239,"children":4240},{"class":123,"line":124},[4241],{"type":75,"tag":121,"props":4242,"children":4243},{"style":128},[4244],{"type":81,"value":4245},"\u002F\u002F app\u002Factions\u002Fembedded-checkout.ts\n",{"type":75,"tag":121,"props":4247,"children":4248},{"class":123,"line":134},[4249,4253,4257,4261],{"type":75,"tag":121,"props":4250,"children":4251},{"style":323},[4252],{"type":81,"value":335},{"type":75,"tag":121,"props":4254,"children":4255},{"style":143},[4256],{"type":81,"value":532},{"type":75,"tag":121,"props":4258,"children":4259},{"style":323},[4260],{"type":81,"value":335},{"type":75,"tag":121,"props":4262,"children":4263},{"style":323},[4264],{"type":81,"value":340},{"type":75,"tag":121,"props":4266,"children":4267},{"class":123,"line":240},[4268,4272,4276,4280,4284,4288,4292,4296,4300],{"type":75,"tag":121,"props":4269,"children":4270},{"style":306},[4271],{"type":81,"value":309},{"type":75,"tag":121,"props":4273,"children":4274},{"style":323},[4275],{"type":81,"value":552},{"type":75,"tag":121,"props":4277,"children":4278},{"style":312},[4279],{"type":81,"value":600},{"type":75,"tag":121,"props":4281,"children":4282},{"style":323},[4283],{"type":81,"value":562},{"type":75,"tag":121,"props":4285,"children":4286},{"style":306},[4287],{"type":81,"value":567},{"type":75,"tag":121,"props":4289,"children":4290},{"style":323},[4291],{"type":81,"value":326},{"type":75,"tag":121,"props":4293,"children":4294},{"style":143},[4295],{"type":81,"value":617},{"type":75,"tag":121,"props":4297,"children":4298},{"style":323},[4299],{"type":81,"value":335},{"type":75,"tag":121,"props":4301,"children":4302},{"style":323},[4303],{"type":81,"value":340},{"type":75,"tag":121,"props":4305,"children":4306},{"class":123,"line":250},[4307],{"type":75,"tag":121,"props":4308,"children":4309},{"emptyLinePlaceholder":244},[4310],{"type":81,"value":247},{"type":75,"tag":121,"props":4312,"children":4313},{"class":123,"line":38},[4314,4318,4322,4326,4331,4335,4339,4343,4347,4351],{"type":75,"tag":121,"props":4315,"children":4316},{"style":306},[4317],{"type":81,"value":355},{"type":75,"tag":121,"props":4319,"children":4320},{"style":358},[4321],{"type":81,"value":644},{"type":75,"tag":121,"props":4323,"children":4324},{"style":358},[4325],{"type":81,"value":649},{"type":75,"tag":121,"props":4327,"children":4328},{"style":379},[4329],{"type":81,"value":4330}," createEmbeddedCheckout",{"type":75,"tag":121,"props":4332,"children":4333},{"style":323},[4334],{"type":81,"value":659},{"type":75,"tag":121,"props":4336,"children":4337},{"style":662},[4338],{"type":81,"value":665},{"type":75,"tag":121,"props":4340,"children":4341},{"style":323},[4342],{"type":81,"value":429},{"type":75,"tag":121,"props":4344,"children":4345},{"style":138},[4346],{"type":81,"value":674},{"type":75,"tag":121,"props":4348,"children":4349},{"style":323},[4350],{"type":81,"value":484},{"type":75,"tag":121,"props":4352,"children":4353},{"style":323},[4354],{"type":81,"value":415},{"type":75,"tag":121,"props":4356,"children":4357},{"class":123,"line":450},[4358,4362,4366,4370,4374,4378,4382,4386,4390,4394,4398,4402,4406],{"type":75,"tag":121,"props":4359,"children":4360},{"style":358},[4361],{"type":81,"value":690},{"type":75,"tag":121,"props":4363,"children":4364},{"style":312},[4365],{"type":81,"value":695},{"type":75,"tag":121,"props":4367,"children":4368},{"style":323},[4369],{"type":81,"value":700},{"type":75,"tag":121,"props":4371,"children":4372},{"style":306},[4373],{"type":81,"value":705},{"type":75,"tag":121,"props":4375,"children":4376},{"style":312},[4377],{"type":81,"value":600},{"type":75,"tag":121,"props":4379,"children":4380},{"style":323},[4381],{"type":81,"value":392},{"type":75,"tag":121,"props":4383,"children":4384},{"style":312},[4385],{"type":81,"value":718},{"type":75,"tag":121,"props":4387,"children":4388},{"style":323},[4389],{"type":81,"value":392},{"type":75,"tag":121,"props":4391,"children":4392},{"style":312},[4393],{"type":81,"value":727},{"type":75,"tag":121,"props":4395,"children":4396},{"style":323},[4397],{"type":81,"value":392},{"type":75,"tag":121,"props":4399,"children":4400},{"style":379},[4401],{"type":81,"value":736},{"type":75,"tag":121,"props":4403,"children":4404},{"style":421},[4405],{"type":81,"value":659},{"type":75,"tag":121,"props":4407,"children":4408},{"style":323},[4409],{"type":81,"value":745},{"type":75,"tag":121,"props":4411,"children":4412},{"class":123,"line":473},[4413,4417,4421,4425,4429,4433],{"type":75,"tag":121,"props":4414,"children":4415},{"style":421},[4416],{"type":81,"value":754},{"type":75,"tag":121,"props":4418,"children":4419},{"style":323},[4420],{"type":81,"value":429},{"type":75,"tag":121,"props":4422,"children":4423},{"style":323},[4424],{"type":81,"value":326},{"type":75,"tag":121,"props":4426,"children":4427},{"style":143},[4428],{"type":81,"value":767},{"type":75,"tag":121,"props":4430,"children":4431},{"style":323},[4432],{"type":81,"value":335},{"type":75,"tag":121,"props":4434,"children":4435},{"style":323},[4436],{"type":81,"value":447},{"type":75,"tag":121,"props":4438,"children":4439},{"class":123,"line":748},[4440,4444,4448,4452,4456,4460,4464,4468,4472,4476,4480,4484,4488,4492],{"type":75,"tag":121,"props":4441,"children":4442},{"style":421},[4443],{"type":81,"value":784},{"type":75,"tag":121,"props":4445,"children":4446},{"style":323},[4447],{"type":81,"value":429},{"type":75,"tag":121,"props":4449,"children":4450},{"style":421},[4451],{"type":81,"value":793},{"type":75,"tag":121,"props":4453,"children":4454},{"style":323},[4455],{"type":81,"value":798},{"type":75,"tag":121,"props":4457,"children":4458},{"style":421},[4459],{"type":81,"value":803},{"type":75,"tag":121,"props":4461,"children":4462},{"style":323},[4463],{"type":81,"value":429},{"type":75,"tag":121,"props":4465,"children":4466},{"style":312},[4467],{"type":81,"value":812},{"type":75,"tag":121,"props":4469,"children":4470},{"style":323},[4471],{"type":81,"value":817},{"type":75,"tag":121,"props":4473,"children":4474},{"style":421},[4475],{"type":81,"value":822},{"type":75,"tag":121,"props":4477,"children":4478},{"style":323},[4479],{"type":81,"value":429},{"type":75,"tag":121,"props":4481,"children":4482},{"style":829},[4483],{"type":81,"value":832},{"type":75,"tag":121,"props":4485,"children":4486},{"style":323},[4487],{"type":81,"value":562},{"type":75,"tag":121,"props":4489,"children":4490},{"style":421},[4491],{"type":81,"value":841},{"type":75,"tag":121,"props":4493,"children":4494},{"style":323},[4495],{"type":81,"value":447},{"type":75,"tag":121,"props":4497,"children":4498},{"class":123,"line":778},[4499,4504,4508,4512,4517,4521],{"type":75,"tag":121,"props":4500,"children":4501},{"style":421},[4502],{"type":81,"value":4503},"    ui_mode",{"type":75,"tag":121,"props":4505,"children":4506},{"style":323},[4507],{"type":81,"value":429},{"type":75,"tag":121,"props":4509,"children":4510},{"style":323},[4511],{"type":81,"value":326},{"type":75,"tag":121,"props":4513,"children":4514},{"style":143},[4515],{"type":81,"value":4516},"embedded",{"type":75,"tag":121,"props":4518,"children":4519},{"style":323},[4520],{"type":81,"value":335},{"type":75,"tag":121,"props":4522,"children":4523},{"style":323},[4524],{"type":81,"value":447},{"type":75,"tag":121,"props":4526,"children":4527},{"class":123,"line":848},[4528,4532,4536,4540,4544,4548,4552,4556,4560,4564,4568,4572],{"type":75,"tag":121,"props":4529,"children":4530},{"style":421},[4531],{"type":81,"value":4086},{"type":75,"tag":121,"props":4533,"children":4534},{"style":323},[4535],{"type":81,"value":429},{"type":75,"tag":121,"props":4537,"children":4538},{"style":323},[4539],{"type":81,"value":863},{"type":75,"tag":121,"props":4541,"children":4542},{"style":312},[4543],{"type":81,"value":868},{"type":75,"tag":121,"props":4545,"children":4546},{"style":323},[4547],{"type":81,"value":392},{"type":75,"tag":121,"props":4549,"children":4550},{"style":312},[4551],{"type":81,"value":397},{"type":75,"tag":121,"props":4553,"children":4554},{"style":323},[4555],{"type":81,"value":392},{"type":75,"tag":121,"props":4557,"children":4558},{"style":312},[4559],{"type":81,"value":885},{"type":75,"tag":121,"props":4561,"children":4562},{"style":323},[4563],{"type":81,"value":479},{"type":75,"tag":121,"props":4565,"children":4566},{"style":143},[4567],{"type":81,"value":894},{"type":75,"tag":121,"props":4569,"children":4570},{"style":323},[4571],{"type":81,"value":899},{"type":75,"tag":121,"props":4573,"children":4574},{"style":323},[4575],{"type":81,"value":447},{"type":75,"tag":121,"props":4577,"children":4578},{"class":123,"line":906},[4579,4583,4587],{"type":75,"tag":121,"props":4580,"children":4581},{"style":323},[4582],{"type":81,"value":966},{"type":75,"tag":121,"props":4584,"children":4585},{"style":421},[4586],{"type":81,"value":484},{"type":75,"tag":121,"props":4588,"children":4589},{"style":323},[4590],{"type":81,"value":340},{"type":75,"tag":121,"props":4592,"children":4593},{"class":123,"line":960},[4594],{"type":75,"tag":121,"props":4595,"children":4596},{"emptyLinePlaceholder":244},[4597],{"type":81,"value":247},{"type":75,"tag":121,"props":4599,"children":4600},{"class":123,"line":977},[4601,4605,4609,4614,4618,4622,4626,4631,4635],{"type":75,"tag":121,"props":4602,"children":4603},{"style":306},[4604],{"type":81,"value":1133},{"type":75,"tag":121,"props":4606,"children":4607},{"style":323},[4608],{"type":81,"value":552},{"type":75,"tag":121,"props":4610,"children":4611},{"style":421},[4612],{"type":81,"value":4613}," clientSecret",{"type":75,"tag":121,"props":4615,"children":4616},{"style":323},[4617],{"type":81,"value":429},{"type":75,"tag":121,"props":4619,"children":4620},{"style":312},[4621],{"type":81,"value":695},{"type":75,"tag":121,"props":4623,"children":4624},{"style":323},[4625],{"type":81,"value":392},{"type":75,"tag":121,"props":4627,"children":4628},{"style":312},[4629],{"type":81,"value":4630},"client_secret",{"type":75,"tag":121,"props":4632,"children":4633},{"style":323},[4634],{"type":81,"value":1014},{"type":75,"tag":121,"props":4636,"children":4637},{"style":323},[4638],{"type":81,"value":4639}," };\n",{"type":75,"tag":121,"props":4641,"children":4642},{"class":123,"line":985},[4643],{"type":75,"tag":121,"props":4644,"children":4645},{"style":323},[4646],{"type":81,"value":1031},{"type":75,"tag":109,"props":4648,"children":4650},{"className":1034,"code":4649,"language":1036,"meta":114,"style":114},"\"use client\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\nimport { EmbeddedCheckoutProvider, EmbeddedCheckout } from \"@stripe\u002Freact-stripe-js\";\nimport { createEmbeddedCheckout } from \"@\u002Fapp\u002Factions\u002Fembedded-checkout\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nexport function CheckoutEmbed({ priceId }: { priceId: string }) {\n  return (\n    \u003CEmbeddedCheckoutProvider\n      stripe={stripePromise}\n      options={{ fetchClientSecret: () => createEmbeddedCheckout(priceId).then(r => r.clientSecret) }}\n    >\n      \u003CEmbeddedCheckout \u002F>\n    \u003C\u002FEmbeddedCheckoutProvider>\n  );\n}\n",[4651],{"type":75,"tag":117,"props":4652,"children":4653},{"__ignoreMap":114},[4654,4673,4712,4762,4802,4809,4860,4867,4919,4930,4942,4963,5043,5051,5068,5084,5095],{"type":75,"tag":121,"props":4655,"children":4656},{"class":123,"line":124},[4657,4661,4665,4669],{"type":75,"tag":121,"props":4658,"children":4659},{"style":323},[4660],{"type":81,"value":335},{"type":75,"tag":121,"props":4662,"children":4663},{"style":143},[4664],{"type":81,"value":1911},{"type":75,"tag":121,"props":4666,"children":4667},{"style":323},[4668],{"type":81,"value":335},{"type":75,"tag":121,"props":4670,"children":4671},{"style":323},[4672],{"type":81,"value":340},{"type":75,"tag":121,"props":4674,"children":4675},{"class":123,"line":134},[4676,4680,4684,4688,4692,4696,4700,4704,4708],{"type":75,"tag":121,"props":4677,"children":4678},{"style":306},[4679],{"type":81,"value":309},{"type":75,"tag":121,"props":4681,"children":4682},{"style":323},[4683],{"type":81,"value":552},{"type":75,"tag":121,"props":4685,"children":4686},{"style":312},[4687],{"type":81,"value":1935},{"type":75,"tag":121,"props":4689,"children":4690},{"style":323},[4691],{"type":81,"value":562},{"type":75,"tag":121,"props":4693,"children":4694},{"style":306},[4695],{"type":81,"value":567},{"type":75,"tag":121,"props":4697,"children":4698},{"style":323},[4699],{"type":81,"value":326},{"type":75,"tag":121,"props":4701,"children":4702},{"style":143},[4703],{"type":81,"value":1952},{"type":75,"tag":121,"props":4705,"children":4706},{"style":323},[4707],{"type":81,"value":335},{"type":75,"tag":121,"props":4709,"children":4710},{"style":323},[4711],{"type":81,"value":340},{"type":75,"tag":121,"props":4713,"children":4714},{"class":123,"line":240},[4715,4719,4723,4728,4732,4737,4741,4745,4749,4754,4758],{"type":75,"tag":121,"props":4716,"children":4717},{"style":306},[4718],{"type":81,"value":309},{"type":75,"tag":121,"props":4720,"children":4721},{"style":323},[4722],{"type":81,"value":552},{"type":75,"tag":121,"props":4724,"children":4725},{"style":312},[4726],{"type":81,"value":4727}," EmbeddedCheckoutProvider",{"type":75,"tag":121,"props":4729,"children":4730},{"style":323},[4731],{"type":81,"value":817},{"type":75,"tag":121,"props":4733,"children":4734},{"style":312},[4735],{"type":81,"value":4736}," EmbeddedCheckout",{"type":75,"tag":121,"props":4738,"children":4739},{"style":323},[4740],{"type":81,"value":562},{"type":75,"tag":121,"props":4742,"children":4743},{"style":306},[4744],{"type":81,"value":567},{"type":75,"tag":121,"props":4746,"children":4747},{"style":323},[4748],{"type":81,"value":326},{"type":75,"tag":121,"props":4750,"children":4751},{"style":143},[4752],{"type":81,"value":4753},"@stripe\u002Freact-stripe-js",{"type":75,"tag":121,"props":4755,"children":4756},{"style":323},[4757],{"type":81,"value":335},{"type":75,"tag":121,"props":4759,"children":4760},{"style":323},[4761],{"type":81,"value":340},{"type":75,"tag":121,"props":4763,"children":4764},{"class":123,"line":250},[4765,4769,4773,4777,4781,4785,4789,4794,4798],{"type":75,"tag":121,"props":4766,"children":4767},{"style":306},[4768],{"type":81,"value":309},{"type":75,"tag":121,"props":4770,"children":4771},{"style":323},[4772],{"type":81,"value":552},{"type":75,"tag":121,"props":4774,"children":4775},{"style":312},[4776],{"type":81,"value":4330},{"type":75,"tag":121,"props":4778,"children":4779},{"style":323},[4780],{"type":81,"value":562},{"type":75,"tag":121,"props":4782,"children":4783},{"style":306},[4784],{"type":81,"value":567},{"type":75,"tag":121,"props":4786,"children":4787},{"style":323},[4788],{"type":81,"value":326},{"type":75,"tag":121,"props":4790,"children":4791},{"style":143},[4792],{"type":81,"value":4793},"@\u002Fapp\u002Factions\u002Fembedded-checkout",{"type":75,"tag":121,"props":4795,"children":4796},{"style":323},[4797],{"type":81,"value":335},{"type":75,"tag":121,"props":4799,"children":4800},{"style":323},[4801],{"type":81,"value":340},{"type":75,"tag":121,"props":4803,"children":4804},{"class":123,"line":38},[4805],{"type":75,"tag":121,"props":4806,"children":4807},{"emptyLinePlaceholder":244},[4808],{"type":81,"value":247},{"type":75,"tag":121,"props":4810,"children":4811},{"class":123,"line":450},[4812,4816,4820,4824,4828,4832,4836,4840,4844,4848,4852,4856],{"type":75,"tag":121,"props":4813,"children":4814},{"style":358},[4815],{"type":81,"value":1975},{"type":75,"tag":121,"props":4817,"children":4818},{"style":312},[4819],{"type":81,"value":1980},{"type":75,"tag":121,"props":4821,"children":4822},{"style":323},[4823],{"type":81,"value":371},{"type":75,"tag":121,"props":4825,"children":4826},{"style":379},[4827],{"type":81,"value":1935},{"type":75,"tag":121,"props":4829,"children":4830},{"style":312},[4831],{"type":81,"value":387},{"type":75,"tag":121,"props":4833,"children":4834},{"style":323},[4835],{"type":81,"value":392},{"type":75,"tag":121,"props":4837,"children":4838},{"style":312},[4839],{"type":81,"value":397},{"type":75,"tag":121,"props":4841,"children":4842},{"style":323},[4843],{"type":81,"value":392},{"type":75,"tag":121,"props":4845,"children":4846},{"style":312},[4847],{"type":81,"value":2009},{"type":75,"tag":121,"props":4849,"children":4850},{"style":323},[4851],{"type":81,"value":1014},{"type":75,"tag":121,"props":4853,"children":4854},{"style":312},[4855],{"type":81,"value":484},{"type":75,"tag":121,"props":4857,"children":4858},{"style":323},[4859],{"type":81,"value":340},{"type":75,"tag":121,"props":4861,"children":4862},{"class":123,"line":473},[4863],{"type":75,"tag":121,"props":4864,"children":4865},{"emptyLinePlaceholder":244},[4866],{"type":81,"value":247},{"type":75,"tag":121,"props":4868,"children":4869},{"class":123,"line":748},[4870,4874,4878,4883,4887,4891,4895,4899,4903,4907,4911,4915],{"type":75,"tag":121,"props":4871,"children":4872},{"style":306},[4873],{"type":81,"value":355},{"type":75,"tag":121,"props":4875,"children":4876},{"style":358},[4877],{"type":81,"value":649},{"type":75,"tag":121,"props":4879,"children":4880},{"style":379},[4881],{"type":81,"value":4882}," CheckoutEmbed",{"type":75,"tag":121,"props":4884,"children":4885},{"style":323},[4886],{"type":81,"value":2049},{"type":75,"tag":121,"props":4888,"children":4889},{"style":662},[4890],{"type":81,"value":812},{"type":75,"tag":121,"props":4892,"children":4893},{"style":323},[4894],{"type":81,"value":2058},{"type":75,"tag":121,"props":4896,"children":4897},{"style":323},[4898],{"type":81,"value":552},{"type":75,"tag":121,"props":4900,"children":4901},{"style":421},[4902],{"type":81,"value":812},{"type":75,"tag":121,"props":4904,"children":4905},{"style":323},[4906],{"type":81,"value":429},{"type":75,"tag":121,"props":4908,"children":4909},{"style":138},[4910],{"type":81,"value":674},{"type":75,"tag":121,"props":4912,"children":4913},{"style":323},[4914],{"type":81,"value":2079},{"type":75,"tag":121,"props":4916,"children":4917},{"style":323},[4918],{"type":81,"value":415},{"type":75,"tag":121,"props":4920,"children":4921},{"class":123,"line":778},[4922,4926],{"type":75,"tag":121,"props":4923,"children":4924},{"style":306},[4925],{"type":81,"value":1133},{"type":75,"tag":121,"props":4927,"children":4928},{"style":421},[4929],{"type":81,"value":1138},{"type":75,"tag":121,"props":4931,"children":4932},{"class":123,"line":848},[4933,4937],{"type":75,"tag":121,"props":4934,"children":4935},{"style":323},[4936],{"type":81,"value":1146},{"type":75,"tag":121,"props":4938,"children":4939},{"style":138},[4940],{"type":81,"value":4941},"EmbeddedCheckoutProvider\n",{"type":75,"tag":121,"props":4943,"children":4944},{"class":123,"line":906},[4945,4950,4954,4959],{"type":75,"tag":121,"props":4946,"children":4947},{"style":358},[4948],{"type":81,"value":4949},"      stripe",{"type":75,"tag":121,"props":4951,"children":4952},{"style":323},[4953],{"type":81,"value":1161},{"type":75,"tag":121,"props":4955,"children":4956},{"style":312},[4957],{"type":81,"value":4958},"stripePromise",{"type":75,"tag":121,"props":4960,"children":4961},{"style":323},[4962],{"type":81,"value":1031},{"type":75,"tag":121,"props":4964,"children":4965},{"class":123,"line":960},[4966,4971,4976,4981,4985,4989,4993,4997,5002,5006,5011,5015,5020,5024,5029,5033,5038],{"type":75,"tag":121,"props":4967,"children":4968},{"style":358},[4969],{"type":81,"value":4970},"      options",{"type":75,"tag":121,"props":4972,"children":4973},{"style":323},[4974],{"type":81,"value":4975},"={{",{"type":75,"tag":121,"props":4977,"children":4978},{"style":379},[4979],{"type":81,"value":4980}," fetchClientSecret",{"type":75,"tag":121,"props":4982,"children":4983},{"style":323},[4984],{"type":81,"value":429},{"type":75,"tag":121,"props":4986,"children":4987},{"style":323},[4988],{"type":81,"value":2108},{"type":75,"tag":121,"props":4990,"children":4991},{"style":358},[4992],{"type":81,"value":2113},{"type":75,"tag":121,"props":4994,"children":4995},{"style":379},[4996],{"type":81,"value":4330},{"type":75,"tag":121,"props":4998,"children":4999},{"style":312},[5000],{"type":81,"value":5001},"(priceId)",{"type":75,"tag":121,"props":5003,"children":5004},{"style":323},[5005],{"type":81,"value":392},{"type":75,"tag":121,"props":5007,"children":5008},{"style":379},[5009],{"type":81,"value":5010},"then",{"type":75,"tag":121,"props":5012,"children":5013},{"style":312},[5014],{"type":81,"value":659},{"type":75,"tag":121,"props":5016,"children":5017},{"style":662},[5018],{"type":81,"value":5019},"r",{"type":75,"tag":121,"props":5021,"children":5022},{"style":358},[5023],{"type":81,"value":2113},{"type":75,"tag":121,"props":5025,"children":5026},{"style":312},[5027],{"type":81,"value":5028}," r",{"type":75,"tag":121,"props":5030,"children":5031},{"style":323},[5032],{"type":81,"value":392},{"type":75,"tag":121,"props":5034,"children":5035},{"style":312},[5036],{"type":81,"value":5037},"clientSecret) ",{"type":75,"tag":121,"props":5039,"children":5040},{"style":323},[5041],{"type":81,"value":5042},"}}\n",{"type":75,"tag":121,"props":5044,"children":5045},{"class":123,"line":977},[5046],{"type":75,"tag":121,"props":5047,"children":5048},{"style":323},[5049],{"type":81,"value":5050},"    >\n",{"type":75,"tag":121,"props":5052,"children":5053},{"class":123,"line":985},[5054,5058,5063],{"type":75,"tag":121,"props":5055,"children":5056},{"style":323},[5057],{"type":81,"value":1214},{"type":75,"tag":121,"props":5059,"children":5060},{"style":138},[5061],{"type":81,"value":5062},"EmbeddedCheckout",{"type":75,"tag":121,"props":5064,"children":5065},{"style":323},[5066],{"type":81,"value":5067}," \u002F>\n",{"type":75,"tag":121,"props":5069,"children":5070},{"class":123,"line":1025},[5071,5075,5080],{"type":75,"tag":121,"props":5072,"children":5073},{"style":323},[5074],{"type":81,"value":1273},{"type":75,"tag":121,"props":5076,"children":5077},{"style":138},[5078],{"type":81,"value":5079},"EmbeddedCheckoutProvider",{"type":75,"tag":121,"props":5081,"children":5082},{"style":323},[5083],{"type":81,"value":1265},{"type":75,"tag":121,"props":5085,"children":5086},{"class":123,"line":1820},[5087,5091],{"type":75,"tag":121,"props":5088,"children":5089},{"style":421},[5090],{"type":81,"value":1289},{"type":75,"tag":121,"props":5092,"children":5093},{"style":323},[5094],{"type":81,"value":340},{"type":75,"tag":121,"props":5096,"children":5097},{"class":123,"line":1881},[5098],{"type":75,"tag":121,"props":5099,"children":5100},{"style":323},[5101],{"type":81,"value":1031},{"type":75,"tag":90,"props":5103,"children":5105},{"id":5104},"stripe-elements-custom-forms",[5106],{"type":81,"value":5107},"Stripe Elements (Custom Forms)",{"type":75,"tag":109,"props":5109,"children":5111},{"className":1034,"code":5110,"language":1036,"meta":114,"style":114},"\"use client\";\nimport { Elements, PaymentElement, useStripe, useElements } from \"@stripe\u002Freact-stripe-js\";\nimport { loadStripe } from \"@stripe\u002Fstripe-js\";\n\nconst stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY!);\n\nfunction CheckoutForm() {\n  const stripe = useStripe();\n  const elements = useElements();\n\n  const handleSubmit = async (e: React.FormEvent) => {\n    e.preventDefault();\n    if (!stripe || !elements) return;\n\n    const { error } = await stripe.confirmPayment({\n      elements,\n      confirmParams: { return_url: `${window.location.origin}\u002Fsuccess` },\n    });\n\n    if (error) console.error(error.message);\n  };\n\n  return (\n    \u003Cform onSubmit={handleSubmit}>\n      \u003CPaymentElement \u002F>\n      \u003Cbutton type=\"submit\" disabled={!stripe}>Pay\u003C\u002Fbutton>\n    \u003C\u002Fform>\n  );\n}\n\nexport function PaymentForm({ clientSecret }: { clientSecret: string }) {\n  return (\n    \u003CElements stripe={stripePromise} options={{ clientSecret }}>\n      \u003CCheckoutForm \u002F>\n    \u003C\u002FElements>\n  );\n}\n",[5112],{"type":75,"tag":117,"props":5113,"children":5114},{"__ignoreMap":114},[5115,5134,5201,5240,5247,5298,5305,5326,5353,5381,5388,5447,5472,5520,5527,5575,5587,5655,5670,5677,5735,5742,5749,5760,5789,5805,5871,5886,5897,5904,5911,5963,5974,6022,6038,6053,6064],{"type":75,"tag":121,"props":5116,"children":5117},{"class":123,"line":124},[5118,5122,5126,5130],{"type":75,"tag":121,"props":5119,"children":5120},{"style":323},[5121],{"type":81,"value":335},{"type":75,"tag":121,"props":5123,"children":5124},{"style":143},[5125],{"type":81,"value":1911},{"type":75,"tag":121,"props":5127,"children":5128},{"style":323},[5129],{"type":81,"value":335},{"type":75,"tag":121,"props":5131,"children":5132},{"style":323},[5133],{"type":81,"value":340},{"type":75,"tag":121,"props":5135,"children":5136},{"class":123,"line":134},[5137,5141,5145,5150,5154,5159,5163,5168,5172,5177,5181,5185,5189,5193,5197],{"type":75,"tag":121,"props":5138,"children":5139},{"style":306},[5140],{"type":81,"value":309},{"type":75,"tag":121,"props":5142,"children":5143},{"style":323},[5144],{"type":81,"value":552},{"type":75,"tag":121,"props":5146,"children":5147},{"style":312},[5148],{"type":81,"value":5149}," Elements",{"type":75,"tag":121,"props":5151,"children":5152},{"style":323},[5153],{"type":81,"value":817},{"type":75,"tag":121,"props":5155,"children":5156},{"style":312},[5157],{"type":81,"value":5158}," PaymentElement",{"type":75,"tag":121,"props":5160,"children":5161},{"style":323},[5162],{"type":81,"value":817},{"type":75,"tag":121,"props":5164,"children":5165},{"style":312},[5166],{"type":81,"value":5167}," useStripe",{"type":75,"tag":121,"props":5169,"children":5170},{"style":323},[5171],{"type":81,"value":817},{"type":75,"tag":121,"props":5173,"children":5174},{"style":312},[5175],{"type":81,"value":5176}," useElements",{"type":75,"tag":121,"props":5178,"children":5179},{"style":323},[5180],{"type":81,"value":562},{"type":75,"tag":121,"props":5182,"children":5183},{"style":306},[5184],{"type":81,"value":567},{"type":75,"tag":121,"props":5186,"children":5187},{"style":323},[5188],{"type":81,"value":326},{"type":75,"tag":121,"props":5190,"children":5191},{"style":143},[5192],{"type":81,"value":4753},{"type":75,"tag":121,"props":5194,"children":5195},{"style":323},[5196],{"type":81,"value":335},{"type":75,"tag":121,"props":5198,"children":5199},{"style":323},[5200],{"type":81,"value":340},{"type":75,"tag":121,"props":5202,"children":5203},{"class":123,"line":240},[5204,5208,5212,5216,5220,5224,5228,5232,5236],{"type":75,"tag":121,"props":5205,"children":5206},{"style":306},[5207],{"type":81,"value":309},{"type":75,"tag":121,"props":5209,"children":5210},{"style":323},[5211],{"type":81,"value":552},{"type":75,"tag":121,"props":5213,"children":5214},{"style":312},[5215],{"type":81,"value":1935},{"type":75,"tag":121,"props":5217,"children":5218},{"style":323},[5219],{"type":81,"value":562},{"type":75,"tag":121,"props":5221,"children":5222},{"style":306},[5223],{"type":81,"value":567},{"type":75,"tag":121,"props":5225,"children":5226},{"style":323},[5227],{"type":81,"value":326},{"type":75,"tag":121,"props":5229,"children":5230},{"style":143},[5231],{"type":81,"value":1952},{"type":75,"tag":121,"props":5233,"children":5234},{"style":323},[5235],{"type":81,"value":335},{"type":75,"tag":121,"props":5237,"children":5238},{"style":323},[5239],{"type":81,"value":340},{"type":75,"tag":121,"props":5241,"children":5242},{"class":123,"line":250},[5243],{"type":75,"tag":121,"props":5244,"children":5245},{"emptyLinePlaceholder":244},[5246],{"type":81,"value":247},{"type":75,"tag":121,"props":5248,"children":5249},{"class":123,"line":38},[5250,5254,5258,5262,5266,5270,5274,5278,5282,5286,5290,5294],{"type":75,"tag":121,"props":5251,"children":5252},{"style":358},[5253],{"type":81,"value":1975},{"type":75,"tag":121,"props":5255,"children":5256},{"style":312},[5257],{"type":81,"value":1980},{"type":75,"tag":121,"props":5259,"children":5260},{"style":323},[5261],{"type":81,"value":371},{"type":75,"tag":121,"props":5263,"children":5264},{"style":379},[5265],{"type":81,"value":1935},{"type":75,"tag":121,"props":5267,"children":5268},{"style":312},[5269],{"type":81,"value":387},{"type":75,"tag":121,"props":5271,"children":5272},{"style":323},[5273],{"type":81,"value":392},{"type":75,"tag":121,"props":5275,"children":5276},{"style":312},[5277],{"type":81,"value":397},{"type":75,"tag":121,"props":5279,"children":5280},{"style":323},[5281],{"type":81,"value":392},{"type":75,"tag":121,"props":5283,"children":5284},{"style":312},[5285],{"type":81,"value":2009},{"type":75,"tag":121,"props":5287,"children":5288},{"style":323},[5289],{"type":81,"value":1014},{"type":75,"tag":121,"props":5291,"children":5292},{"style":312},[5293],{"type":81,"value":484},{"type":75,"tag":121,"props":5295,"children":5296},{"style":323},[5297],{"type":81,"value":340},{"type":75,"tag":121,"props":5299,"children":5300},{"class":123,"line":450},[5301],{"type":75,"tag":121,"props":5302,"children":5303},{"emptyLinePlaceholder":244},[5304],{"type":81,"value":247},{"type":75,"tag":121,"props":5306,"children":5307},{"class":123,"line":473},[5308,5313,5318,5322],{"type":75,"tag":121,"props":5309,"children":5310},{"style":358},[5311],{"type":81,"value":5312},"function",{"type":75,"tag":121,"props":5314,"children":5315},{"style":379},[5316],{"type":81,"value":5317}," CheckoutForm",{"type":75,"tag":121,"props":5319,"children":5320},{"style":323},[5321],{"type":81,"value":1121},{"type":75,"tag":121,"props":5323,"children":5324},{"style":323},[5325],{"type":81,"value":415},{"type":75,"tag":121,"props":5327,"children":5328},{"class":123,"line":748},[5329,5333,5337,5341,5345,5349],{"type":75,"tag":121,"props":5330,"children":5331},{"style":358},[5332],{"type":81,"value":690},{"type":75,"tag":121,"props":5334,"children":5335},{"style":312},[5336],{"type":81,"value":600},{"type":75,"tag":121,"props":5338,"children":5339},{"style":323},[5340],{"type":81,"value":700},{"type":75,"tag":121,"props":5342,"children":5343},{"style":379},[5344],{"type":81,"value":5167},{"type":75,"tag":121,"props":5346,"children":5347},{"style":421},[5348],{"type":81,"value":1121},{"type":75,"tag":121,"props":5350,"children":5351},{"style":323},[5352],{"type":81,"value":340},{"type":75,"tag":121,"props":5354,"children":5355},{"class":123,"line":778},[5356,5360,5365,5369,5373,5377],{"type":75,"tag":121,"props":5357,"children":5358},{"style":358},[5359],{"type":81,"value":690},{"type":75,"tag":121,"props":5361,"children":5362},{"style":312},[5363],{"type":81,"value":5364}," elements",{"type":75,"tag":121,"props":5366,"children":5367},{"style":323},[5368],{"type":81,"value":700},{"type":75,"tag":121,"props":5370,"children":5371},{"style":379},[5372],{"type":81,"value":5176},{"type":75,"tag":121,"props":5374,"children":5375},{"style":421},[5376],{"type":81,"value":1121},{"type":75,"tag":121,"props":5378,"children":5379},{"style":323},[5380],{"type":81,"value":340},{"type":75,"tag":121,"props":5382,"children":5383},{"class":123,"line":848},[5384],{"type":75,"tag":121,"props":5385,"children":5386},{"emptyLinePlaceholder":244},[5387],{"type":81,"value":247},{"type":75,"tag":121,"props":5389,"children":5390},{"class":123,"line":906},[5391,5395,5400,5404,5408,5412,5417,5421,5426,5430,5435,5439,5443],{"type":75,"tag":121,"props":5392,"children":5393},{"style":358},[5394],{"type":81,"value":690},{"type":75,"tag":121,"props":5396,"children":5397},{"style":312},[5398],{"type":81,"value":5399}," handleSubmit",{"type":75,"tag":121,"props":5401,"children":5402},{"style":323},[5403],{"type":81,"value":700},{"type":75,"tag":121,"props":5405,"children":5406},{"style":358},[5407],{"type":81,"value":644},{"type":75,"tag":121,"props":5409,"children":5410},{"style":323},[5411],{"type":81,"value":2937},{"type":75,"tag":121,"props":5413,"children":5414},{"style":662},[5415],{"type":81,"value":5416},"e",{"type":75,"tag":121,"props":5418,"children":5419},{"style":323},[5420],{"type":81,"value":429},{"type":75,"tag":121,"props":5422,"children":5423},{"style":138},[5424],{"type":81,"value":5425}," React",{"type":75,"tag":121,"props":5427,"children":5428},{"style":323},[5429],{"type":81,"value":392},{"type":75,"tag":121,"props":5431,"children":5432},{"style":138},[5433],{"type":81,"value":5434},"FormEvent",{"type":75,"tag":121,"props":5436,"children":5437},{"style":323},[5438],{"type":81,"value":484},{"type":75,"tag":121,"props":5440,"children":5441},{"style":358},[5442],{"type":81,"value":2113},{"type":75,"tag":121,"props":5444,"children":5445},{"style":323},[5446],{"type":81,"value":415},{"type":75,"tag":121,"props":5448,"children":5449},{"class":123,"line":960},[5450,5455,5459,5464,5468],{"type":75,"tag":121,"props":5451,"children":5452},{"style":312},[5453],{"type":81,"value":5454},"    e",{"type":75,"tag":121,"props":5456,"children":5457},{"style":323},[5458],{"type":81,"value":392},{"type":75,"tag":121,"props":5460,"children":5461},{"style":379},[5462],{"type":81,"value":5463},"preventDefault",{"type":75,"tag":121,"props":5465,"children":5466},{"style":421},[5467],{"type":81,"value":1121},{"type":75,"tag":121,"props":5469,"children":5470},{"style":323},[5471],{"type":81,"value":340},{"type":75,"tag":121,"props":5473,"children":5474},{"class":123,"line":977},[5475,5480,5484,5488,5492,5497,5502,5507,5511,5516],{"type":75,"tag":121,"props":5476,"children":5477},{"style":306},[5478],{"type":81,"value":5479},"    if",{"type":75,"tag":121,"props":5481,"children":5482},{"style":421},[5483],{"type":81,"value":2937},{"type":75,"tag":121,"props":5485,"children":5486},{"style":323},[5487],{"type":81,"value":1014},{"type":75,"tag":121,"props":5489,"children":5490},{"style":312},[5491],{"type":81,"value":23},{"type":75,"tag":121,"props":5493,"children":5494},{"style":323},[5495],{"type":81,"value":5496}," ||",{"type":75,"tag":121,"props":5498,"children":5499},{"style":323},[5500],{"type":81,"value":5501}," !",{"type":75,"tag":121,"props":5503,"children":5504},{"style":312},[5505],{"type":81,"value":5506},"elements",{"type":75,"tag":121,"props":5508,"children":5509},{"style":421},[5510],{"type":81,"value":2947},{"type":75,"tag":121,"props":5512,"children":5513},{"style":306},[5514],{"type":81,"value":5515},"return",{"type":75,"tag":121,"props":5517,"children":5518},{"style":323},[5519],{"type":81,"value":340},{"type":75,"tag":121,"props":5521,"children":5522},{"class":123,"line":985},[5523],{"type":75,"tag":121,"props":5524,"children":5525},{"emptyLinePlaceholder":244},[5526],{"type":81,"value":247},{"type":75,"tag":121,"props":5528,"children":5529},{"class":123,"line":1025},[5530,5534,5538,5542,5546,5550,5554,5558,5562,5567,5571],{"type":75,"tag":121,"props":5531,"children":5532},{"style":358},[5533],{"type":81,"value":2125},{"type":75,"tag":121,"props":5535,"children":5536},{"style":323},[5537],{"type":81,"value":552},{"type":75,"tag":121,"props":5539,"children":5540},{"style":312},[5541],{"type":81,"value":2984},{"type":75,"tag":121,"props":5543,"children":5544},{"style":323},[5545],{"type":81,"value":562},{"type":75,"tag":121,"props":5547,"children":5548},{"style":323},[5549],{"type":81,"value":700},{"type":75,"tag":121,"props":5551,"children":5552},{"style":306},[5553],{"type":81,"value":705},{"type":75,"tag":121,"props":5555,"children":5556},{"style":312},[5557],{"type":81,"value":600},{"type":75,"tag":121,"props":5559,"children":5560},{"style":323},[5561],{"type":81,"value":392},{"type":75,"tag":121,"props":5563,"children":5564},{"style":379},[5565],{"type":81,"value":5566},"confirmPayment",{"type":75,"tag":121,"props":5568,"children":5569},{"style":421},[5570],{"type":81,"value":659},{"type":75,"tag":121,"props":5572,"children":5573},{"style":323},[5574],{"type":81,"value":745},{"type":75,"tag":121,"props":5576,"children":5577},{"class":123,"line":1820},[5578,5583],{"type":75,"tag":121,"props":5579,"children":5580},{"style":312},[5581],{"type":81,"value":5582},"      elements",{"type":75,"tag":121,"props":5584,"children":5585},{"style":323},[5586],{"type":81,"value":447},{"type":75,"tag":121,"props":5588,"children":5589},{"class":123,"line":1881},[5590,5595,5599,5603,5608,5612,5616,5621,5625,5629,5633,5638,5642,5647,5651],{"type":75,"tag":121,"props":5591,"children":5592},{"style":421},[5593],{"type":81,"value":5594},"      confirmParams",{"type":75,"tag":121,"props":5596,"children":5597},{"style":323},[5598],{"type":81,"value":429},{"type":75,"tag":121,"props":5600,"children":5601},{"style":323},[5602],{"type":81,"value":552},{"type":75,"tag":121,"props":5604,"children":5605},{"style":421},[5606],{"type":81,"value":5607}," return_url",{"type":75,"tag":121,"props":5609,"children":5610},{"style":323},[5611],{"type":81,"value":429},{"type":75,"tag":121,"props":5613,"children":5614},{"style":323},[5615],{"type":81,"value":863},{"type":75,"tag":121,"props":5617,"children":5618},{"style":312},[5619],{"type":81,"value":5620},"window",{"type":75,"tag":121,"props":5622,"children":5623},{"style":323},[5624],{"type":81,"value":392},{"type":75,"tag":121,"props":5626,"children":5627},{"style":312},[5628],{"type":81,"value":2378},{"type":75,"tag":121,"props":5630,"children":5631},{"style":323},[5632],{"type":81,"value":392},{"type":75,"tag":121,"props":5634,"children":5635},{"style":312},[5636],{"type":81,"value":5637},"origin",{"type":75,"tag":121,"props":5639,"children":5640},{"style":323},[5641],{"type":81,"value":479},{"type":75,"tag":121,"props":5643,"children":5644},{"style":143},[5645],{"type":81,"value":5646},"\u002Fsuccess",{"type":75,"tag":121,"props":5648,"children":5649},{"style":323},[5650],{"type":81,"value":899},{"type":75,"tag":121,"props":5652,"children":5653},{"style":323},[5654],{"type":81,"value":2248},{"type":75,"tag":121,"props":5656,"children":5657},{"class":123,"line":2470},[5658,5662,5666],{"type":75,"tag":121,"props":5659,"children":5660},{"style":323},[5661],{"type":81,"value":2306},{"type":75,"tag":121,"props":5663,"children":5664},{"style":421},[5665],{"type":81,"value":484},{"type":75,"tag":121,"props":5667,"children":5668},{"style":323},[5669],{"type":81,"value":340},{"type":75,"tag":121,"props":5671,"children":5672},{"class":123,"line":3039},[5673],{"type":75,"tag":121,"props":5674,"children":5675},{"emptyLinePlaceholder":244},[5676],{"type":81,"value":247},{"type":75,"tag":121,"props":5678,"children":5679},{"class":123,"line":3048},[5680,5684,5688,5693,5697,5702,5706,5710,5714,5718,5722,5727,5731],{"type":75,"tag":121,"props":5681,"children":5682},{"style":306},[5683],{"type":81,"value":5479},{"type":75,"tag":121,"props":5685,"children":5686},{"style":421},[5687],{"type":81,"value":2937},{"type":75,"tag":121,"props":5689,"children":5690},{"style":312},[5691],{"type":81,"value":5692},"error",{"type":75,"tag":121,"props":5694,"children":5695},{"style":421},[5696],{"type":81,"value":2947},{"type":75,"tag":121,"props":5698,"children":5699},{"style":312},[5700],{"type":81,"value":5701},"console",{"type":75,"tag":121,"props":5703,"children":5704},{"style":323},[5705],{"type":81,"value":392},{"type":75,"tag":121,"props":5707,"children":5708},{"style":379},[5709],{"type":81,"value":5692},{"type":75,"tag":121,"props":5711,"children":5712},{"style":421},[5713],{"type":81,"value":659},{"type":75,"tag":121,"props":5715,"children":5716},{"style":312},[5717],{"type":81,"value":5692},{"type":75,"tag":121,"props":5719,"children":5720},{"style":323},[5721],{"type":81,"value":392},{"type":75,"tag":121,"props":5723,"children":5724},{"style":312},[5725],{"type":81,"value":5726},"message",{"type":75,"tag":121,"props":5728,"children":5729},{"style":421},[5730],{"type":81,"value":484},{"type":75,"tag":121,"props":5732,"children":5733},{"style":323},[5734],{"type":81,"value":340},{"type":75,"tag":121,"props":5736,"children":5737},{"class":123,"line":3056},[5738],{"type":75,"tag":121,"props":5739,"children":5740},{"style":323},[5741],{"type":81,"value":2407},{"type":75,"tag":121,"props":5743,"children":5744},{"class":123,"line":3091},[5745],{"type":75,"tag":121,"props":5746,"children":5747},{"emptyLinePlaceholder":244},[5748],{"type":81,"value":247},{"type":75,"tag":121,"props":5750,"children":5751},{"class":123,"line":3121},[5752,5756],{"type":75,"tag":121,"props":5753,"children":5754},{"style":306},[5755],{"type":81,"value":1133},{"type":75,"tag":121,"props":5757,"children":5758},{"style":421},[5759],{"type":81,"value":1138},{"type":75,"tag":121,"props":5761,"children":5762},{"class":123,"line":3191},[5763,5767,5771,5776,5780,5785],{"type":75,"tag":121,"props":5764,"children":5765},{"style":323},[5766],{"type":81,"value":1146},{"type":75,"tag":121,"props":5768,"children":5769},{"style":421},[5770],{"type":81,"value":1151},{"type":75,"tag":121,"props":5772,"children":5773},{"style":358},[5774],{"type":81,"value":5775}," onSubmit",{"type":75,"tag":121,"props":5777,"children":5778},{"style":323},[5779],{"type":81,"value":1161},{"type":75,"tag":121,"props":5781,"children":5782},{"style":312},[5783],{"type":81,"value":5784},"handleSubmit",{"type":75,"tag":121,"props":5786,"children":5787},{"style":323},[5788],{"type":81,"value":1206},{"type":75,"tag":121,"props":5790,"children":5791},{"class":123,"line":3200},[5792,5796,5801],{"type":75,"tag":121,"props":5793,"children":5794},{"style":323},[5795],{"type":81,"value":1214},{"type":75,"tag":121,"props":5797,"children":5798},{"style":138},[5799],{"type":81,"value":5800},"PaymentElement",{"type":75,"tag":121,"props":5802,"children":5803},{"style":323},[5804],{"type":81,"value":5067},{"type":75,"tag":121,"props":5806,"children":5807},{"class":123,"line":3213},[5808,5812,5816,5820,5824,5828,5832,5836,5841,5846,5850,5854,5859,5863,5867],{"type":75,"tag":121,"props":5809,"children":5810},{"style":323},[5811],{"type":81,"value":1214},{"type":75,"tag":121,"props":5813,"children":5814},{"style":421},[5815],{"type":81,"value":1219},{"type":75,"tag":121,"props":5817,"children":5818},{"style":358},[5819],{"type":81,"value":1224},{"type":75,"tag":121,"props":5821,"children":5822},{"style":323},[5823],{"type":81,"value":371},{"type":75,"tag":121,"props":5825,"children":5826},{"style":323},[5827],{"type":81,"value":335},{"type":75,"tag":121,"props":5829,"children":5830},{"style":143},[5831],{"type":81,"value":1237},{"type":75,"tag":121,"props":5833,"children":5834},{"style":323},[5835],{"type":81,"value":335},{"type":75,"tag":121,"props":5837,"children":5838},{"style":358},[5839],{"type":81,"value":5840}," disabled",{"type":75,"tag":121,"props":5842,"children":5843},{"style":323},[5844],{"type":81,"value":5845},"={!",{"type":75,"tag":121,"props":5847,"children":5848},{"style":312},[5849],{"type":81,"value":23},{"type":75,"tag":121,"props":5851,"children":5852},{"style":323},[5853],{"type":81,"value":2449},{"type":75,"tag":121,"props":5855,"children":5856},{"style":312},[5857],{"type":81,"value":5858},"Pay",{"type":75,"tag":121,"props":5860,"children":5861},{"style":323},[5862],{"type":81,"value":1256},{"type":75,"tag":121,"props":5864,"children":5865},{"style":421},[5866],{"type":81,"value":1219},{"type":75,"tag":121,"props":5868,"children":5869},{"style":323},[5870],{"type":81,"value":1265},{"type":75,"tag":121,"props":5872,"children":5873},{"class":123,"line":3222},[5874,5878,5882],{"type":75,"tag":121,"props":5875,"children":5876},{"style":323},[5877],{"type":81,"value":1273},{"type":75,"tag":121,"props":5879,"children":5880},{"style":421},[5881],{"type":81,"value":1151},{"type":75,"tag":121,"props":5883,"children":5884},{"style":323},[5885],{"type":81,"value":1265},{"type":75,"tag":121,"props":5887,"children":5888},{"class":123,"line":3251},[5889,5893],{"type":75,"tag":121,"props":5890,"children":5891},{"style":421},[5892],{"type":81,"value":1289},{"type":75,"tag":121,"props":5894,"children":5895},{"style":323},[5896],{"type":81,"value":340},{"type":75,"tag":121,"props":5898,"children":5899},{"class":123,"line":3309},[5900],{"type":75,"tag":121,"props":5901,"children":5902},{"style":323},[5903],{"type":81,"value":1031},{"type":75,"tag":121,"props":5905,"children":5906},{"class":123,"line":3318},[5907],{"type":75,"tag":121,"props":5908,"children":5909},{"emptyLinePlaceholder":244},[5910],{"type":81,"value":247},{"type":75,"tag":121,"props":5912,"children":5913},{"class":123,"line":3330},[5914,5918,5922,5927,5931,5935,5939,5943,5947,5951,5955,5959],{"type":75,"tag":121,"props":5915,"children":5916},{"style":306},[5917],{"type":81,"value":355},{"type":75,"tag":121,"props":5919,"children":5920},{"style":358},[5921],{"type":81,"value":649},{"type":75,"tag":121,"props":5923,"children":5924},{"style":379},[5925],{"type":81,"value":5926}," PaymentForm",{"type":75,"tag":121,"props":5928,"children":5929},{"style":323},[5930],{"type":81,"value":2049},{"type":75,"tag":121,"props":5932,"children":5933},{"style":662},[5934],{"type":81,"value":4613},{"type":75,"tag":121,"props":5936,"children":5937},{"style":323},[5938],{"type":81,"value":2058},{"type":75,"tag":121,"props":5940,"children":5941},{"style":323},[5942],{"type":81,"value":552},{"type":75,"tag":121,"props":5944,"children":5945},{"style":421},[5946],{"type":81,"value":4613},{"type":75,"tag":121,"props":5948,"children":5949},{"style":323},[5950],{"type":81,"value":429},{"type":75,"tag":121,"props":5952,"children":5953},{"style":138},[5954],{"type":81,"value":674},{"type":75,"tag":121,"props":5956,"children":5957},{"style":323},[5958],{"type":81,"value":2079},{"type":75,"tag":121,"props":5960,"children":5961},{"style":323},[5962],{"type":81,"value":415},{"type":75,"tag":121,"props":5964,"children":5965},{"class":123,"line":3338},[5966,5970],{"type":75,"tag":121,"props":5967,"children":5968},{"style":306},[5969],{"type":81,"value":1133},{"type":75,"tag":121,"props":5971,"children":5972},{"style":421},[5973],{"type":81,"value":1138},{"type":75,"tag":121,"props":5975,"children":5976},{"class":123,"line":3367},[5977,5981,5986,5990,5994,5998,6003,6008,6012,6017],{"type":75,"tag":121,"props":5978,"children":5979},{"style":323},[5980],{"type":81,"value":1146},{"type":75,"tag":121,"props":5982,"children":5983},{"style":138},[5984],{"type":81,"value":5985},"Elements",{"type":75,"tag":121,"props":5987,"children":5988},{"style":358},[5989],{"type":81,"value":600},{"type":75,"tag":121,"props":5991,"children":5992},{"style":323},[5993],{"type":81,"value":1161},{"type":75,"tag":121,"props":5995,"children":5996},{"style":312},[5997],{"type":81,"value":4958},{"type":75,"tag":121,"props":5999,"children":6000},{"style":323},[6001],{"type":81,"value":6002},"} ",{"type":75,"tag":121,"props":6004,"children":6005},{"style":358},[6006],{"type":81,"value":6007},"options",{"type":75,"tag":121,"props":6009,"children":6010},{"style":323},[6011],{"type":81,"value":4975},{"type":75,"tag":121,"props":6013,"children":6014},{"style":312},[6015],{"type":81,"value":6016}," clientSecret ",{"type":75,"tag":121,"props":6018,"children":6019},{"style":323},[6020],{"type":81,"value":6021},"}}>\n",{"type":75,"tag":121,"props":6023,"children":6024},{"class":123,"line":3425},[6025,6029,6034],{"type":75,"tag":121,"props":6026,"children":6027},{"style":323},[6028],{"type":81,"value":1214},{"type":75,"tag":121,"props":6030,"children":6031},{"style":138},[6032],{"type":81,"value":6033},"CheckoutForm",{"type":75,"tag":121,"props":6035,"children":6036},{"style":323},[6037],{"type":81,"value":5067},{"type":75,"tag":121,"props":6039,"children":6040},{"class":123,"line":3434},[6041,6045,6049],{"type":75,"tag":121,"props":6042,"children":6043},{"style":323},[6044],{"type":81,"value":1273},{"type":75,"tag":121,"props":6046,"children":6047},{"style":138},[6048],{"type":81,"value":5985},{"type":75,"tag":121,"props":6050,"children":6051},{"style":323},[6052],{"type":81,"value":1265},{"type":75,"tag":121,"props":6054,"children":6055},{"class":123,"line":3446},[6056,6060],{"type":75,"tag":121,"props":6057,"children":6058},{"style":421},[6059],{"type":81,"value":1289},{"type":75,"tag":121,"props":6061,"children":6062},{"style":323},[6063],{"type":81,"value":340},{"type":75,"tag":121,"props":6065,"children":6066},{"class":123,"line":3454},[6067],{"type":75,"tag":121,"props":6068,"children":6069},{"style":323},[6070],{"type":81,"value":1031},{"type":75,"tag":90,"props":6072,"children":6074},{"id":6073},"environment-variables",[6075],{"type":81,"value":6076},"Environment Variables",{"type":75,"tag":6078,"props":6079,"children":6080},"table",{},[6081,6105],{"type":75,"tag":6082,"props":6083,"children":6084},"thead",{},[6085],{"type":75,"tag":6086,"props":6087,"children":6088},"tr",{},[6089,6095,6100],{"type":75,"tag":6090,"props":6091,"children":6092},"th",{},[6093],{"type":81,"value":6094},"Variable",{"type":75,"tag":6090,"props":6096,"children":6097},{},[6098],{"type":81,"value":6099},"Scope",{"type":75,"tag":6090,"props":6101,"children":6102},{},[6103],{"type":81,"value":6104},"Description",{"type":75,"tag":6106,"props":6107,"children":6108},"tbody",{},[6109,6138,6166,6186],{"type":75,"tag":6086,"props":6110,"children":6111},{},[6112,6121,6126],{"type":75,"tag":6113,"props":6114,"children":6115},"td",{},[6116],{"type":75,"tag":117,"props":6117,"children":6119},{"className":6118},[],[6120],{"type":81,"value":175},{"type":75,"tag":6113,"props":6122,"children":6123},{},[6124],{"type":81,"value":6125},"Server",{"type":75,"tag":6113,"props":6127,"children":6128},{},[6129,6131,6137],{"type":81,"value":6130},"API secret key (starts with ",{"type":75,"tag":117,"props":6132,"children":6134},{"className":6133},[],[6135],{"type":81,"value":6136},"sk_",{"type":81,"value":484},{"type":75,"tag":6086,"props":6139,"children":6140},{},[6141,6149,6154],{"type":75,"tag":6113,"props":6142,"children":6143},{},[6144],{"type":75,"tag":117,"props":6145,"children":6147},{"className":6146},[],[6148],{"type":81,"value":186},{"type":75,"tag":6113,"props":6150,"children":6151},{},[6152],{"type":81,"value":6153},"Client",{"type":75,"tag":6113,"props":6155,"children":6156},{},[6157,6159,6165],{"type":81,"value":6158},"Publishable key (starts with ",{"type":75,"tag":117,"props":6160,"children":6162},{"className":6161},[],[6163],{"type":81,"value":6164},"pk_",{"type":81,"value":484},{"type":75,"tag":6086,"props":6167,"children":6168},{},[6169,6177,6181],{"type":75,"tag":6113,"props":6170,"children":6171},{},[6172],{"type":75,"tag":117,"props":6173,"children":6175},{"className":6174},[],[6176],{"type":81,"value":2009},{"type":75,"tag":6113,"props":6178,"children":6179},{},[6180],{"type":81,"value":6153},{"type":75,"tag":6113,"props":6182,"children":6183},{},[6184],{"type":81,"value":6185},"Alias exposed to browser via Next.js",{"type":75,"tag":6086,"props":6187,"children":6188},{},[6189,6197,6201],{"type":75,"tag":6113,"props":6190,"children":6191},{},[6192],{"type":75,"tag":117,"props":6193,"children":6195},{"className":6194},[],[6196],{"type":81,"value":197},{"type":75,"tag":6113,"props":6198,"children":6199},{},[6200],{"type":81,"value":6125},{"type":75,"tag":6113,"props":6202,"children":6203},{},[6204,6206,6212],{"type":81,"value":6205},"Webhook signing secret (starts with ",{"type":75,"tag":117,"props":6207,"children":6209},{"className":6208},[],[6210],{"type":81,"value":6211},"whsec_",{"type":81,"value":484},{"type":75,"tag":90,"props":6214,"children":6216},{"id":6215},"cross-references",[6217],{"type":81,"value":6218},"Cross-References",{"type":75,"tag":163,"props":6220,"children":6221},{},[6222,6238,6253,6268],{"type":75,"tag":167,"props":6223,"children":6224},{},[6225,6230,6232],{"type":75,"tag":3533,"props":6226,"children":6227},{},[6228],{"type":81,"value":6229},"Marketplace install and env var provisioning",{"type":81,"value":6231}," → ",{"type":75,"tag":117,"props":6233,"children":6235},{"className":6234},[],[6236],{"type":81,"value":6237},"⤳ skill: marketplace",{"type":75,"tag":167,"props":6239,"children":6240},{},[6241,6246,6247],{"type":75,"tag":3533,"props":6242,"children":6243},{},[6244],{"type":81,"value":6245},"Webhook route patterns",{"type":81,"value":6231},{"type":75,"tag":117,"props":6248,"children":6250},{"className":6249},[],[6251],{"type":81,"value":6252},"⤳ skill: routing-middleware",{"type":75,"tag":167,"props":6254,"children":6255},{},[6256,6261,6262],{"type":75,"tag":3533,"props":6257,"children":6258},{},[6259],{"type":81,"value":6260},"Environment variable management",{"type":81,"value":6231},{"type":75,"tag":117,"props":6263,"children":6265},{"className":6264},[],[6266],{"type":81,"value":6267},"⤳ skill: env-vars",{"type":75,"tag":167,"props":6269,"children":6270},{},[6271,6276,6277],{"type":75,"tag":3533,"props":6272,"children":6273},{},[6274],{"type":81,"value":6275},"Serverless function config",{"type":81,"value":6231},{"type":75,"tag":117,"props":6278,"children":6280},{"className":6279},[],[6281],{"type":81,"value":6282},"⤳ skill: vercel-functions",{"type":75,"tag":90,"props":6284,"children":6286},{"id":6285},"official-documentation",[6287],{"type":81,"value":6288},"Official Documentation",{"type":75,"tag":163,"props":6290,"children":6291},{},[6292,6304,6314,6324,6334],{"type":75,"tag":167,"props":6293,"children":6294},{},[6295],{"type":75,"tag":6296,"props":6297,"children":6301},"a",{"href":6298,"rel":6299},"https:\u002F\u002Fvercel.com\u002Fmarketplace\u002Fstripe",[6300],"nofollow",[6302],{"type":81,"value":6303},"Stripe + Vercel Marketplace",{"type":75,"tag":167,"props":6305,"children":6306},{},[6307],{"type":75,"tag":6296,"props":6308,"children":6311},{"href":6309,"rel":6310},"https:\u002F\u002Fdocs.stripe.com\u002Fsdks",[6300],[6312],{"type":81,"value":6313},"Stripe Node.js SDK",{"type":75,"tag":167,"props":6315,"children":6316},{},[6317],{"type":75,"tag":6296,"props":6318,"children":6321},{"href":6319,"rel":6320},"https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Fcheckout",[6300],[6322],{"type":81,"value":6323},"Stripe Checkout",{"type":75,"tag":167,"props":6325,"children":6326},{},[6327],{"type":75,"tag":6296,"props":6328,"children":6331},{"href":6329,"rel":6330},"https:\u002F\u002Fdocs.stripe.com\u002Fwebhooks",[6300],[6332],{"type":81,"value":6333},"Stripe Webhooks",{"type":75,"tag":167,"props":6335,"children":6336},{},[6337],{"type":75,"tag":6296,"props":6338,"children":6341},{"href":6339,"rel":6340},"https:\u002F\u002Fdocs.stripe.com\u002Fpayments\u002Felements",[6300],[6342],{"type":81,"value":6343},"Stripe Elements",{"type":75,"tag":6345,"props":6346,"children":6347},"style",{},[6348],{"type":81,"value":6349},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":6351,"total":6471},[6352,6371,6387,6399,6419,6439,6459],{"slug":6353,"name":6353,"fn":6354,"description":6355,"org":6356,"tags":6357,"stars":24,"repoUrl":25,"updatedAt":6370},"accessibility-and-inclusive-visualization","make data visualizations accessible","Make data visualizations accessible and inclusive. Use when the user needs chart or diagram accessibility guidance, text alternatives for complex visuals, color and contrast review, keyboard support, reduced-motion behavior for animation or parallax, or an accessibility QA workflow for exported figures, UML-like diagrams, and dashboards.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6358,6361,6364,6367],{"name":6359,"slug":6360,"type":15},"Accessibility","accessibility",{"name":6362,"slug":6363,"type":15},"Charts","charts",{"name":6365,"slug":6366,"type":15},"Data Visualization","data-visualization",{"name":6368,"slug":6369,"type":15},"Design","design","2026-06-30T19:00:57.102",{"slug":6372,"name":6372,"fn":6373,"description":6374,"org":6375,"tags":6376,"stars":24,"repoUrl":25,"updatedAt":6386},"agent-browser","automate browser interactions for agents","Browser automation CLI for AI agents. Use when the user needs to interact with websites, verify dev server output, test web apps, navigate pages, fill forms, click buttons, take screenshots, extract data, or automate any browser task. Also triggers when a dev server starts so you can verify it visually.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6377,6380,6383],{"name":6378,"slug":6379,"type":15},"Agents","agents",{"name":6381,"slug":6382,"type":15},"Browser Automation","browser-automation",{"name":6384,"slug":6385,"type":15},"Testing","testing","2026-04-06T18:41:03.44016",{"slug":6388,"name":6388,"fn":6389,"description":6390,"org":6391,"tags":6392,"stars":24,"repoUrl":25,"updatedAt":6398},"agent-browser-verify","verify dev server output with automated browser","Automated browser verification for dev servers. Triggers when a dev server starts to run a visual gut-check with agent-browser — verifies the page loads, checks for console errors, validates key UI elements, and reports pass\u002Ffail before continuing.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6393,6394,6397],{"name":6381,"slug":6382,"type":15},{"name":6395,"slug":6396,"type":15},"Local Development","local-development",{"name":6384,"slug":6385,"type":15},"2026-04-06T18:41:17.526867",{"slug":6400,"name":6400,"fn":6401,"description":6402,"org":6403,"tags":6404,"stars":24,"repoUrl":25,"updatedAt":6418},"agents-sdk","build AI agents on Cloudflare Workers","Build AI agents on Cloudflare Workers using the Agents SDK. Load when creating stateful agents, durable workflows, real-time WebSocket apps, scheduled tasks, MCP servers, or chat applications. Covers Agent class, state management, callable RPC, Workflows integration, and React hooks. Biases towards retrieval from Cloudflare docs over pre-trained knowledge.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6405,6406,6409,6412,6415],{"name":6378,"slug":6379,"type":15},{"name":6407,"slug":6408,"type":15},"Cloudflare Workers","cloudflare-workers",{"name":6410,"slug":6411,"type":15},"SDK","sdk",{"name":6413,"slug":6414,"type":15},"Serverless","serverless",{"name":6416,"slug":6417,"type":15},"WebSockets","websockets","2026-04-06T18:39:51.717063",{"slug":6420,"name":6420,"fn":6421,"description":6422,"org":6423,"tags":6424,"stars":24,"repoUrl":25,"updatedAt":6438},"ai-elements","build chat UIs with AI Elements","AI Elements component library guidance — pre-built React components for AI interfaces built on shadcn\u002Fui. Use when building chat UIs, message displays, tool call rendering, streaming responses, reasoning panels, or any AI-native interface with the AI SDK.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6425,6428,6431,6434,6437],{"name":6426,"slug":6427,"type":15},"Frontend","frontend",{"name":6429,"slug":6430,"type":15},"React","react",{"name":6432,"slug":6433,"type":15},"shadcn\u002Fui","shadcn-ui",{"name":6435,"slug":6436,"type":15},"UI Components","ui-components",{"name":13,"slug":14,"type":15},"2026-04-06T18:40:59.619419",{"slug":6440,"name":6440,"fn":6441,"description":6442,"org":6443,"tags":6444,"stars":24,"repoUrl":25,"updatedAt":6458},"ai-gateway","configure Vercel AI Gateway","Vercel AI Gateway expert guidance. Use when configuring model routing, provider failover, cost tracking, or managing multiple AI providers through a unified API.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6445,6448,6451,6454,6457],{"name":6446,"slug":6447,"type":15},"AI Infrastructure","ai-infrastructure",{"name":6449,"slug":6450,"type":15},"Cost Optimization","cost-optimization",{"name":6452,"slug":6453,"type":15},"LLM","llm",{"name":6455,"slug":6456,"type":15},"Performance","performance",{"name":13,"slug":14,"type":15},"2026-04-06T18:40:44.377464",{"slug":6460,"name":6460,"fn":6461,"description":6462,"org":6463,"tags":6464,"stars":24,"repoUrl":25,"updatedAt":6470},"ai-generation-persistence","implement persistence patterns for AI generations","AI generation persistence patterns — unique IDs, addressable URLs, database storage, and cost tracking for every LLM generation",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6465,6466,6469],{"name":6449,"slug":6450,"type":15},{"name":6467,"slug":6468,"type":15},"Database","database",{"name":6452,"slug":6453,"type":15},"2026-04-06T18:41:08.513425",600,{"items":6473,"total":6670},[6474,6495,6518,6535,6551,6568,6587,6599,6613,6627,6639,6654],{"slug":6475,"name":6475,"fn":6476,"description":6477,"org":6478,"tags":6479,"stars":6492,"repoUrl":6493,"updatedAt":6494},"prior-auth-packet-builder","build healthcare prior authorization packets","Build a concise prior authorization packet from local case files and payer policy docs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6480,6483,6486,6489],{"name":6481,"slug":6482,"type":15},"Documents","documents",{"name":6484,"slug":6485,"type":15},"Healthcare","healthcare",{"name":6487,"slug":6488,"type":15},"Insurance","insurance",{"name":6490,"slug":6491,"type":15},"Regulatory Compliance","regulatory-compliance",28169,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fopenai-agents-python","2026-04-16T05:11:39.180399",{"slug":6496,"name":6496,"fn":6497,"description":6498,"org":6499,"tags":6500,"stars":6515,"repoUrl":6516,"updatedAt":6517},"aspnet-core","build ASP.NET Core web applications","Build, review, refactor, or architect ASP.NET Core web applications using current official guidance for .NET web development. Use when working on Blazor Web Apps, Razor Pages, MVC, Minimal APIs, controller-based Web APIs, SignalR, gRPC, middleware, dependency injection, configuration, authentication, authorization, testing, performance, deployment, or ASP.NET Core upgrades.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6501,6504,6506,6509,6512],{"name":6502,"slug":6503,"type":15},".NET","dotnet",{"name":6505,"slug":6496,"type":15},"ASP.NET Core",{"name":6507,"slug":6508,"type":15},"Blazor","blazor",{"name":6510,"slug":6511,"type":15},"C#","csharp",{"name":6513,"slug":6514,"type":15},"Web Development","web-development",23787,"https:\u002F\u002Fgithub.com\u002Fopenai\u002Fskills","2026-04-12T05:07:02.819491",{"slug":6519,"name":6519,"fn":6520,"description":6521,"org":6522,"tags":6523,"stars":6515,"repoUrl":6516,"updatedAt":6534},"chatgpt-apps","build ChatGPT Apps SDK applications","Build, scaffold, refactor, and troubleshoot ChatGPT Apps SDK applications that combine an MCP server and widget UI. Use when Codex needs to design tools, register UI resources, wire the MCP Apps bridge or ChatGPT compatibility APIs, apply Apps SDK metadata or CSP or domain settings, or produce a docs-aligned project scaffold. Prefer a docs-first workflow by invoking the openai-docs skill or OpenAI developer docs MCP tools before generating code.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6524,6527,6530,6533],{"name":6525,"slug":6526,"type":15},"Apps SDK","apps-sdk",{"name":6528,"slug":6529,"type":15},"ChatGPT","chatgpt",{"name":6531,"slug":6532,"type":15},"MCP","mcp",{"name":9,"slug":8,"type":15},"2026-04-12T05:07:05.468097",{"slug":6536,"name":6536,"fn":6537,"description":6538,"org":6539,"tags":6540,"stars":6515,"repoUrl":6516,"updatedAt":6550},"cli-creator","build CLIs from API docs","Build a composable CLI for Codex from API docs, an OpenAPI spec, existing curl examples, an SDK, a web app, an admin tool, or a local script. Use when the user wants Codex to create a command-line tool that can run from any repo, expose composable read\u002Fwrite commands, return stable JSON, manage auth, and pair with a companion skill.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6541,6544,6547],{"name":6542,"slug":6543,"type":15},"API Development","api-development",{"name":6545,"slug":6546,"type":15},"CLI","cli",{"name":6548,"slug":6549,"type":15},"Codex","codex","2026-04-12T05:07:04.132762",{"slug":6552,"name":6552,"fn":6553,"description":6554,"org":6555,"tags":6556,"stars":6515,"repoUrl":6516,"updatedAt":6567},"cloudflare-deploy","deploy projects to Cloudflare","Deploy applications and infrastructure to Cloudflare using Workers, Pages, and related platform services. Use when the user asks to deploy, host, publish, or set up a project on Cloudflare.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6557,6560,6563,6564],{"name":6558,"slug":6559,"type":15},"Cloudflare","cloudflare",{"name":6561,"slug":6562,"type":15},"Cloudflare Pages","cloudflare-pages",{"name":6407,"slug":6408,"type":15},{"name":6565,"slug":6566,"type":15},"Deployment","deployment","2026-04-12T05:07:14.275118",{"slug":6569,"name":6569,"fn":6570,"description":6571,"org":6572,"tags":6573,"stars":6515,"repoUrl":6516,"updatedAt":6586},"define-goal","define and set measurable project goals","Help the user define a concrete, measurable goal before starting work, especially when they ask to use the goal tool, create a goal, set an objective, clarify success criteria, or turn a fuzzy intention into a quantitative outcome. Use this skill for goal creation and goal refinement only; it does not manage durable snapshots, decision logs, or long-running execution artifacts.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6574,6577,6580,6583],{"name":6575,"slug":6576,"type":15},"Productivity","productivity",{"name":6578,"slug":6579,"type":15},"Project Management","project-management",{"name":6581,"slug":6582,"type":15},"Strategy","strategy",{"name":6584,"slug":6585,"type":15},"Task Management","task-management","2026-05-23T06:17:16.870838",{"slug":6588,"name":6588,"fn":6589,"description":6590,"org":6591,"tags":6592,"stars":6515,"repoUrl":6516,"updatedAt":6598},"figma","translate Figma designs into code","Use the Figma MCP server to fetch design context, screenshots, variables, and assets from Figma, and to translate Figma nodes into production code. Trigger when a task involves Figma URLs, node IDs, design-to-code implementation, or Figma MCP setup and troubleshooting.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6593,6594,6596,6597],{"name":6368,"slug":6369,"type":15},{"name":6595,"slug":6588,"type":15},"Figma",{"name":6426,"slug":6427,"type":15},{"name":6531,"slug":6532,"type":15},"2026-04-12T05:06:47.939943",{"slug":6600,"name":6600,"fn":6601,"description":6602,"org":6603,"tags":6604,"stars":6515,"repoUrl":6516,"updatedAt":6612},"figma-code-connect-components","connect Figma designs to code components","Connects Figma design components to code components using Code Connect mapping tools. Use when user says \"code connect\", \"connect this component to code\", \"map this component\", \"link component to code\", \"create code connect mapping\", or wants to establish mappings between Figma designs and code implementations. For canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6605,6606,6609,6610,6611],{"name":6368,"slug":6369,"type":15},{"name":6607,"slug":6608,"type":15},"Design System","design-system",{"name":6595,"slug":6588,"type":15},{"name":6426,"slug":6427,"type":15},{"name":6435,"slug":6436,"type":15},"2026-05-10T05:59:52.971881",{"slug":6614,"name":6614,"fn":6615,"description":6616,"org":6617,"tags":6618,"stars":6515,"repoUrl":6516,"updatedAt":6626},"figma-create-design-system-rules","generate design system rules from Figma","Generates custom design system rules for the user's codebase. Use when user says \"create design system rules\", \"generate rules for my project\", \"set up design rules\", \"customize design system guidelines\", or wants to establish project-specific conventions for Figma-to-code workflows. Requires Figma MCP server connection.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6619,6620,6621,6624,6625],{"name":6368,"slug":6369,"type":15},{"name":6607,"slug":6608,"type":15},{"name":6622,"slug":6623,"type":15},"Documentation","documentation",{"name":6595,"slug":6588,"type":15},{"name":6426,"slug":6427,"type":15},"2026-05-16T06:07:47.821474",{"slug":6628,"name":6628,"fn":6629,"description":6630,"org":6631,"tags":6632,"stars":6515,"repoUrl":6516,"updatedAt":6638},"figma-implement-design","translate Figma designs into application code","Translates Figma designs into production-ready application code with 1:1 visual fidelity. Use when implementing UI code from Figma files, when user mentions \"implement design\", \"generate code\", \"implement component\", provides Figma URLs, or asks to build components matching Figma specs. For Figma canvas writes via `use_figma`, use `figma-use`.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6633,6634,6635,6636,6637],{"name":6368,"slug":6369,"type":15},{"name":6595,"slug":6588,"type":15},{"name":6426,"slug":6427,"type":15},{"name":6435,"slug":6436,"type":15},{"name":6513,"slug":6514,"type":15},"2026-05-16T06:07:40.583615",{"slug":6640,"name":6640,"fn":6641,"description":6642,"org":6643,"tags":6644,"stars":6515,"repoUrl":6516,"updatedAt":6653},"hatch-pet","create animated pets for Codex","Create, repair, validate, visually QA, and package Codex-compatible animated pets and pet spritesheets from character art, generated images, company or prospect brand cues, or visual references. Use when a user wants a lightweight-worker Codex pet workflow, a non-pixel custom pet style, a prospect or company mascot pet, or a full 8x9 animated pet atlas with transparent unused cells, QA contact sheets, and pet.json packaging. This skill composes the installed $imagegen system skill for visual generation and uses bundled scripts for deterministic spritesheet assembly.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6645,6648,6649,6652],{"name":6646,"slug":6647,"type":15},"Animation","animation",{"name":6548,"slug":6549,"type":15},{"name":6650,"slug":6651,"type":15},"Creative","creative",{"name":6368,"slug":6369,"type":15},"2026-05-02T05:31:48.48485",{"slug":6655,"name":6655,"fn":6656,"description":6657,"org":6658,"tags":6659,"stars":6515,"repoUrl":6516,"updatedAt":6669},"imagegen","generate and edit raster images","Generate or edit raster images when the task benefits from AI-created bitmap visuals such as photos, illustrations, textures, sprites, mockups, or transparent-background cutouts. Use when Codex should create a brand-new image, transform an existing image, or derive visual variants from references, and the output should be a bitmap asset rather than repo-native code or vector. Do not use when the task is better handled by editing existing SVG\u002Fvector\u002Fcode-native assets, extending an established icon or logo system, or building the visual directly in HTML\u002FCSS\u002Fcanvas.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[6660,6661,6662,6665,6668],{"name":6650,"slug":6651,"type":15},{"name":6368,"slug":6369,"type":15},{"name":6663,"slug":6664,"type":15},"Image Generation","image-generation",{"name":6666,"slug":6667,"type":15},"Images","images",{"name":9,"slug":8,"type":15},"2026-05-15T06:23:24.312127",675]