@dechamp/express-auto-route
Version:
An express auto route module which allows routes and middleware to be configured via config file.
21 lines (16 loc) • 692 B
text/typescript
import { join, dirname, relative } from "path";
const moduleImporter = async (middlewarePath: string, basePath: string = ""): Promise<any> => {
try {
let npmPackageMainDir = "";
if (process.env && process.env.npm_package_main) {
npmPackageMainDir = dirname(process.env.npm_package_main);
}
const fullBasePath = join(npmPackageMainDir, basePath, middlewarePath);
const middleWareModule = await import(fullBasePath);
return middleWareModule.hasOwnProperty("default") ? middleWareModule.default : middleWareModule;
} catch (error) {
console.log(error);
return false;
}
};
export default moduleImporter;