standard-things/esm

Using esm to import esm synchronously.

jakobrosenberg opened this issue · 1 comments

Is it possible to do something like this with esm to synchronously import esm modules?

import esm from 'esm'
import { createRequire } from "node:module";
const require = createRequire(import.meta.url)(esm)(module);


// synchronously import a file
const thing = require('./somefile.js')

I found a work around by creating a .cjs file to handle the dynamic imports. Alas it struggles to import ESM files if the imported file doesn't have a .mjs extension. Setting package.json type to module in the package of the imported file seems to make no difference.