UNPKG

memserver

Version:

in-memory database/ORM and http mock server you can run in-browser and node environments. Built for large frontend teams, fast tests and rapid prototyping

26 lines (21 loc) 662 B
import fs from 'fs/promises'; import { transformAsync } from '@babel/core'; let index = 0; export default async function transpileImport(importPath) { let codeBuffer = await fs.readFile(importPath); let output = await transformAsync(codeBuffer.toString(), { filename: importPath, inputSourceMap: false, presets: [ '@babel/preset-typescript', ], plugins: [ 'babel-plugin-module-extension-resolver' ] }); let targetFile = importPath.slice(0, importPath.length - 3) + '.js'; index++; await fs.writeFile(targetFile, output.code); let result = (await import(`${targetFile}?${index}`)).default; return result; }