@mintlify/prebuild
Version:
Helpful functions for Mintlify's prebuild step
25 lines (24 loc) • 1.11 kB
JavaScript
import { getDecoratedNavPageAndSlug } from '@mintlify/common';
import { getLocationErrString } from '../errorMessages/getLocationErrString.js';
import { preparseMdx } from './preparseMdx/index.js';
export const createPage = async (pagePath, pageContent, contentDirectoryPath, openApiFiles, asyncApiFiles, suppressErrLog = false) => {
let pageMetadata;
let slug;
try {
const { pageMetadata: metadata, slug: pageSlug } = getDecoratedNavPageAndSlug(pagePath, pageContent, openApiFiles, asyncApiFiles);
pageMetadata = metadata;
slug = pageSlug;
pageContent = await preparseMdx(pageContent, contentDirectoryPath, pagePath, suppressErrLog);
}
catch (err) {
console.log(`\n ⚠️ Parsing error in the frontmatter: ${getLocationErrString(pagePath, contentDirectoryPath, err)}: `);
// TODO - pages completely break in our backend when frontmatter is broken.
// Unify "createPage" function across applications and properly catch errors
throw err;
}
return {
pageMetadata,
pageContent,
slug,
};
};