@react-docgen/cli
Version:
A CLI to extract information from React components for documentation generation.
21 lines (20 loc) • 768 B
JavaScript
import { createRequire } from 'module';
import { pathToFileURL } from 'url';
const require = createRequire(import.meta.url);
const resolveOptions = { paths: [process.cwd()] };
export default async function importFile(importSpecifier) {
try {
const importedFile = await import(
// need to convert to file:// url as on windows absolute path strings do not work
pathToFileURL(require.resolve(importSpecifier, resolveOptions)).href);
return importedFile.default ? importedFile.default : importedFile;
}
catch (error) {
if (error instanceof Error &&
error.code !== 'ERR_MODULE_NOT_FOUND' &&
error.code !== 'MODULE_NOT_FOUND') {
throw error;
}
return undefined;
}
}