import { Blog } from "@/payload-types"; export function sanitizePageNumber(page: any, defaultPage = 1): number { const parsedPage = Number(page); if (isNaN(parsedPage) || parsedPage < 1 || !Number.isInteger(parsedPage)) { return defaultPage; } return parsedPage; } export function sanitizeBlogContentIntoStringPreview(data: Blog["content"]) { // Find the first paragraph that has children with text const firstParagraph = data.root.children.find( (node) => node.type === "paragraph" && Array.isArray(node.children) && node.children.length > 0 && !!node.children?.[0]?.text ); if (!firstParagraph) { return "..."; } // @ts-ignore const text = firstParagraph.children?.[0]?.text ?? ""; // Limit to 100 characters return `${text.length > 100 ? text.slice(0, 100) : text}...`; }