knip
Version:
Find and fix unused dependencies, exports and files in your TypeScript and JavaScript projects
11 lines (10 loc) • 592 B
JavaScript
import { fencedCodeBlockMatcher, importMatcher, importsWithinFrontmatter } from './compilers.js';
const astroMDXDependencies = ['@astrojs/mdx', '@astrojs/starlight'];
const frontmatterImportFields = ['layout'];
const condition = (hasDependency) => astroMDXDependencies.some(hasDependency);
const compiler = (text) => {
const imports = text.replace(fencedCodeBlockMatcher, '').matchAll(importMatcher);
const frontmatterImports = importsWithinFrontmatter(text, frontmatterImportFields);
return [...imports, frontmatterImports].join('\n');
};
export default { condition, compiler };