2020-08-13
Features
- Allow defining interop per dependency via a function (#3710)
- Support interop "auto" as a more compatible version of "true" (#3710)
- Support interop "default" and "esModule" to avoid unnecessary interop helpers (#3710)
- Support interop "defaultOnly" for simplified helpers and Node ESM interop compatible output (#3710)
- Respect interop option for external dynamic imports (#3710)
- Support live-bindings for external default imports in non-ES formats unless "externalLiveBindings" is "false" (#3710)
- Use shared default interop helpers for AMD, UMD and IIFE formats (#3710)
- Avoid unnecessarily deconflicted module variables in non-ES formats (#3710)
- Freeze generated interop namespace objects (#3710)
- Always mark interop helpers as pure (#3710)
- Avoid default export interop if there is already an interop namespace object (#3710)
- Sort all
require
statements to the top in CommonJS output for easier back-transpilation to ES modules by other tools (#3710)
Bug Fixes
- Handle accessing
super
in static class fields (#3720) - Deconflict the names of helper variables introduced for interop (#3710)
- Generate proper namespace objects for static namespace imports in non-ES formats (#3710)
- Do not add unused interop helpers when using the renderDynamicImport hook (#3710)
Pull Requests
- #3710: Rework interop handling (@lukastaegert)
- #3720: Handle super in static class fields (@lukastaegert)