UNPKG

strapi-nextgen-framework

Version:

Production-ready, type-safe framework bridging Strapi v4 CMS and Next.js 14+ App Router with automatic cache management, Error Boundaries, and SEO optimization

42 lines 1.37 kB
/** * Zod validation utilities for component data * Provides runtime type safety for Strapi component data */ /** * Validates component data against a Zod schema * * @param data - Component data to validate * @param schema - Zod schema to validate against * @param componentType - Component type name (for logging) * @param mode - Validation mode ('error' | 'warn' | 'silent') * @returns Validation result */ export function validateComponentData(data, schema, componentType, mode) { try { schema.parse(data); return { success: true }; } catch (error) { // Handle validation failure based on mode if (mode === 'error') { console.error(`[StrapiRenderer] Validation failed for component: ${componentType}`, '\nData:', data, '\nError:', error); } else if (mode === 'warn') { console.warn(`[StrapiRenderer] Validation warning for component: ${componentType}`, '\nData:', data, '\nError:', error); } return { success: false, error, }; } } /** * Type guard to check if data has __component field */ export function hasStrapiComponent(data) { return (typeof data === 'object' && data !== null && '__component' in data && typeof data.__component === 'string'); } //# sourceMappingURL=validator.js.map