/** * Content Loader Utility * * Loads JSON content files from the content directory structure. * Supports server-side loading with TypeScript type safety. * * @example * ```ts * const manifesto = await getContent('nl', 'manifesto') * ``` */ export async function getContent( locale: string = 'nl', file: string ): Promise { try { const content = await import(`@/content/${locale}/${file}.json`) return content.default as T } catch (error) { console.error(`Failed to load content: ${locale}/${file}.json`, error) throw new Error(`Content not found: ${locale}/${file}.json`) } } /** * Type-safe content loader with fallback * * Returns default content if file is not found (useful for development) */ export async function getContentWithFallback( locale: string = 'nl', file: string, fallback: T ): Promise { try { return await getContent(locale, file) } catch (error) { console.warn(`Using fallback content for: ${locale}/${file}.json`) return fallback } }