/** * This is a singleton to ensure we only instantiate Stripe once. */ import { Stripe, loadStripe } from '@stripe/stripe-js'; let stripePromise: Promise; const getStripe = (): Promise => { // eslint-disable-next-line @typescript-eslint/no-misused-promises if (!stripePromise) { stripePromise = loadStripe(process.env.NEXT_PUBLIC_STRIPE_PUBLIC_KEY || ''); } return stripePromise; }; export default getStripe;