Downstream consumers are asking us to switch the packaging to ESM.
Notes from initial investigation:
- switching to ESM can break consumers that use
require()
- many tools/frameworks (like JEST) assume
CommonJS and may require additional flags/code changes to support ESM
- it's possible to "dual package" both ESM and CommonJS