import { createClient } from "contentful"; import type { ContentfulClientApi } from "contentful"; const space = process.env.CONTENTFUL_SPACE_ID; const accessToken = process.env.CONTENTFUL_ACCESS_TOKEN; let client: ContentfulClientApi; // Idempotent way to get a reference to the Contentful client. export const getClient = (): ContentfulClientApi => { if (typeof client !== 'undefined') { return client; } else { if (typeof space === 'string' && typeof accessToken === 'string') { let client = createClient({ space, accessToken, }); return client; } else { throw new Error('Please set CONTENTFUL_SPACE_ID and CONTENTFUL_ACCESS_TOKEN'); } } }