Enable full ESM support for Node 20+ and modern dependencies, update Jest and build output configuration

- Set "type": "module" in package.json to enable ESM throughout the project.
- Changed "main" in package.json to "dist/index.js" to point to the bundled output generated by ncc.
- Updated Jest configuration (jest.config.js) to ESM format and to use babel-jest for TypeScript transformation.
- Added/updated babel.config.js in ESM format to support TypeScript and ESM for Jest.
- Ensured test scripts use NODE_OPTIONS=--experimental-vm-modules for Jest ESM compatibility.
This commit is contained in:
Chad Bentz
2025-05-12 17:09:08 +00:00
parent 9d2bd043b0
commit 31789e4b4b
8 changed files with 332 additions and 409 deletions

View File

@@ -1,6 +1,12 @@
module.exports = {
export default {
presets: [
['@babel/preset-env', { targets: { node: 'current' } }],
'@babel/preset-typescript',
],
[
'@babel/preset-env',
{
targets: { node: 'current' },
modules: false
}
],
'@babel/preset-typescript'
]
};