@mintlify/prebuild
Version:
Helpful functions for Mintlify's prebuild step
32 lines (31 loc) • 1 kB
JavaScript
import { getOpenApiDocumentFromUrl } from '@mintlify/common';
export const getOpenApiFilesFromConfig = async (type, config) => {
let openapi;
if (type === 'docs') {
openapi = config.api?.openapi;
}
else {
openapi = config.openapi;
}
const openApiFiles = [];
// Download OpenApi file if url is provided
async function addOpenApiFileFromUrl(openapi) {
const specFromUrl = await getOpenApiDocumentFromUrl(openapi);
openApiFiles.push({
filename: openapi,
spec: specFromUrl,
originalFileLocation: openapi,
});
}
if (openapi) {
if (typeof openapi === 'string' && openapi.startsWith('https')) {
await addOpenApiFileFromUrl(openapi);
}
else if (typeof openapi === 'object' &&
'source' in openapi &&
openapi.source.startsWith('http')) {
await addOpenApiFileFromUrl(openapi.source);
}
}
return openApiFiles;
};