interop-test

ESM-CJS interop test

This project is maintained by sokra

ESM-CJS interop test

Test fixtures

See modules directory for details

Results

For readablility some shortcuts are applied:

Node.js

current version

Version: node@20.0.0

node import x

import { default as x }
import * as x; x.default

import * as x; ident(x).default
import { named as x } import * as x; x.named

import * as x; ident(x).named
import { __esModule as x } import * as x; x.__esModule

import * as x; ident(x).__esModule
import * as x

import()
x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } { default } syntax error undefined syntax error undefined [Module: null prototype] { default: { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false true
default-export-esModule { [__esModule], default } { [__esModule], default } syntax error undefined true true [Module: null prototype] { __esModule, default: { [__esModule], default }, [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default } false true
default-export-esModule-esm-reexport syntax error undefined syntax error undefined true true [Module: null prototype] { __esModule, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
default-export-esm 'default' 'default' syntax error undefined syntax error undefined [Module: null prototype] { default, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport
{ named, default } { named, default } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named, default }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-babel-getter { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named: [G], default: [G] }, named, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } false true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport
{ [__esModule], named, default } { [__esModule], named, default } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named, default }, named, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-default-export-esModule-esm-reexport syntax error undefined 'named' 'named' true true [Module: null prototype] { __esModule, named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-esm

tla-esm
'default' 'default' 'named' 'named' syntax error undefined [Module: null prototype] { default, named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-esm-esm-reexport

named-and-default-export-esm-reexport

named-export-esm

tla-esm-esm-reexport
syntax error undefined 'named' 'named' syntax error undefined [Module: null prototype] { named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false true
named-and-default-export-getter-esModule { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } false true
named-and-default-export-inherited

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } syntax error undefined syntax error undefined [Module: null prototype] { default: { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-live { named, default } { named, default } 'named-outdated' 'named-outdated' syntax error undefined [Module: null prototype] { default: { named, default }, named: 'named-outdated', [Module] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-non-enumerable { [named], [default] } { [named], [default] } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named], [default] }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false true
named-and-default-export-non-enumerable-inherited { [named], [default] } { [named], [default] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false true
named-and-default-export-runtime-esModule { [__esModule], named, default } { [__esModule], named, default } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-null-default-export { named, default: null } { named, default: null } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named, default: null }, named, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-esModule { [__esModule], named, default: null } { [__esModule], named, default: null } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named, default: null }, named, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named], [default]: null }, named, [Module] } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false true
named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } syntax error undefined syntax error undefined [Module: null prototype] { default: { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-runtime-esModule { [__esModule], named, default: null } { [__esModule], named, default: null } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named, default: null }, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-export { named } { named } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named }, named, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-esModule { [__esModule], named } { [__esModule], named } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named }, named, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
named-export-non-enumerable { [named] } { [named] } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named] }, named, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false true
named-export-runtime

single-object-export
{ named } { named } syntax error undefined syntax error undefined [Module: null prototype] { default: { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-runtime-esModule { [__esModule], named } { [__esModule], named } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named }, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
order { b, a, c } { b, a, c } syntax error undefined syntax error undefined [Module: null prototype] { a, b, c, default: { b, a, c }, [Module] } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false true
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } syntax error undefined true true [Module: null prototype] { __esModule, a, b, c, default: { [__esModule], b, a, c }, [Module] } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } false true
order-esm syntax error undefined syntax error undefined syntax error undefined [Module: null prototype] { a, b, c, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } 'named' 'named' syntax error undefined [Module: null prototype] { default: { default, named }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false true
single-empty-string-export '' '' syntax error undefined syntax error undefined [Module: null prototype] { default: '', [Module] } undefined undefined undefined undefined undefined undefined undefined '' false true
single-null-export null null syntax error undefined syntax error undefined [Module: null prototype] { default: null, [Module] } type error undefined type error type error undefined type error undefined null false true
single-promise-object-export Promise { { named } } Promise { { named } } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { { named } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false true
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { { named, default } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false true
single-promise-string-export Promise { 'single' } Promise { 'single' } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { 'single' }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false true
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' syntax error undefined syntax error undefined [Module: null prototype] { default: 'single', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single' false true
single-string-export-esm-reexport syntax error undefined syntax error undefined syntax error undefined [Module: null prototype] { [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
single-string-export-live 'single-outdated' 'single-outdated' syntax error undefined syntax error undefined [Module: null prototype] { default: 'single-outdated', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false true
tla-esModule syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error
tla-esModule-esm-reexport syntax error syntax error syntax error syntax error syntax error syntax error syntax error require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed syntax error syntax error

long term stable version

Version: node@18.16.0

node-lts import x

import { default as x }
import * as x; x.default

import * as x; ident(x).default
import { named as x } import * as x; x.named

import * as x; ident(x).named
import { __esModule as x } import * as x; x.__esModule

import * as x; ident(x).__esModule
import * as x

import()
x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } { default } syntax error undefined syntax error undefined [Module: null prototype] { default: { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false true
default-export-esModule { [__esModule], default } { [__esModule], default } syntax error undefined true true [Module: null prototype] { __esModule, default: { [__esModule], default }, [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default } false true
default-export-esModule-esm-reexport syntax error undefined syntax error undefined true true [Module: null prototype] { __esModule, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
default-export-esm 'default' 'default' syntax error undefined syntax error undefined [Module: null prototype] { default, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport
{ named, default } { named, default } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named, default }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-babel-getter { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named: [G], default: [G] }, named, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } false true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport
{ [__esModule], named, default } { [__esModule], named, default } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named, default }, named, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-default-export-esModule-esm-reexport syntax error undefined 'named' 'named' true true [Module: null prototype] { __esModule, named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-esm

tla-esm
'default' 'default' 'named' 'named' syntax error undefined [Module: null prototype] { default, named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-esm-esm-reexport

named-and-default-export-esm-reexport

named-export-esm

tla-esm-esm-reexport
syntax error undefined 'named' 'named' syntax error undefined [Module: null prototype] { named, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false true
named-and-default-export-getter-esModule { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } false true
named-and-default-export-inherited

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } syntax error undefined syntax error undefined [Module: null prototype] { default: { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-live { named, default } { named, default } 'named-outdated' 'named-outdated' syntax error undefined [Module: null prototype] { default: { named, default }, named: 'named-outdated', [Module] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-non-enumerable { [named], [default] } { [named], [default] } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named], [default] }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false true
named-and-default-export-non-enumerable-inherited { [named], [default] } { [named], [default] } syntax error undefined syntax error undefined [Module: null prototype] { default: { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false true
named-and-default-export-runtime-esModule { [__esModule], named, default } { [__esModule], named, default } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-null-default-export { named, default: null } { named, default: null } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named, default: null }, named, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-esModule { [__esModule], named, default: null } { [__esModule], named, default: null } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named, default: null }, named, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named], [default]: null }, named, [Module] } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false true
named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } syntax error undefined syntax error undefined [Module: null prototype] { default: { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-runtime-esModule { [__esModule], named, default: null } { [__esModule], named, default: null } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named, default: null }, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-export { named } { named } 'named' 'named' syntax error undefined [Module: null prototype] { default: { named }, named, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-esModule { [__esModule], named } { [__esModule], named } 'named' 'named' true true [Module: null prototype] { __esModule, default: { [__esModule], named }, named, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
named-export-non-enumerable { [named] } { [named] } 'named' 'named' syntax error undefined [Module: null prototype] { default: { [named] }, named, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false true
named-export-runtime

single-object-export
{ named } { named } syntax error undefined syntax error undefined [Module: null prototype] { default: { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-runtime-esModule { [__esModule], named } { [__esModule], named } syntax error undefined syntax error undefined [Module: null prototype] { default: { [__esModule], named }, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
order { b, a, c } { b, a, c } syntax error undefined syntax error undefined [Module: null prototype] { a, b, c, default: { b, a, c }, [Module] } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false true
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } syntax error undefined true true [Module: null prototype] { __esModule, a, b, c, default: { [__esModule], b, a, c }, [Module] } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } false true
order-esm syntax error undefined syntax error undefined syntax error undefined [Module: null prototype] { a, b, c, [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } 'named' 'named' syntax error undefined [Module: null prototype] { default: { default, named }, named, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false true
single-empty-string-export '' '' syntax error undefined syntax error undefined [Module: null prototype] { default: '', [Module] } undefined undefined undefined undefined undefined undefined undefined '' false true
single-null-export null null syntax error undefined syntax error undefined [Module: null prototype] { default: null, [Module] } type error undefined type error type error undefined type error undefined null false true
single-promise-object-export Promise { { named } } Promise { { named } } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { { named } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false true
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { { named, default } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false true
single-promise-string-export Promise { 'single' } Promise { 'single' } syntax error undefined syntax error undefined [Module: null prototype] { default: Promise { 'single' }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false true
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' syntax error undefined syntax error undefined [Module: null prototype] { default: 'single', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single' false true
single-string-export-esm-reexport syntax error undefined syntax error undefined syntax error undefined [Module: null prototype] { [Module] } require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed true
single-string-export-live 'single-outdated' 'single-outdated' syntax error undefined syntax error undefined [Module: null prototype] { default: 'single-outdated', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false true
tla-esModule syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error
tla-esModule-esm-reexport syntax error syntax error syntax error syntax error syntax error syntax error syntax error require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed require(esm) not allowed syntax error syntax error

Babel

Babel behaves different depending on the file extension. If it is .mjs, it will compile in a strictNamespace mode.

.mjs file

Version: @babel/cli@7.21.5 @babel/core@7.21.8 @babel/plugin-transform-modules-commonjs@7.21.5 babel-plugin-dynamic-import-node@2.3.3 node@20.0.0

babel import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
import { named as x }

x = require(); x.named
import * as x; x.named

import * as x; ident(x).named
import { __esModule as x }

{ __esModule } = require()

x = require(); x.__esModule
import * as x; x.__esModule

import * as x; ident(x).__esModule

x = require(); ident(x).__esModule
import * as x

import()
x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); ident(x).named x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } undefined undefined undefined undefined { default: { default } } 'default' 'default' undefined undefined { default } false true
default-export-esModule

default-export-esm
'default' undefined undefined true true { [__esModule], default } 'default' 'default' undefined undefined { [__esModule], default } true true
default-export-esModule-esm-reexport undefined undefined undefined true true { [__esModule] } undefined undefined undefined undefined { [__esModule] } true true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } 'named' 'named' undefined undefined { named, default: { named, default } } 'default' 'default' 'named' 'named' { named, default } false true
named-and-default-export-babel-getter 'default' 'named' 'named' true true { [__esModule], named: [G], default: [G] } 'default' 'default' 'named' 'named' { [__esModule], named: [G], default: [G] } true true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
'default' 'named' 'named' true true { [__esModule], named, default } 'default' 'default' 'named' 'named' { [__esModule], named, default } true true
named-and-default-export-esModule-esm-reexport

named-and-default-export-esm-reexport
undefined 'named' 'named' true true { [__esModule], named: [G] } undefined undefined 'named' 'named' { [__esModule], named: [G] } true true
named-and-default-export-esm 'default' 'named' 'named' true true { [__esModule], default, named } 'default' 'default' 'named' 'named' { [__esModule], default, named } true true
named-and-default-export-esm-esm-reexport

tla-esm-esm-reexport
runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error
named-and-default-export-getter { [named]: [G], [default]: [G] } 'named' undefined undefined undefined { default: { [named]: [G], [default]: [G] } } 'default' 'default' 'named' 'named' { [named]: [G], [default]: [G] } false true
named-and-default-export-getter-esModule 'default' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'default' 'default' 'named' 'named' { [__esModule]: [G: true], [named]: [G], [default]: [G] } true true
named-and-default-export-inherited { named, default } 'named' undefined undefined undefined { default: { named, default } } 'default' 'default' 'named' 'named' { named, default } false true
named-and-default-export-live { named, default } 'named' 'named-outdated' undefined undefined { named: 'named-outdated', default: { named, default } } 'default' 'default' 'named-outdated' 'named' { named, default } false true
named-and-default-export-non-enumerable

named-and-default-export-non-enumerable-inherited
{ [named], [default] } 'named' undefined undefined undefined { default: { [named], [default] } } 'default' 'default' 'named' 'named' { [named], [default] } false true
named-and-null-default-export

named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } 'named' 'named' undefined undefined { named, default: { named, default: null } } null null 'named' 'named' { named, default: null } false true
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
null 'named' 'named' true true { [__esModule], named, default: null } null null 'named' 'named' { [__esModule], named, default: null } true true
named-and-null-default-export-non-enumerable { [named], [default]: null } 'named' undefined undefined undefined { default: { [named], [default]: null } } null null 'named' 'named' { [named], [default]: null } false true
named-export

named-export-runtime

single-object-export
{ named } 'named' 'named' undefined undefined { named, default: { named } } undefined undefined 'named' 'named' { named } false true
named-export-esModule

named-export-esm

named-export-runtime-esModule
undefined 'named' 'named' true true { [__esModule], named } undefined undefined 'named' 'named' { [__esModule], named } true true
named-export-non-enumerable { [named] } 'named' undefined undefined undefined { default: { [named] } } undefined undefined 'named' 'named' { [named] } false true
order { b, a, c } undefined undefined undefined undefined { b, a, c, default: { b, a, c } } undefined undefined undefined undefined { b, a, c } false true
order-esModule undefined undefined undefined true true { [__esModule], b, a, c } undefined undefined undefined undefined { [__esModule], b, a, c } true true
order-esm undefined undefined undefined true true { [__esModule], a, b, c } undefined undefined undefined undefined { [__esModule], a, b, c } true true
require-circular

require-circular-self

require-conditional-execution
{ default, named } 'named' 'named' undefined undefined { named, default: { default, named } } 'default' 'default' 'named' 'named' { default, named } false true
single-empty-string-export '' undefined undefined undefined undefined { default: '' } undefined undefined undefined undefined '' false false
single-null-export null type error undefined type error undefined { default: null } type error undefined type error undefined null false false
single-promise-object-export Promise { { named } } undefined undefined undefined undefined { default: Promise { { named } } } undefined undefined undefined undefined Promise { { named } } false true
single-promise-object-with-default-export Promise { { named, default } } undefined undefined undefined undefined { default: Promise { { named, default } } } undefined undefined undefined undefined Promise { { named, default } } false true
single-promise-string-export Promise { 'single' } undefined undefined undefined undefined { default: Promise { 'single' } } undefined undefined undefined undefined Promise { 'single' } false true
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' undefined undefined undefined undefined { default: 'single' } undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined undefined undefined true true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule] } undefined undefined undefined undefined { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule] } true true
single-string-export-live 'single-outdated' undefined undefined undefined undefined { default: 'single-outdated' } undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport

tla-esm
syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error

.js file

Version: @babel/cli@7.21.5 @babel/core@7.21.8 @babel/plugin-transform-modules-commonjs@7.21.5 babel-plugin-dynamic-import-node@2.3.3 node@20.0.0

babel-js import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
import { named as x }

x = require(); x.named
import * as x; x.named

import * as x; ident(x).named
import { __esModule as x }

{ __esModule } = require()

x = require(); x.__esModule
import * as x; x.__esModule

import * as x; ident(x).__esModule

x = require(); ident(x).__esModule
import * as x

import()
x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); ident(x).named x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } undefined undefined undefined undefined { default: { default } } 'default' 'default' undefined undefined { default } false true
default-export-esModule

default-export-esm
'default' undefined undefined true true { [__esModule], default } 'default' 'default' undefined undefined { [__esModule], default } true true
default-export-esModule-esm-reexport undefined undefined undefined true true { [__esModule] } undefined undefined undefined undefined { [__esModule] } true true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } 'named' 'named' undefined undefined { named, default: { named, default } } 'default' 'default' 'named' 'named' { named, default } false true
named-and-default-export-babel-getter 'default' 'named' 'named' true true { [__esModule], named: [G], default: [G] } 'default' 'default' 'named' 'named' { [__esModule], named: [G], default: [G] } true true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
'default' 'named' 'named' true true { [__esModule], named, default } 'default' 'default' 'named' 'named' { [__esModule], named, default } true true
named-and-default-export-esModule-esm-reexport

named-and-default-export-esm-reexport
undefined 'named' 'named' true true { [__esModule], named: [G] } undefined undefined 'named' 'named' { [__esModule], named: [G] } true true
named-and-default-export-esm 'default' 'named' 'named' true true { [__esModule], default, named } 'default' 'default' 'named' 'named' { [__esModule], default, named } true true
named-and-default-export-esm-esm-reexport

tla-esm-esm-reexport
runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error runtime error
named-and-default-export-getter { [named]: [G], [default]: [G] } 'named' undefined undefined undefined { default: { [named]: [G], [default]: [G] } } 'default' 'default' 'named' 'named' { [named]: [G], [default]: [G] } false true
named-and-default-export-getter-esModule 'default' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'default' 'default' 'named' 'named' { [__esModule]: [G: true], [named]: [G], [default]: [G] } true true
named-and-default-export-inherited { named, default } 'named' undefined undefined undefined { default: { named, default } } 'default' 'default' 'named' 'named' { named, default } false true
named-and-default-export-live { named, default } 'named' 'named-outdated' undefined undefined { named: 'named-outdated', default: { named, default } } 'default' 'default' 'named-outdated' 'named' { named, default } false true
named-and-default-export-non-enumerable

named-and-default-export-non-enumerable-inherited
{ [named], [default] } 'named' undefined undefined undefined { default: { [named], [default] } } 'default' 'default' 'named' 'named' { [named], [default] } false true
named-and-null-default-export

named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } 'named' 'named' undefined undefined { named, default: { named, default: null } } null null 'named' 'named' { named, default: null } false true
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
null 'named' 'named' true true { [__esModule], named, default: null } null null 'named' 'named' { [__esModule], named, default: null } true true
named-and-null-default-export-non-enumerable { [named], [default]: null } 'named' undefined undefined undefined { default: { [named], [default]: null } } null null 'named' 'named' { [named], [default]: null } false true
named-export

named-export-runtime

single-object-export
{ named } 'named' 'named' undefined undefined { named, default: { named } } undefined undefined 'named' 'named' { named } false true
named-export-esModule

named-export-esm

named-export-runtime-esModule
undefined 'named' 'named' true true { [__esModule], named } undefined undefined 'named' 'named' { [__esModule], named } true true
named-export-non-enumerable { [named] } 'named' undefined undefined undefined { default: { [named] } } undefined undefined 'named' 'named' { [named] } false true
order { b, a, c } undefined undefined undefined undefined { b, a, c, default: { b, a, c } } undefined undefined undefined undefined { b, a, c } false true
order-esModule undefined undefined undefined true true { [__esModule], b, a, c } undefined undefined undefined undefined { [__esModule], b, a, c } true true
order-esm undefined undefined undefined true true { [__esModule], a, b, c } undefined undefined undefined undefined { [__esModule], a, b, c } true true
require-circular

require-circular-self

require-conditional-execution
{ default, named } 'named' 'named' undefined undefined { named, default: { default, named } } 'default' 'default' 'named' 'named' { default, named } false true
single-empty-string-export '' undefined undefined undefined undefined { default: '' } undefined undefined undefined undefined '' false false
single-null-export null type error undefined type error undefined { default: null } type error undefined type error undefined null false false
single-promise-object-export Promise { { named } } undefined undefined undefined undefined { default: Promise { { named } } } undefined undefined undefined undefined Promise { { named } } false true
single-promise-object-with-default-export Promise { { named, default } } undefined undefined undefined undefined { default: Promise { { named, default } } } undefined undefined undefined undefined Promise { { named, default } } false true
single-promise-string-export Promise { 'single' } undefined undefined undefined undefined { default: Promise { 'single' } } undefined undefined undefined undefined Promise { 'single' } false true
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' undefined undefined undefined undefined { default: 'single' } undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined undefined undefined true true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule] } undefined undefined undefined undefined { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule] } true true
single-string-export-live 'single-outdated' undefined undefined undefined undefined { default: 'single-outdated' } undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport

tla-esm
syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error syntax error

Webpack

ESM-flagged

When using a .mjs file or .js in a package.json context with "type": "module".

Version: webpack@5.81.0 node@20.0.0

webpack import x

import { default as x }

import * as x; x.default
import * as x; ident(x).default import { named as x }

import * as x; x.named
import * as x; ident(x).named import { __esModule as x }

import * as x; x.__esModule
import * as x; ident(x).__esModule import * as x import() x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export { default } { default } undefined + errors undefined true + errors true [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false false
default-export-esModule { [__esModule], default } { [__esModule], default } undefined + errors undefined true true [Module: null prototype] { [__esModule], default: [G] { [__esModule], default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { [__esModule], default }, [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default } true false
default-export-esModule-esm-reexport undefined + errors undefined undefined + errors undefined true true { [__esModule], [Module] } { [__esModule], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], [Module] } true true
default-export-esm 'default' 'default' undefined + errors undefined true + errors true { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default: [G], [Module] } true true
default-export-runtime { default } { default } undefined undefined true true [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false false
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport
{ named, default } { named, default } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-babel-getter { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named: [G], default: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named: [G], default: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } true false
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
{ [__esModule], named, default } { [__esModule], named, default } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } true false
named-and-default-export-esModule-esm-reexport undefined + errors undefined 'named' 'named' true true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-esm 'default' 'default' 'named' 'named' true + errors true { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], default: [G], named: [G], [Module] } true true
named-and-default-export-esm-esm-reexport

named-and-default-export-esm-reexport

named-export-esm
undefined + errors undefined 'named' 'named' true + errors true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false false
named-and-default-export-getter-esModule { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } true false
named-and-default-export-inherited

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-live { named, default } { named, default } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-non-enumerable { [named], [default] } { [named], [default] } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-default-export-non-enumerable-inherited { [named], [default] } { [named], [default] } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-null-default-export { named, default: null } { named, default: null } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false false
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
{ [__esModule], named, default: null } { [__esModule], named, default: null } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default: null }, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } true false
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false false
named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false false
named-export { named } { named } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false false
named-export-esModule

named-export-runtime-esModule
{ [__esModule], named } { [__esModule], named } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named }, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } true false
named-export-non-enumerable { [named] } { [named] } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false false
named-export-runtime

single-object-export
{ named } { named } 'named' 'named' true true [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false false
order { b, a, c } { b, a, c } undefined + errors undefined true + errors true [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false false
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } undefined + errors undefined true true [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { [__esModule], b, a, c }, [Module] } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { [__esModule], b, a, c }, [Module] } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } true false
order-esm undefined + errors undefined undefined + errors undefined true + errors true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } true true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } 'named' 'named' true + errors true [Module: null prototype] { [__esModule], default: [G] { default, named }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: [G] { default, named }, named: [G], [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false false
single-empty-string-export '' '' undefined undefined true true [Module: null prototype] { [__esModule], default: [G: ''], [Module] } [Module: null prototype] { [__esModule], default: [G: ''], [Module] } undefined undefined undefined undefined undefined undefined undefined '' false false
single-null-export null null type error undefined true true [Module: null prototype] { [__esModule], default: [G: null], [Module] } [Module: null prototype] { [__esModule], default: [G: null], [Module] } type error undefined type error type error undefined type error undefined null false false
single-promise-object-export Promise { { named } } Promise { { named } } undefined undefined true true [Module: null prototype] { [__esModule], constructor: [G: <Inspection threw>], then: [G: <Inspection threw>], catch: [G: <Inspection threw>], finally: [G: <Inspection threw>], default: [G] Promise { { named } }, [Module] } { named } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false false
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } undefined undefined true true [Module: null prototype] { [__esModule], constructor: [G: <Inspection threw>], then: [G: <Inspection threw>], catch: [G: <Inspection threw>], finally: [G: <Inspection threw>], default: [G] Promise { { named, default } }, [Module] } { named, default } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false false
single-promise-string-export Promise { 'single' } Promise { 'single' } undefined undefined true true [Module: null prototype] { [__esModule], constructor: [G: <Inspection threw>], then: [G: <Inspection threw>], catch: [G: <Inspection threw>], finally: [G: <Inspection threw>], default: [G] Promise { 'single' }, [Module] } 'single' undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false false
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' undefined undefined true true [Module: null prototype] { [__esModule], default: [G: 'single'], [Module] } [Module: null prototype] { [__esModule], default: [G: 'single'], [Module] } undefined undefined undefined undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined + errors undefined undefined undefined true true { [__esModule], [Module] } { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } undefined undefined undefined undefined undefined true true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } true true
single-string-export-live 'single-outdated' 'single-outdated' undefined undefined true true [Module: null prototype] { [__esModule], default: [G: 'single-outdated'], [Module] } [Module: null prototype] { [__esModule], default: [G: 'single-outdated'], [Module] } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error
tla-esm 'default' 'default' 'named' 'named' true + errors true { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { [__esModule], default: [G], named: [G], [Module] }, [Symbol(webpack exports)]: { [__esModule], default: [G], named: [G], [Module] }, [Symbol(webpack queues)]: { [Function (anonymous)] [length]: 1, [name]: '' } } false true
tla-esm-esm-reexport undefined + errors undefined 'named' 'named' true + errors true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { [__esModule], named: [G], [Module] }, [Symbol(webpack exports)]: { [__esModule], named: [G], [Module] }, [Symbol(webpack queues)]: { [Function (anonymous)] [length]: 1, [name]: '' } } false true

automatic ESM

When using a .js without "type": "module" in the package.json context and ESM is automatic-detect (no import or export used).

Version: webpack@5.81.0 node@20.0.0

webpack-js import x

import { default as x }

import * as x; x.default
import * as x; ident(x).default import { named as x }

import * as x; x.named
import * as x; ident(x).named import { __esModule as x }

import * as x; x.__esModule
import * as x; ident(x).__esModule import * as x import() x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export { default } { default } undefined + warnings undefined true + warnings true [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false false
default-export-esModule 'default' 'default' undefined + warnings undefined true true { [__esModule], default } { [__esModule], default } 'default' 'default' undefined undefined undefined true true { [__esModule], default } true true
default-export-esModule-esm-reexport undefined + warnings undefined undefined + warnings undefined true true { [__esModule], [Module] } { [__esModule], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], [Module] } true true
default-export-esm 'default' 'default' undefined + warnings undefined true + warnings true { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default: [G], [Module] } true true
default-export-runtime { default } 'default' undefined undefined true undefined { default } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false false
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport
{ named, default } { named, default } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-babel-getter 'default' 'default' 'named' 'named' true true { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } true true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
'default' 'default' 'named' 'named' true true { [__esModule], named, default } { [__esModule], named, default } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } true true
named-and-default-export-esModule-esm-reexport undefined + warnings undefined 'named' 'named' true true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-esm 'default' 'default' 'named' 'named' true + warnings true { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], default: [G], named: [G], [Module] } true true
named-and-default-export-esm-esm-reexport

named-and-default-export-esm-reexport

named-export-esm
undefined + warnings undefined 'named' 'named' true + warnings true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false false
named-and-default-export-getter-esModule 'default' 'default' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } true true
named-and-default-export-inherited

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } 'default' 'named' 'named' true undefined { named, default } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-live { named, default } { named, default } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-non-enumerable { [named], [default] } { [named], [default] } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-default-export-non-enumerable-inherited { [named], [default] } 'default' 'named' 'named' true undefined { [named], [default] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-null-default-export { named, default: null } { named, default: null } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false false
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
null null 'named' 'named' true true { [__esModule], named, default: null } { [__esModule], named, default: null } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } true true
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false false
named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } null 'named' 'named' true undefined { named, default: null } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false false
named-export { named } { named } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false false
named-export-esModule undefined + warnings undefined 'named' 'named' true true { [__esModule], named } { [__esModule], named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } true true
named-export-non-enumerable { [named] } { [named] } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false false
named-export-runtime

single-object-export
{ named } undefined 'named' 'named' true undefined { named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false false
named-export-runtime-esModule undefined undefined 'named' 'named' true true { [__esModule], named } { [__esModule], named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } true true
order { b, a, c } { b, a, c } undefined + warnings undefined true + warnings true [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false false
order-esModule undefined + warnings undefined undefined + warnings undefined true true { [__esModule], b, a, c } { [__esModule], b, a, c } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } true true
order-esm undefined + warnings undefined undefined + warnings undefined true + warnings true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'], [Module] } true true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } 'named' 'named' true + warnings true [Module: null prototype] { [__esModule], default: [G] { default, named }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: [G] { default, named }, named: [G], [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false false
single-empty-string-export '' undefined undefined undefined true undefined '' [Module: null prototype] { [__esModule], default: [G: ''], [Module] } undefined undefined undefined undefined undefined undefined undefined '' false false
single-null-export null undefined type error undefined true undefined null [Module: null prototype] { [__esModule], default: [G: null], [Module] } type error undefined type error type error undefined type error undefined null false false
single-promise-object-export Promise { { named } } undefined undefined undefined true undefined Promise { { named } } { named } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false false
single-promise-object-with-default-export Promise { { named, default } } undefined undefined undefined true undefined Promise { { named, default } } { named, default } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false false
single-promise-string-export Promise { 'single' } undefined undefined undefined true undefined Promise { 'single' } 'single' undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false false
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' undefined undefined undefined true undefined 'single' [Module: null prototype] { [__esModule], default: [G: 'single'], [Module] } undefined undefined undefined undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined + warnings undefined undefined undefined true true { [__esModule], [Module] } { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } undefined undefined undefined undefined undefined true true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } true true
single-string-export-live 'single-outdated' undefined undefined undefined true undefined 'single-outdated' [Module: null prototype] { [__esModule], default: [G: 'single-outdated'], [Module] } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error
tla-esm 'default' 'default' 'named' 'named' true + warnings true { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { [__esModule], default: [G], named: [G], [Module] }, [Symbol(webpack exports)]: { [__esModule], default: [G], named: [G], [Module] }, [Symbol(webpack queues)]: { [Function (anonymous)] [length]: 1, [name]: '' } } false true
tla-esm-esm-reexport undefined + warnings undefined 'named' 'named' true + warnings true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { [__esModule], named: [G], [Module] }, [Symbol(webpack exports)]: { [__esModule], named: [G], [Module] }, [Symbol(webpack queues)]: { [Function (anonymous)] [length]: 1, [name]: '' } } false true

Rollup

Version: @rollup/plugin-commonjs@24.1.0 rollup@3.21.3 node@20.0.0

rollup import x

import { default as x }
import * as x; x.default import * as x; ident(x).default import { named as x } import * as x; x.named import * as x; ident(x).named import { __esModule as x } import * as x; x.__esModule import * as x; ident(x).__esModule import * as x import() x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } { default } { default } undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: { default } } [Object: null prototype] { default: { default } } 'default' 'default' undefined undefined undefined undefined undefined { default } false true
default-export-esModule 'default' 'default' 'default' undefined undefined undefined true true undefined [Object: null prototype] { default } [Object: null prototype] { default } 'default' 'default' undefined undefined undefined true true { [__esModule], default } false true
default-export-esModule-esm-reexport compilation error undefined + warnings undefined undefined undefined undefined true true undefined [Object: null prototype] {} {} undefined undefined undefined undefined undefined true true { [__esModule] } false true
default-export-esm 'default' 'default' 'default' compilation error undefined + warnings undefined compilation error undefined + warnings undefined [Object: null prototype] { default } { default } 'default' 'default' undefined undefined undefined true true { [__esModule], default: [G] } false true
named-and-default-export { named, default } { named, default } { named, default } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named, default }, named } [Object: null prototype] { default: { named, default }, named } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-babel-getter 'default' 'default' 'default' 'named' 'named' 'named' true true undefined [Object: null prototype] { default, named: [G] } [Object: null prototype] { default, named: [G] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } false true
named-and-default-export-duplicate

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } { named, default } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named, default }, named: [G] } [Object: null prototype] { default: { named, default }, named: [G] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-esModule 'default' 'default' 'default' 'named' 'named' 'named' true true undefined [Object: null prototype] { default, named } [Object: null prototype] { default, named } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-default-export-esModule-duplicate 'default' 'default' 'default' 'named' 'named' 'named' true true undefined [Object: null prototype] { default: [G], named: [G] } [Object: null prototype] { default: [G], named: [G] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-default-export-esModule-esm-reexport compilation error undefined + warnings undefined 'named' 'named' 'named' true true undefined [Object: null prototype] { named } { named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
'default' 'default' 'default' 'named' 'named' 'named' true true undefined [Object: null prototype] { default, named: [G] } [Object: null prototype] { default, named: [G] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } false true
named-and-default-export-esm 'default' 'default' 'default' 'named' 'named' 'named' compilation error undefined + warnings undefined [Object: null prototype] { default, named } { default, named } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], default: [G], named: [G] } false true
named-and-default-export-esm-esm-reexport

named-export-esm
compilation error undefined + warnings undefined 'named' 'named' 'named' compilation error undefined + warnings undefined [Object: null prototype] { named } { named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-esm-reexport compilation error undefined + warnings undefined 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { named } { named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } 'named' 'named' undefined undefined undefined undefined [Object: null prototype] { default: { [named]: [G], [default]: [G] } } [Object: null prototype] { default: { [named]: [G], [default]: [G] } } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false true
named-and-default-export-getter-esModule 'default' 'default' 'default' 'named' 'named' undefined true true undefined [Object: null prototype] { default } [Object: null prototype] { default } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } false true
named-and-default-export-inherited { named, default } { named, default } { named, default } 'named' 'named' undefined undefined undefined undefined [Object: null prototype] { default: { named, default } } [Object: null prototype] { default: { named, default } } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-live { named, default } { named, default } { named, default } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named, default }, named: [G] } [Object: null prototype] { default: { named, default }, named: [G] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false true
named-and-default-export-non-enumerable

named-and-default-export-non-enumerable-inherited
{ [named], [default] } { [named], [default] } { [named], [default] } 'named' 'named' undefined undefined undefined undefined [Object: null prototype] { default: { [named], [default] } } [Object: null prototype] { default: { [named], [default] } } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false true
named-and-null-default-export { named, default: null } { named, default: null } { named, default: null } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named, default: null }, named } [Object: null prototype] { default: { named, default: null }, named } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-esModule null null null 'named' 'named' 'named' true true undefined [Object: null prototype] { default: null, named } [Object: null prototype] { default: null, named } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } 'named' 'named' undefined undefined undefined undefined [Object: null prototype] { default: { [named], [default]: null } } [Object: null prototype] { default: { [named], [default]: null } } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false true
named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } { named, default: null } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named, default: null }, named: [G] } [Object: null prototype] { default: { named, default: null }, named: [G] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false true
named-and-null-default-export-runtime-esModule null null null 'named' 'named' 'named' true true undefined [Object: null prototype] { default: null, named: [G] } [Object: null prototype] { default: null, named: [G] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } false true
named-export { named } { named } { named } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named }, named } [Object: null prototype] { default: { named }, named } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-esModule { [__esModule], named } { [__esModule], named } { [__esModule], named } 'named' 'named' 'named' true true undefined [Object: null prototype] { default: { [__esModule], named }, named } [Object: null prototype] { default: { [__esModule], named }, named } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
named-export-non-enumerable { [named] } { [named] } { [named] } 'named' 'named' undefined undefined undefined undefined [Object: null prototype] { default: { [named] } } [Object: null prototype] { default: { [named] } } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false true
named-export-runtime

single-object-export
{ named } { named } { named } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { named }, named: [G] } [Object: null prototype] { default: { named }, named: [G] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false true
named-export-runtime-esModule { [__esModule], named } { [__esModule], named } { [__esModule], named } 'named' 'named' 'named' true true undefined [Object: null prototype] { default: { [__esModule], named }, named: [G] } [Object: null prototype] { default: { [__esModule], named }, named: [G] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } false true
order { b, a, c } { b, a, c } { b, a, c } undefined undefined undefined undefined undefined undefined [Object: null prototype] { a, b, c, default: { b, a, c } } [Object: null prototype] { a, b, c, default: { b, a, c } } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false true
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } { [__esModule], b, a, c } undefined undefined undefined true true undefined [Object: null prototype] { a, b, c, default: { [__esModule], b, a, c } } [Object: null prototype] { a, b, c, default: { [__esModule], b, a, c } } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } false true
order-esm compilation error undefined + warnings undefined compilation error undefined + warnings undefined compilation error undefined + warnings undefined [Object: null prototype] { a, b, c } { a, b, c } undefined undefined undefined undefined undefined true true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'] } false true
require-circular

require-circular-self
{ default, named } + warnings { default, named } + warnings { default, named } + warnings 'named' + warnings 'named' + warnings 'named' + warnings undefined + warnings undefined + warnings undefined + warnings [Object: null prototype] { default: { default, named }, named: [G] } + warnings [Object: null prototype] { default: { default, named }, named: [G] } + warnings 'default' + warnings 'default' + warnings 'named' + warnings 'named' + warnings 'named' + warnings undefined + warnings undefined + warnings { default, named } + warnings false + warnings true + warnings
require-conditional-execution { default, named } { default, named } { default, named } 'named' 'named' 'named' undefined undefined undefined [Object: null prototype] { default: { default, named }, named: [G] } [Object: null prototype] { default: { default, named }, named: [G] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false true
single-empty-string-export '' '' '' undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: '' } [Object: null prototype] { default: '' } undefined undefined undefined undefined undefined undefined undefined '' false true
single-null-export null null null type error type error undefined type error type error undefined [Object: null prototype] { default: null } [Object: null prototype] { default: null } type error undefined type error type error undefined type error undefined null false true
single-promise-object-export Promise { { named } } Promise { { named } } Promise { { named } } undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: Promise { { named } } } [Object: null prototype] { default: Promise { { named } } } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false true
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } Promise { { named, default } } undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: Promise { { named, default } } } [Object: null prototype] { default: Promise { { named, default } } } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false true
single-promise-string-export Promise { 'single' } Promise { 'single' } Promise { 'single' } undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: Promise { 'single' } } [Object: null prototype] { default: Promise { 'single' } } undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false true
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' 'single' undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: 'single' } [Object: null prototype] { default: 'single' } undefined undefined undefined undefined undefined undefined undefined 'single' false true
single-string-export-esm-reexport compilation error undefined + warnings undefined undefined undefined undefined undefined undefined undefined [Object: null prototype] {} {} undefined undefined undefined undefined undefined true true { [__esModule] } false true
single-string-export-live 'single-outdated' 'single-outdated' 'single-outdated' undefined undefined undefined undefined undefined undefined [Object: null prototype] { default: 'single-outdated' } [Object: null prototype] { default: 'single-outdated' } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false true
tla-esModule

tla-esModule-esm-reexport

tla-esm

tla-esm-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error

esbuild

Version: esbuild@0.17.18 node@20.0.0

esbuild import x

import { default as x }
import * as x; x.default

import * as x; ident(x).default
import { named as x } import * as x; x.named

import * as x; ident(x).named

x = require(); ident(x).named
import { __esModule as x } import * as x; x.__esModule

import * as x; ident(x).__esModule
import * as x import() x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } { default } undefined undefined undefined undefined { default: { default } } { default: { default } } 'default' 'default' undefined undefined undefined undefined { default } false false
default-export-esModule { [__esModule], default } { [__esModule], default } undefined undefined true true { default: { [__esModule], default }, [__esModule]: [G: true] } { default: { [__esModule], default }, [__esModule]: [G: true] } 'default' 'default' undefined undefined true true { [__esModule], default } false false
default-export-esModule-esm-reexport undefined undefined undefined undefined true true { [__esModule]: [G: true] } { [__esModule]: [G: true] } undefined undefined undefined undefined true true { [__esModule] } false true
default-export-esm 'default' 'default' compilation error undefined compilation error undefined { default: [G] } { default: [G] } 'default' 'default' undefined undefined true true { [__esModule], default: [G] } false true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } 'named' 'named' undefined undefined { default: { named, default }, named: [G] } { default: { named, default }, named: [G] } 'default' 'default' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-babel-getter { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'named' 'named' true true { default: { [__esModule], named: [G], default: [G] }, [__esModule]: [G: true], named: [G] } { default: { [__esModule], named: [G], default: [G] }, [__esModule]: [G: true], named: [G] } 'default' 'default' 'named' 'named' true true { [__esModule], named: [G], default: [G] } false false
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
{ [__esModule], named, default } { [__esModule], named, default } 'named' 'named' true true { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } 'default' 'default' 'named' 'named' true true { [__esModule], named, default } false false
named-and-default-export-esModule-esm-reexport undefined undefined 'named' 'named' true true { [__esModule]: [G: true], named: [G] } { [__esModule]: [G: true], named: [G] } undefined undefined 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-esm 'default' 'default' 'named' 'named' compilation error undefined { default: [G], named: [G] } { default: [G], named: [G] } 'default' 'default' 'named' 'named' true true { [__esModule], default: [G], named: [G] } false true
named-and-default-export-esm-esm-reexport

named-export-esm
compilation error undefined 'named' 'named' compilation error undefined { named: [G] } { named: [G] } undefined undefined 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-esm-reexport undefined undefined 'named' 'named' undefined undefined { named: [G] } { named: [G] } undefined undefined 'named' 'named' true true { [__esModule], named: [G] } false true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } 'named' 'named' undefined undefined { default: { [named]: [G], [default]: [G] }, [named]: [G] } { default: { [named]: [G], [default]: [G] }, [named]: [G] } 'default' 'default' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false false
named-and-default-export-getter-esModule { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'named' 'named' true true { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [__esModule]: [G: true], [named]: [G] } { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [__esModule]: [G: true], [named]: [G] } 'default' 'default' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } false false
named-and-default-export-inherited { named, default } { named, default } 'named' 'named' undefined undefined { default: { named, default }, named } { default: { named, default }, named } 'default' 'default' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-live { named, default } { named, default } 'named' 'named' undefined undefined { default: { named, default }, named: [G] } { default: { named, default }, named: [G] } 'default' 'default' 'named-outdated' 'named' undefined undefined { named, default } false false
named-and-default-export-non-enumerable { [named], [default] } { [named], [default] } 'named' 'named' undefined undefined { default: { [named], [default] }, [named]: [G] } { default: { [named], [default] }, [named]: [G] } 'default' 'default' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-default-export-non-enumerable-inherited { [named], [default] } { [named], [default] } 'named' 'named' undefined undefined { default: { [named], [default] }, [named] } { default: { [named], [default] }, [named] } 'default' 'default' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-null-default-export

named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } 'named' 'named' undefined undefined { default: { named, default: null }, named: [G] } { default: { named, default: null }, named: [G] } null null 'named' 'named' undefined undefined { named, default: null } false false
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
{ [__esModule], named, default: null } { [__esModule], named, default: null } 'named' 'named' true true { default: { [__esModule], named, default: null }, [__esModule]: [G: true], named: [G] } { default: { [__esModule], named, default: null }, [__esModule]: [G: true], named: [G] } null null 'named' 'named' true true { [__esModule], named, default: null } false false
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } 'named' 'named' undefined undefined { default: { [named], [default]: null }, [named]: [G] } { default: { [named], [default]: null }, [named]: [G] } null null 'named' 'named' undefined undefined { [named], [default]: null } false false
named-export

named-export-runtime

single-object-export
{ named } { named } 'named' 'named' undefined undefined { default: { named }, named: [G] } { default: { named }, named: [G] } undefined undefined 'named' 'named' undefined undefined { named } false false
named-export-esModule

named-export-runtime-esModule
{ [__esModule], named } { [__esModule], named } 'named' 'named' true true { default: { [__esModule], named }, [__esModule]: [G: true], named: [G] } { default: { [__esModule], named }, [__esModule]: [G: true], named: [G] } undefined undefined 'named' 'named' true true { [__esModule], named } false false
named-export-non-enumerable { [named] } { [named] } 'named' 'named' undefined undefined { default: { [named] }, [named]: [G] } { default: { [named] }, [named]: [G] } undefined undefined 'named' 'named' undefined undefined { [named] } false false
order { b, a, c } { b, a, c } undefined undefined undefined undefined { default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } { default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } undefined undefined undefined undefined undefined undefined { b, a, c } false false
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } undefined undefined true true { default: { [__esModule], b, a, c }, [__esModule]: [G: true], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } { default: { [__esModule], b, a, c }, [__esModule]: [G: true], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } undefined undefined undefined undefined true true { [__esModule], b, a, c } false false
order-esm compilation error undefined compilation error undefined compilation error undefined { a: [G: 'a'], b: [G: 'b'], c: [G: 'c'] } { a: [G: 'a'], b: [G: 'b'], c: [G: 'c'] } undefined undefined undefined undefined true true { [__esModule], a: [G: 'a'], b: [G: 'b'], c: [G: 'c'] } false true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } 'named' 'named' undefined undefined { default: { default, named }, named: [G] } { default: { default, named }, named: [G] } 'default' 'default' 'named' 'named' undefined undefined { default, named } false false
single-empty-string-export '' '' undefined undefined undefined undefined String { default: '' } String { default: '' } undefined undefined undefined undefined undefined undefined '' false false
single-null-export null null undefined undefined undefined undefined { default: null } { default: null } type error undefined type error type error type error undefined null false false
single-promise-object-export Promise { { named } } Promise { { named } } undefined undefined undefined undefined Promise { default: Promise { { named } } } type error undefined undefined undefined undefined undefined undefined Promise { { named } } type error type error
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } undefined undefined undefined undefined Promise { default: Promise { { named, default } } } type error undefined undefined undefined undefined undefined undefined Promise { { named, default } } type error type error
single-promise-string-export Promise { 'single' } Promise { 'single' } undefined undefined undefined undefined Promise { default: Promise { 'single' } } type error undefined undefined undefined undefined undefined undefined Promise { 'single' } type error type error
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' undefined undefined undefined undefined String { default: 'single' } String { default: 'single' } undefined undefined undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined undefined undefined undefined undefined undefined {} {} undefined undefined undefined undefined true true { [__esModule] } false true
single-string-export-live 'single-outdated' 'single-outdated' undefined undefined undefined undefined String { default: 'single-outdated' } String { default: 'single-outdated' } undefined undefined undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport

tla-esm

tla-esm-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error

Webpack 4

normal

When not using the .mjs extension.

Version: webpack@4.46.0 node@20.0.0

webpack4 import x

import { default as x }

import * as x; x.default
import * as x; ident(x).default

x = require(); ident(x).default
import { named as x }

import * as x; x.named
import * as x; ident(x).named

x = require(); ident(x).named
import { __esModule as x }

import * as x; x.__esModule
import * as x; ident(x).__esModule

x = require(); ident(x).__esModule
import * as x import() x = require(); x.default { named } = require() x = require(); x.named { __esModule } = require()

x = require(); x.__esModule
x = require() await import() === require()

import * as x; x === await import()
default-export

default-export-runtime
{ default } 'default' undefined undefined undefined undefined { default } [Module: null prototype] { [__esModule], default: { default }, [Module] } 'default' undefined undefined undefined { default } false
default-export-esModule 'default' 'default' undefined undefined true true { [__esModule], default } { [__esModule], default } 'default' undefined undefined true { [__esModule], default } true
default-export-esModule-esm-reexport undefined undefined undefined undefined true true { [__esModule], [Module] } { [__esModule], [Module] } undefined undefined undefined true { [__esModule], [Module] } true
default-export-esm 'default' 'default' undefined + warnings undefined undefined + warnings true { [__esModule], default: [G], [Module] } { [__esModule], default, [Module] } 'default' undefined undefined true { [__esModule], default, [Module] } true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-inherited

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } 'default' 'named' 'named' undefined undefined { named, default } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } 'default' 'named' 'named' undefined { named, default } false
named-and-default-export-babel-getter 'default' 'default' 'named' 'named' true true { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'default' 'named' 'named' true { [__esModule], named: [G], default: [G] } true
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
'default' 'default' 'named' 'named' true true { [__esModule], named, default } { [__esModule], named, default } 'default' 'named' 'named' true { [__esModule], named, default } true
named-and-default-export-esModule-esm-reexport undefined undefined 'named' 'named' true true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined 'named' 'named' true { [__esModule], named: [G], [Module] } true
named-and-default-export-esm 'default' 'default' 'named' 'named' undefined + warnings true { [__esModule], named: [G], default: [G], [Module] } { [__esModule], named: [G], default, [Module] } 'default' 'named' 'named' true { [__esModule], named: [G], default, [Module] } true
named-and-default-export-esm-esm-reexport

named-export-esm
undefined + warnings undefined 'named' 'named' undefined + warnings true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined 'named' 'named' true { [__esModule], named: [G], [Module] } true
named-and-default-export-esm-reexport undefined undefined 'named' 'named' undefined true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined 'named' 'named' true { [__esModule], named: [G], [Module] } true
named-and-default-export-getter { [named]: [G], [default]: [G] } 'default' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] } 'default' 'named' 'named' undefined { [named]: [G], [default]: [G] } false
named-and-default-export-getter-esModule 'default' 'default' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'default' 'named' 'named' true { [__esModule]: [G: true], [named]: [G], [default]: [G] } true
named-and-default-export-live { named, default } 'default' 'named' 'named' undefined undefined { named, default } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } 'default' 'named-outdated' 'named' undefined { named, default } false
named-and-default-export-non-enumerable

named-and-default-export-non-enumerable-inherited
{ [named], [default] } 'default' 'named' 'named' undefined undefined { [named], [default] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] } 'default' 'named' 'named' undefined { [named], [default] } false
named-and-null-default-export

named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } null 'named' 'named' undefined undefined { named, default: null } [Module: null prototype] { [__esModule], default: { named, default: null }, named: [G], [Module] } null 'named' 'named' undefined { named, default: null } false
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
null null 'named' 'named' true true { [__esModule], named, default: null } { [__esModule], named, default: null } null 'named' 'named' true { [__esModule], named, default: null } true
named-and-null-default-export-non-enumerable { [named], [default]: null } null 'named' 'named' undefined undefined { [named], [default]: null } [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] } null 'named' 'named' undefined { [named], [default]: null } false
named-export

named-export-runtime

single-object-export
{ named } undefined 'named' 'named' undefined undefined { named } [Module: null prototype] { [__esModule], default: { named }, named: [G], [Module] } undefined 'named' 'named' undefined { named } false
named-export-esModule

named-export-runtime-esModule
undefined undefined 'named' 'named' true true { [__esModule], named } { [__esModule], named } undefined 'named' 'named' true { [__esModule], named } true
named-export-non-enumerable { [named] } undefined 'named' 'named' undefined undefined { [named] } [Module: null prototype] { [__esModule], default: { [named] }, [Module] } undefined 'named' 'named' undefined { [named] } false
order { b, a, c } undefined undefined undefined undefined undefined { b, a, c } [Module: null prototype] { [__esModule], default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } undefined undefined undefined undefined { b, a, c } false
order-esModule undefined undefined undefined undefined true true { [__esModule], b, a, c } { [__esModule], b, a, c } undefined undefined undefined true { [__esModule], b, a, c } true
order-esm undefined + warnings undefined undefined + warnings undefined undefined + warnings true { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } undefined undefined undefined true { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } true
require-circular

require-circular-self

require-conditional-execution
{ default, named } 'default' 'named' 'named' undefined undefined { default, named } [Module: null prototype] { [__esModule], default: { default, named }, named: [G], [Module] } 'default' 'named' 'named' undefined { default, named } false
single-empty-string-export '' undefined undefined undefined undefined undefined '' [Module: null prototype] { [__esModule], default: '', [Module] } undefined undefined undefined undefined '' false
single-null-export null undefined type error undefined type error undefined null [Module: null prototype] { [__esModule], default: null, [Module] } type error type error type error type error null false
single-promise-object-export Promise { { named } } undefined undefined undefined undefined undefined Promise { { named } } [Module: null prototype] { [__esModule], default: Promise { { named } }, [Module] } undefined undefined undefined undefined Promise { { named } } false
single-promise-object-with-default-export Promise { { named, default } } undefined undefined undefined undefined undefined Promise { { named, default } } [Module: null prototype] { [__esModule], default: Promise { { named, default } }, [Module] } undefined undefined undefined undefined Promise { { named, default } } false
single-promise-string-export Promise { 'single' } undefined undefined undefined undefined undefined Promise { 'single' } [Module: null prototype] { [__esModule], default: Promise { 'single' }, [Module] } undefined undefined undefined undefined Promise { 'single' } false
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' undefined undefined undefined undefined undefined 'single' [Module: null prototype] { [__esModule], default: 'single', [Module] } undefined undefined undefined undefined 'single' false
single-string-export-esm-reexport undefined undefined undefined undefined undefined true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } undefined undefined undefined true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } true
single-string-export-live 'single-outdated' undefined undefined undefined undefined undefined 'single-outdated' [Module: null prototype] { [__esModule], default: 'single-outdated', [Module] } undefined undefined undefined undefined 'single-outdated' false
tla-esModule

tla-esModule-esm-reexport

tla-esm

tla-esm-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error

mjs extension

When using the .mjs extension.

Version: webpack@4.46.0 node@20.0.0

webpack4-mjs import x

import { default as x }

import * as x; x.default
import * as x; ident(x).default import { named as x }

import * as x; x.named
import * as x; ident(x).named import { __esModule as x }

import * as x; x.__esModule
import * as x; ident(x).__esModule import * as x import() x = require(); x.default x = require(); ident(x).default { named } = require() x = require(); x.named x = require(); ident(x).named { __esModule } = require()

x = require(); x.__esModule
x = require(); ident(x).__esModule x = require() await import() === require() import * as x; x === await import()
default-export

default-export-runtime
{ default } { default } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { default }, [Module] } [Module: null prototype] { [__esModule], default: { default }, [Module] } 'default' 'default' undefined undefined undefined undefined undefined { default } false false
default-export-esModule { [__esModule], default } { [__esModule], default } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], default }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], default }, [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default } true false
default-export-esModule-esm-reexport undefined undefined undefined undefined true true { [__esModule], [Module] } { [__esModule], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], [Module] } true true
default-export-esm 'default' 'default' undefined + errors undefined undefined + errors true { [__esModule], default: [G], [Module] } { [__esModule], default, [Module] } 'default' 'default' undefined undefined undefined true true { [__esModule], default, [Module] } true true
named-and-default-export

named-and-default-export-duplicate

named-and-default-export-inherited

named-and-default-export-reexport

named-and-default-export-runtime

single-object-with-default-export

single-object-with-default-export-duplicate
{ named, default } { named, default } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-babel-getter { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], named: [G], default: [G] }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], named: [G], default: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default: [G] } true false
named-and-default-export-esModule

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-reexport

named-and-default-export-runtime-esModule
{ [__esModule], named, default } { [__esModule], named, default } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named, default } true false
named-and-default-export-esModule-esm-reexport undefined undefined 'named' 'named' true true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-esm 'default' 'default' 'named' 'named' undefined + errors true { [__esModule], named: [G], default: [G], [Module] } { [__esModule], named: [G], default, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule], named: [G], default, [Module] } true true
named-and-default-export-esm-esm-reexport

named-export-esm
undefined + errors undefined 'named' 'named' undefined + errors true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-esm-reexport undefined undefined 'named' 'named' undefined true { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named: [G], [Module] } true true
named-and-default-export-getter { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named]: [G], [default]: [G] } false false
named-and-default-export-getter-esModule { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 'default' 'default' 'named' 'named' 'named' true true { [__esModule]: [G: true], [named]: [G], [default]: [G] } true false
named-and-default-export-live { named, default } { named, default } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] } 'default' 'default' 'named-outdated' 'named' 'named' undefined undefined { named, default } false false
named-and-default-export-non-enumerable

named-and-default-export-non-enumerable-inherited
{ [named], [default] } { [named], [default] } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { [named], [default] } false false
named-and-null-default-export

named-and-null-default-export-runtime

single-object-with-null-default-export
{ named, default: null } { named, default: null } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] } [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { named, default: null } false false
named-and-null-default-export-esModule

named-and-null-default-export-runtime-esModule
{ [__esModule], named, default: null } { [__esModule], named, default: null } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], named, default: null }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], named, default: null }, [Module] } null null 'named' 'named' 'named' true true { [__esModule], named, default: null } true false
named-and-null-default-export-non-enumerable { [named], [default]: null } { [named], [default]: null } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] } null null 'named' 'named' 'named' undefined undefined { [named], [default]: null } false false
named-export

named-export-runtime

single-object-export
{ named } { named } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { named }, [Module] } [Module: null prototype] { [__esModule], default: { named }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { named } false false
named-export-esModule

named-export-runtime-esModule
{ [__esModule], named } { [__esModule], named } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], named }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], named }, [Module] } undefined undefined 'named' 'named' 'named' true true { [__esModule], named } true false
named-export-non-enumerable { [named] } { [named] } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [named] }, [Module] } [Module: null prototype] { [__esModule], default: { [named] }, [Module] } undefined undefined 'named' 'named' 'named' undefined undefined { [named] } false false
order { b, a, c } { b, a, c } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { b, a, c }, [Module] } [Module: null prototype] { [__esModule], default: { b, a, c }, [Module] } undefined undefined undefined undefined undefined undefined undefined { b, a, c } false false
order-esModule { [__esModule], b, a, c } { [__esModule], b, a, c } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { [__esModule], b, a, c }, [Module] } [Module: null prototype] { [__esModule], default: { [__esModule], b, a, c }, [Module] } undefined undefined undefined undefined undefined true true { [__esModule], b, a, c } true false
order-esm undefined + errors undefined undefined + errors undefined undefined + errors true { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } undefined undefined undefined undefined undefined true true { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } true true
require-circular

require-circular-self

require-conditional-execution
{ default, named } { default, named } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: { default, named }, [Module] } [Module: null prototype] { [__esModule], default: { default, named }, [Module] } 'default' 'default' 'named' 'named' 'named' undefined undefined { default, named } false false
single-empty-string-export '' '' undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: '', [Module] } [Module: null prototype] { [__esModule], default: '', [Module] } undefined undefined undefined undefined undefined undefined undefined '' false false
single-null-export null null undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: null, [Module] } [Module: null prototype] { [__esModule], default: null, [Module] } type error undefined type error type error undefined type error undefined null false false
single-promise-object-export Promise { { named } } Promise { { named } } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: Promise { { named } }, [Module] } [Module: null prototype] { [__esModule], default: Promise { { named } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named } } false false
single-promise-object-with-default-export Promise { { named, default } } Promise { { named, default } } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: Promise { { named, default } }, [Module] } [Module: null prototype] { [__esModule], default: Promise { { named, default } }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { { named, default } } false false
single-promise-string-export Promise { 'single' } Promise { 'single' } undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: Promise { 'single' }, [Module] } [Module: null prototype] { [__esModule], default: Promise { 'single' }, [Module] } undefined undefined undefined undefined undefined undefined undefined Promise { 'single' } false false
single-string-export

single-string-export-defined

single-string-export-duplicate

single-string-export-getter

single-string-export-reexport
'single' 'single' undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: 'single', [Module] } [Module: null prototype] { [__esModule], default: 'single', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single' false false
single-string-export-esm-reexport undefined undefined undefined undefined undefined true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } undefined undefined undefined undefined undefined true true { '0': [G: 's'], '1': [G: 'i'], '2': [G: 'n'], '3': [G: 'g'], '4': [G: 'l'], '5': [G: 'e'], [__esModule], [Module] } true true
single-string-export-live 'single-outdated' 'single-outdated' undefined + errors undefined undefined + errors true [Module: null prototype] { [__esModule], default: 'single-outdated', [Module] } [Module: null prototype] { [__esModule], default: 'single-outdated', [Module] } undefined undefined undefined undefined undefined undefined undefined 'single-outdated' false false
tla-esModule

tla-esModule-esm-reexport

tla-esm

tla-esm-esm-reexport
compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error compilation error

Results by test case

default-export

default-export babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ default } { default } { default } { default } { default } { default } { default } { default }
import * as x; ident(x).default { default } { default } { default } { default } { default } { default } 'default' 💎 { default }
import { named as x } undefined undefined syntax error 💎 undefined undefined + errors 💎 undefined + warnings 💎 undefined undefined + errors 💎
import * as x; x.named undefined undefined undefined undefined undefined + errors 💎 undefined + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).named

{ named } = require()

x = require(); x.named

x = require(); ident(x).named

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { default: { default } } { default: { default } } [Module: null prototype] { default: { default }, [Module] } [Object: null prototype] { default: { default } } 🟡 [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } { default } 🟡 [Module: null prototype] { [__esModule], default: { default }, [Module] } 🟡
import() { default: { default } } { default: { default } } [Module: null prototype] { default: { default }, [Module] } [Object: null prototype] { default: { default } } 🟡 [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: { default }, [Module] } [Module: null prototype] { [__esModule], default: { default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

default-export-esModule

default-export-esModule babel

babel-js

webpack4
esbuild node

node-lts
rollup webpack webpack-js webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], default } { [__esModule], default } 'default' { [__esModule], default } 'default' { [__esModule], default }
import { named as x } undefined undefined syntax error 💎 undefined undefined + errors 💎 undefined + warnings 💎 undefined + errors 💎
import * as x; x.named undefined undefined undefined undefined undefined + errors 💎 undefined + warnings 💎 undefined + errors 💎
import * as x; ident(x).named

{ named } = require()

x = require(); x.named

x = require(); ident(x).named
undefined undefined undefined undefined undefined undefined undefined
import { __esModule as x }

import * as x; x.__esModule
true true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true true
import * as x

import()
{ [__esModule], default } { default: { [__esModule], default }, [__esModule]: [G: true] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], default }, [Module] } 🟡 [Object: null prototype] { default } 💎 [Module: null prototype] { [__esModule], default: [G] { [__esModule], default }, [Module] } 💎 { [__esModule], default } [Module: null prototype] { [__esModule], default: { [__esModule], default }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true true
x = require() { [__esModule], default } { [__esModule], default } { [__esModule], default } { [__esModule], default } { [__esModule], default } { [__esModule], default } { [__esModule], default }
await import() === require() true false 🟡 false 🟡 false 🟡 true true true
import * as x; x === await import() true false 💎 true true false 💎 true false 💎

default-export-esModule-esm-reexport

default-export-esModule-esm-reexport babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4

webpack4-mjs
import x

import { default as x }
undefined undefined syntax error 💎 compilation error 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; x.default undefined undefined undefined undefined + warnings 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; ident(x).default

import * as x; ident(x).named
undefined undefined undefined undefined undefined undefined undefined
import { named as x } undefined undefined syntax error 💎 undefined undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; x.named undefined undefined undefined undefined undefined + errors 💎 undefined + warnings 💎 undefined
import { __esModule as x }

import * as x; x.__esModule

import * as x; x === await import()
true true true true true true true
import * as x; ident(x).__esModule true true true undefined 💎 true true true
import * as x { [__esModule] } 🟡 { [__esModule]: [G: true] } 💎 [Module: null prototype] { __esModule, [Module] } 🟡 [Object: null prototype] {} 💎 { [__esModule], [Module] } { [__esModule], [Module] } { [__esModule], [Module] }
import() { [__esModule] } 🟡 { [__esModule]: [G: true] } 💎 [Module: null prototype] { __esModule, [Module] } 🟡 {} 💎 { [__esModule], [Module] } { [__esModule], [Module] } { [__esModule], [Module] }
x = require(); x.default

x = require(); ident(x).default

{ named } = require()

x = require(); x.named

x = require(); ident(x).named
undefined undefined require(esm) not allowed 💎 undefined undefined undefined undefined
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true
x = require() { [__esModule] } { [__esModule] } require(esm) not allowed 🟡 { [__esModule] } { [__esModule], [Module] } { [__esModule], [Module] } { [__esModule], [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true

default-export-esm

default-export-esm babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
import { named as x } undefined compilation error syntax error compilation error undefined + errors undefined + warnings undefined + warnings undefined + errors
import * as x; x.named undefined undefined undefined undefined + warnings 🟡 undefined + errors 💎 undefined + warnings 🟡 undefined + warnings 🟡 undefined + errors 💎
import * as x; ident(x).named undefined undefined undefined undefined undefined undefined undefined undefined
import { __esModule as x } true compilation error syntax error compilation error true + errors true + warnings undefined + warnings undefined + errors
import * as x; x.__esModule true undefined undefined undefined + warnings true + errors 🟡 true + warnings 🟡 undefined + warnings undefined + errors 🟡
import * as x; ident(x).__esModule true undefined 🟡 undefined 🟡 undefined 🟡 true true true true
import * as x { [__esModule], default } 🟡 { default: [G] } 💎 [Module: null prototype] { default, [Module] } 🟡 [Object: null prototype] { default } 💎 { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] }
import() { [__esModule], default } { default: [G] } [Module: null prototype] { default, [Module] } { default } { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } { [__esModule], default, [Module] } { [__esModule], default, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' require(esm) not allowed 💎 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
undefined undefined require(esm) not allowed 💎 undefined undefined undefined undefined undefined
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true true
x = require() { [__esModule], default } { [__esModule], default: [G] } require(esm) not allowed { [__esModule], default: [G] } { [__esModule], default: [G], [Module] } { [__esModule], default: [G], [Module] } { [__esModule], default, [Module] } { [__esModule], default, [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true true
import * as x; x === await import() true true true true true true true true

default-export-runtime

default-export-runtime babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ default } { default } { default } { default } { default } { default } { default } { default }
import * as x; ident(x).default { default } { default } { default } { default } { default } 'default' 💎 'default' 💎 { default }
import { named as x } undefined undefined syntax error 💎 undefined undefined undefined undefined undefined + errors 💎
import * as x; x.named undefined undefined undefined undefined undefined undefined undefined undefined + errors 💎
import * as x; ident(x).named

{ named } = require()

x = require(); x.named

x = require(); ident(x).named

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { default: { default } } { default: { default } } [Module: null prototype] { default: { default }, [Module] } [Object: null prototype] { default: { default } } 🟡 [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } 🟡 { default } { default } [Module: null prototype] { [__esModule], default: { default }, [Module] } 🟡
import() { default: { default } } { default: { default } } [Module: null prototype] { default: { default }, [Module] } [Object: null prototype] { default: { default } } 🟡 [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: [G] { default }, [Module] } [Module: null prototype] { [__esModule], default: { default }, [Module] } [Module: null prototype] { [__esModule], default: { default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export

named-and-default-export babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 { named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-babel-getter

named-and-default-export-babel-getter babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } 'default' { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true
import * as x

import()
{ [__esModule], named: [G], default: [G] } { default: { [__esModule], named: [G], default: [G] }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named: [G], default: [G] }, named, [Module] } 🟡 [Object: null prototype] { default, named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named: [G], default: [G] }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named: [G], default: [G] }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] } { [__esModule], named: [G], default: [G] }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-default-export-duplicate

named-and-default-export-duplicate babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 { named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-esModule

named-and-default-export-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], named, default } { [__esModule], named, default } 'default' { [__esModule], named, default } { [__esModule], named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true
import * as x

import()
{ [__esModule], named, default } { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named, default }, named, [Module] } 🟡 [Object: null prototype] { default, named } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-default-export-esModule-duplicate

named-and-default-export-esModule-duplicate babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], named, default } { [__esModule], named, default } 'default' { [__esModule], named, default } { [__esModule], named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true
import * as x

import()
{ [__esModule], named, default } { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named, default }, named, [Module] } 🟡 [Object: null prototype] { default: [G], named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-default-export-esModule-esm-reexport

named-and-default-export-esModule-esm-reexport babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4

webpack4-mjs
import x

import { default as x }
undefined undefined syntax error 💎 compilation error 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; x.default undefined undefined undefined undefined + warnings 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; ident(x).default undefined undefined undefined undefined undefined undefined undefined
import { named as x }

import * as x; x.named

import * as x; ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named'
import { __esModule as x }

import * as x; x.__esModule

import * as x; x === await import()
true true true true true true true
import * as x; ident(x).__esModule true true true undefined 💎 true true true
import * as x { [__esModule], named: [G] } 🟡 { [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, named, [Module] } 🟡 [Object: null prototype] { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
import() { [__esModule], named: [G] } 🟡 { [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, named, [Module] } 🟡 { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
x = require(); x.default

x = require(); ident(x).default
undefined undefined require(esm) not allowed 💎 undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' require(esm) not allowed 💎 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true
x = require() { [__esModule], named: [G] } { [__esModule], named: [G] } require(esm) not allowed 🟡 { [__esModule], named: [G] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true

named-and-default-export-esModule-reexport

named-and-default-export-esModule-reexport babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], named, default } { [__esModule], named, default } 'default' { [__esModule], named, default } { [__esModule], named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true
import * as x

import()
{ [__esModule], named, default } { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named, default }, named, [Module] } 🟡 [Object: null prototype] { default, named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-default-export-esm

named-and-default-export-esm babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
import { named as x }

import * as x; x.named

import * as x; ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
import { __esModule as x } true compilation error syntax error compilation error true + errors true + warnings undefined + warnings undefined + errors
import * as x; x.__esModule true undefined undefined undefined + warnings true + errors 🟡 true + warnings 🟡 undefined + warnings undefined + errors 🟡
import * as x; ident(x).__esModule true undefined 🟡 undefined 🟡 undefined 🟡 true true true true
import * as x { [__esModule], default, named } { default: [G], named: [G] } [Module: null prototype] { default, named, [Module] } [Object: null prototype] { default, named } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], named: [G], default: [G], [Module] } { [__esModule], named: [G], default: [G], [Module] }
import() { [__esModule], default, named } { default: [G], named: [G] } [Module: null prototype] { default, named, [Module] } { default, named } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], named: [G], default, [Module] } { [__esModule], named: [G], default, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' require(esm) not allowed 💎 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' require(esm) not allowed 💎 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true true
x = require() { [__esModule], default, named } { [__esModule], default: [G], named: [G] } require(esm) not allowed { [__esModule], default: [G], named: [G] } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], default: [G], named: [G], [Module] } { [__esModule], named: [G], default, [Module] } { [__esModule], named: [G], default, [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true true
import * as x; x === await import() true true true true true true true true

named-and-default-export-esm-esm-reexport

named-and-default-export-esm-esm-reexport babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }
runtime error compilation error syntax error compilation error undefined + errors undefined + warnings undefined + warnings undefined + errors
import * as x; x.default runtime error undefined undefined undefined + warnings undefined + errors undefined + warnings undefined + warnings undefined + errors
import * as x; ident(x).default runtime error 💎 undefined undefined undefined undefined undefined undefined undefined
import { named as x }

import * as x; x.named

import * as x; ident(x).named
runtime error 💎 'named' 'named' 'named' 'named' 'named' 'named' 'named'
import { __esModule as x } runtime error compilation error syntax error compilation error true + errors true + warnings undefined + warnings undefined + errors
import * as x; x.__esModule runtime error undefined undefined undefined + warnings true + errors 🟡 true + warnings 🟡 undefined + warnings undefined + errors 🟡
import * as x; ident(x).__esModule runtime error 🟡 undefined undefined undefined true true true true
import * as x runtime error 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 [Object: null prototype] { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
import() runtime error 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
x = require(); x.default

x = require(); ident(x).default
runtime error 💎 undefined require(esm) not allowed 💎 undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
runtime error 💎 'named' require(esm) not allowed 💎 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
runtime error 💎 true require(esm) not allowed 💎 true true true true true
x = require() runtime error 🟡 { [__esModule], named: [G] } 🟡 require(esm) not allowed 🟡 { [__esModule], named: [G] } 🟡 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
await import() === require() runtime error 🟡 false 🟡 require(esm) not allowed 🟡 false 🟡 true true true true
import * as x; x === await import() runtime error 💎 true true true true true true true

named-and-default-export-esm-reexport

named-and-default-export-esm-reexport babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4

webpack4-mjs
import x

import { default as x }
undefined undefined syntax error 💎 compilation error 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; x.default undefined undefined undefined undefined + warnings 💎 undefined + errors 💎 undefined + warnings 💎 undefined
import * as x; ident(x).default undefined undefined undefined undefined undefined undefined undefined
import { named as x }

import * as x; x.named

import * as x; ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named'
import { __esModule as x } true 🟡 undefined syntax error 🟡 undefined true + errors 💎 true + warnings 💎 undefined
import * as x; x.__esModule true 💎 undefined undefined undefined true + errors 💎 true + warnings 💎 undefined
import * as x; ident(x).__esModule true undefined 🟡 undefined 🟡 undefined 🟡 true true true
import * as x { [__esModule], named: [G] } 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 [Object: null prototype] { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
import() { [__esModule], named: [G] } 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
x = require(); x.default

x = require(); ident(x).default
undefined undefined require(esm) not allowed 💎 undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' require(esm) not allowed 💎 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true
x = require() { [__esModule], named: [G] } { [__esModule], named: [G] } require(esm) not allowed 🟡 { [__esModule], named: [G] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true
import * as x; x === await import() true true true true true true true

named-and-default-export-getter

named-and-default-export-getter babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] }
import * as x; ident(x).default { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } { [named]: [G], [default]: [G] } 'default' 💎 { [named]: [G], [default]: [G] }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 'named' undefined 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 'named' 🟡 undefined undefined 'named' 🟡 'named' 🟡 'named' 🟡 undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { default: { [named]: [G], [default]: [G] } } { default: { [named]: [G], [default]: [G] }, [named]: [G] } [Module: null prototype] { default: { [named]: [G], [default]: [G] }, [Module] } [Object: null prototype] { default: { [named]: [G], [default]: [G] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } { [named]: [G], [default]: [G] } [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] }
import() { default: { [named]: [G], [default]: [G] } } { default: { [named]: [G], [default]: [G] }, [named]: [G] } [Module: null prototype] { default: { [named]: [G], [default]: [G] }, [Module] } [Object: null prototype] { default: { [named]: [G], [default]: [G] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] } [Module: null prototype] { [__esModule], default: { [named]: [G], [default]: [G] }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-getter-esModule

named-and-default-export-getter-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } 'default' { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 🟡 undefined 🟡 'named' undefined 🟡
import { __esModule as x } true true syntax error 💎 true true undefined + errors 💎
import * as x; x.__esModule true true undefined 💎 true true undefined + errors 💎
import * as x; ident(x).__esModule true true undefined 💎 undefined 💎 true true
import * as x

import()
{ [__esModule]: [G: true], [named]: [G], [default]: [G] } { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [__esModule]: [G: true], [named]: [G] } 💎 [Module: null prototype] { default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 🟡 [Object: null prototype] { default } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule]: [G: true], [named]: [G], [default]: [G] }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] } { [__esModule]: [G: true], [named]: [G], [default]: [G] }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-default-export-inherited

named-and-default-export-inherited babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 'default' 💎 { named, default }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 'named' undefined 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 'named' 🟡 undefined undefined 'named' 🟡 'named' 🟡 'named' 🟡 undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { default: { named, default } } { default: { named, default }, named } [Module: null prototype] { default: { named, default }, [Module] } [Object: null prototype] { default: { named, default } } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { default: { named, default } } { default: { named, default }, named } [Module: null prototype] { default: { named, default }, [Module] } [Object: null prototype] { default: { named, default } } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-live

named-and-default-export-live babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 { named, default }
import { named as x } 'named' 'named' 'named-outdated' 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named 'named-outdated' 'named' 'named-outdated' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named-outdated' 'named' 'named-outdated' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named: 'named-outdated', default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named: 'named-outdated', [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { named: 'named-outdated', default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named: 'named-outdated', [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require() 'named-outdated' 'named-outdated' 'named-outdated' 'named-outdated' 'named-outdated' 'named-outdated' 'named-outdated' 'named-outdated'
x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-non-enumerable

named-and-default-export-non-enumerable babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] }
import * as x; ident(x).default { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } 'default' 💎 { [named], [default] }
import { named as x } 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 💎 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 🟡 'named' 'named' undefined 🟡 'named' 'named' 'named' undefined 🟡
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { default: { [named], [default] } } { default: { [named], [default] }, [named]: [G] } [Module: null prototype] { default: { [named], [default] }, named, [Module] } [Object: null prototype] { default: { [named], [default] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } { [named], [default] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] }
import() { default: { [named], [default] } } { default: { [named], [default] }, [named]: [G] } [Module: null prototype] { default: { [named], [default] }, named, [Module] } [Object: null prototype] { default: { [named], [default] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-non-enumerable-inherited

named-and-default-export-non-enumerable-inherited babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] }
import * as x; ident(x).default { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } { [named], [default] } 'default' 💎 'default' 💎 { [named], [default] }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 'named' undefined 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 'named' 🟡 undefined undefined 'named' 🟡 'named' 🟡 'named' 🟡 undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { default: { [named], [default] } } { default: { [named], [default] }, [named] } [Module: null prototype] { default: { [named], [default] }, [Module] } [Object: null prototype] { default: { [named], [default] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } { [named], [default] } { [named], [default] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] }
import() { default: { [named], [default] } } { default: { [named], [default] }, [named] } [Module: null prototype] { default: { [named], [default] }, [Module] } [Object: null prototype] { default: { [named], [default] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default] }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-reexport

named-and-default-export-reexport babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 { named, default }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, named, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-runtime

named-and-default-export-runtime babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default } { named, default }
import * as x; ident(x).default { named, default } { named, default } { named, default } { named, default } { named, default } 'default' 💎 'default' 💎 { named, default }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } { named, default } { named, default } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
import() { named, default: { named, default } } { default: { named, default }, named: [G] } [Module: null prototype] { default: { named, default }, [Module] } [Object: null prototype] { default: { named, default }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default }, [Module] } [Module: null prototype] { [__esModule], default: { named, default }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default }, [Module] }
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-default-export-runtime-esModule

named-and-default-export-runtime-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
'default' { [__esModule], named, default } { [__esModule], named, default } 'default' { [__esModule], named, default } { [__esModule], named, default }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' undefined 💎
import { __esModule as x } true true syntax error 💎 true true undefined + errors 💎
import * as x; x.__esModule true true undefined 💎 true true undefined + errors 💎
import * as x; ident(x).__esModule true true undefined 💎 undefined 💎 true true
import * as x

import()
{ [__esModule], named, default } { default: { [__esModule], named, default }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { default: { [__esModule], named, default }, [Module] } 🟡 [Object: null prototype] { default, named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
'default' 'default' 'default' 'default' 'default' 'default'
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default } { [__esModule], named, default }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-null-default-export

named-and-null-default-export babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null }
import * as x; ident(x).default { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } null 💎 { named, default: null }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named, default: { named, default: null } } { default: { named, default: null }, named: [G] } [Module: null prototype] { default: { named, default: null }, named, [Module] } [Object: null prototype] { default: { named, default: null }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } { named, default: null } [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] }
import() { named, default: { named, default: null } } { default: { named, default: null }, named: [G] } [Module: null prototype] { default: { named, default: null }, named, [Module] } [Object: null prototype] { default: { named, default: null }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], default: { named, default: null }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] }
x = require(); x.default

x = require(); ident(x).default
null null null null null null null null
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-null-default-export-esModule

named-and-null-default-export-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
null { [__esModule], named, default: null } { [__esModule], named, default: null } null { [__esModule], named, default: null } { [__esModule], named, default: null }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true
import * as x

import()
{ [__esModule], named, default: null } { default: { [__esModule], named, default: null }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named, default: null }, named, [Module] } 🟡 [Object: null prototype] { default: null, named } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default: null }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default: null }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
null null null null null null
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-and-null-default-export-non-enumerable

named-and-null-default-export-non-enumerable babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null }
import * as x; ident(x).default { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } { [named], [default]: null } null 💎 { [named], [default]: null }
import { named as x } 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 💎 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 🟡 'named' 'named' undefined 🟡 'named' 'named' 'named' undefined 🟡
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { default: { [named], [default]: null } } { default: { [named], [default]: null }, [named]: [G] } [Module: null prototype] { default: { [named], [default]: null }, named, [Module] } [Object: null prototype] { default: { [named], [default]: null } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } { [named], [default]: null } [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] }
import() { default: { [named], [default]: null } } { default: { [named], [default]: null }, [named]: [G] } [Module: null prototype] { default: { [named], [default]: null }, named, [Module] } [Object: null prototype] { default: { [named], [default]: null } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] } [Module: null prototype] { [__esModule], default: { [named], [default]: null }, [Module] }
x = require(); x.default

x = require(); ident(x).default
null null null null null null null null
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-null-default-export-runtime

named-and-null-default-export-runtime babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null }
import * as x; ident(x).default { named, default: null } { named, default: null } { named, default: null } { named, default: null } { named, default: null } null 💎 null 💎 { named, default: null }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { named, default: { named, default: null } } { default: { named, default: null }, named: [G] } [Module: null prototype] { default: { named, default: null }, [Module] } [Object: null prototype] { default: { named, default: null }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } { named, default: null } { named, default: null } [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] }
import() { named, default: { named, default: null } } { default: { named, default: null }, named: [G] } [Module: null prototype] { default: { named, default: null }, [Module] } [Object: null prototype] { default: { named, default: null }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named, default: null }, [Module] } [Module: null prototype] { [__esModule], default: { named, default: null }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named, default: null }, [Module] }
x = require(); x.default

x = require(); ident(x).default
null null null null null null null null
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-and-null-default-export-runtime-esModule

named-and-null-default-export-runtime-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
null { [__esModule], named, default: null } { [__esModule], named, default: null } null { [__esModule], named, default: null } { [__esModule], named, default: null }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' undefined 💎
import { __esModule as x } true true syntax error 💎 true true undefined + errors 💎
import * as x; x.__esModule true true undefined 💎 true true undefined + errors 💎
import * as x; ident(x).__esModule true true undefined 💎 undefined 💎 true true
import * as x

import()
{ [__esModule], named, default: null } { default: { [__esModule], named, default: null }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { default: { [__esModule], named, default: null }, [Module] } 🟡 [Object: null prototype] { default: null, named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named, default: null }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named, default: null }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
null null null null null null
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null } { [__esModule], named, default: null }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

named-export

named-export babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named } { named } { named } { named } { named } { named } { named } { named }
import * as x; ident(x).default { named } { named } { named } { named } { named } { named } undefined 💎 { named }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { named, default: { named } } { default: { named }, named: [G] } [Module: null prototype] { default: { named }, named, [Module] } [Object: null prototype] { default: { named }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } { named } [Module: null prototype] { [__esModule], default: { named }, [Module] }
import() { named, default: { named } } { default: { named }, named: [G] } [Module: null prototype] { default: { named }, named, [Module] } [Object: null prototype] { default: { named }, named } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], default: { named }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named }, [Module] }
x = require(); x.default

x = require(); ident(x).default

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-export-esModule

named-export-esModule babel

babel-js

webpack4
esbuild node

node-lts
rollup webpack webpack-js webpack4-mjs
import x

import { default as x }

import * as x; x.default
undefined 💎 { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } undefined + warnings 💎 { [__esModule], named }
import * as x; ident(x).default undefined 🟡 { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } undefined 🟡 { [__esModule], named }
import { named as x }

import * as x; x.named
'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x }

import * as x; x.__esModule
true true true true true true undefined + errors 💎
import * as x; ident(x).__esModule true true true undefined 💎 true true true
import * as x

import()
{ [__esModule], named } { default: { [__esModule], named }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { __esModule, default: { [__esModule], named }, named, [Module] } 🟡 [Object: null prototype] { default: { [__esModule], named }, named } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named }, [Module] } 💎 { [__esModule], named } [Module: null prototype] { [__esModule], default: { [__esModule], named }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
undefined undefined undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true true
x = require() { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named }
await import() === require() true false 🟡 false 🟡 false 🟡 true true true
import * as x; x === await import() true false 💎 true true false 💎 true false 💎

named-export-esm

named-export-esm babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }
undefined compilation error syntax error compilation error undefined + errors undefined + warnings undefined + warnings undefined + errors
import * as x; x.default undefined undefined undefined undefined + warnings 🟡 undefined + errors 💎 undefined + warnings 🟡 undefined + warnings 🟡 undefined + errors 💎
import * as x; ident(x).default undefined undefined undefined undefined undefined undefined undefined undefined
import { named as x }

import * as x; x.named

import * as x; ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
import { __esModule as x } true compilation error syntax error compilation error true + errors true + warnings undefined + warnings undefined + errors
import * as x; x.__esModule true undefined undefined undefined + warnings true + errors 🟡 true + warnings 🟡 undefined + warnings undefined + errors 🟡
import * as x; ident(x).__esModule true undefined 🟡 undefined 🟡 undefined 🟡 true true true true
import * as x { [__esModule], named } 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 [Object: null prototype] { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
import() { [__esModule], named } 🟡 { named: [G] } 💎 [Module: null prototype] { named, [Module] } 🟡 { named } 💎 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
x = require(); x.default

x = require(); ident(x).default
undefined undefined require(esm) not allowed 💎 undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' require(esm) not allowed 💎 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true require(esm) not allowed 💎 true true true true true
x = require() { [__esModule], named } 🟡 { [__esModule], named: [G] } 🟡 require(esm) not allowed 🟡 { [__esModule], named: [G] } 🟡 { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] } { [__esModule], named: [G], [Module] }
await import() === require() true false 💎 require(esm) not allowed 💎 false 💎 true true true true
import * as x; x === await import() true true true true true true true true

named-export-non-enumerable

named-export-non-enumerable babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ [named] } { [named] } { [named] } { [named] } { [named] } { [named] } { [named] } { [named] }
import * as x; ident(x).default { [named] } { [named] } { [named] } { [named] } { [named] } { [named] } undefined 💎 { [named] }
import { named as x } 'named' 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named undefined 💎 'named' 'named' 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named undefined 🟡 'named' 'named' undefined 🟡 'named' 'named' 'named' undefined 🟡
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { default: { [named] } } { default: { [named] }, [named]: [G] } [Module: null prototype] { default: { [named] }, named, [Module] } [Object: null prototype] { default: { [named] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } { [named] } [Module: null prototype] { [__esModule], default: { [named] }, [Module] }
import() { default: { [named] } } { default: { [named] }, [named]: [G] } [Module: null prototype] { default: { [named] }, named, [Module] } [Object: null prototype] { default: { [named] } } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { [named] }, [Module] } [Module: null prototype] { [__esModule], default: { [named] }, [Module] } [Module: null prototype] { [__esModule], default: { [named] }, [Module] }
x = require(); x.default

x = require(); ident(x).default

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-export-runtime

named-export-runtime babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ named } { named } { named } { named } { named } { named } { named } { named }
import * as x; ident(x).default { named } { named } { named } { named } { named } undefined 💎 undefined 💎 { named }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' 'named' 'named' undefined 💎
import { __esModule as x } undefined undefined syntax error 💎 undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true 💎 true 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 undefined undefined true 💎
import * as x { named, default: { named } } { default: { named }, named: [G] } [Module: null prototype] { default: { named }, [Module] } [Object: null prototype] { default: { named }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } { named } { named } [Module: null prototype] { [__esModule], default: { named }, [Module] }
import() { named, default: { named } } { default: { named }, named: [G] } [Module: null prototype] { default: { named }, [Module] } [Object: null prototype] { default: { named }, named: [G] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], named: [G], default: [G] { named }, [Module] } [Module: null prototype] { [__esModule], default: { named }, named: [G], [Module] } [Module: null prototype] { [__esModule], default: { named }, [Module] }
x = require(); x.default

x = require(); ident(x).default

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named' 'named' 'named'
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

named-export-runtime-esModule

named-export-runtime-esModule babel

babel-js

webpack-js

webpack4
esbuild node

node-lts
rollup webpack webpack4-mjs
import x

import { default as x }

import * as x; x.default

import * as x; ident(x).default
undefined 🟡 { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named }
import { named as x } 'named' 'named' syntax error 💎 'named' 'named' undefined + errors 💎
import * as x; x.named 'named' 'named' undefined 💎 'named' 'named' undefined + errors 💎
import * as x; ident(x).named 'named' 'named' undefined 💎 'named' 'named' undefined 💎
import { __esModule as x } true true syntax error 💎 true true undefined + errors 💎
import * as x; x.__esModule true true undefined 💎 true true undefined + errors 💎
import * as x; ident(x).__esModule true true undefined 💎 undefined 💎 true true
import * as x

import()
{ [__esModule], named } { default: { [__esModule], named }, [__esModule]: [G: true], named: [G] } 💎 [Module: null prototype] { default: { [__esModule], named }, [Module] } 🟡 [Object: null prototype] { default: { [__esModule], named }, named: [G] } 💎 [Module: null prototype] { [__esModule], named: [G], default: [G] { [__esModule], named }, [Module] } 💎 [Module: null prototype] { [__esModule], default: { [__esModule], named }, [Module] } 💎
x = require(); x.default

x = require(); ident(x).default
undefined undefined undefined undefined undefined undefined
{ named } = require()

x = require(); x.named

x = require(); ident(x).named
'named' 'named' 'named' 'named' 'named' 'named'
{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
true true true true true true
x = require() { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named } { [__esModule], named }
await import() === require() true false 🟡 false 🟡 false 🟡 true true
import * as x; x === await import() true false 💎 true true false 💎 false 💎

order

order babel

babel-js
esbuild node

node-lts
rollup webpack webpack-js webpack4 webpack4-mjs
import x

import { default as x }

import * as x; x.default

x = require()
{ b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c }
import * as x; ident(x).default { b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c } { b, a, c } undefined 💎 { b, a, c }
import { named as x } undefined undefined syntax error 💎 undefined undefined + errors 💎 undefined + warnings 💎 undefined undefined + errors 💎
import * as x; x.named undefined undefined undefined undefined undefined + errors 💎 undefined + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).named

x = require(); x.default

x = require(); ident(x).default

{ named } = require()

x = require(); x.named

x = require(); ident(x).named

{ __esModule } = require()

x = require(); x.__esModule

x = require(); ident(x).__esModule
undefined undefined undefined undefined undefined undefined undefined undefined
import { __esModule as x } undefined undefined syntax error 💎 undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; x.__esModule undefined undefined undefined undefined true + errors 💎 true + warnings 💎 undefined undefined + errors 💎
import * as x; ident(x).__esModule undefined undefined undefined undefined true 💎 true 💎 undefined true 💎
import * as x { b, a, c, default: { b, a, c } } { default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } [Module: null prototype] { a, b, c, default: { b, a, c }, [Module] } [Object: null prototype] { a, b, c, default: { b, a, c } } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } { b, a, c } [Module: null prototype] { [__esModule], default: { b, a, c }, [Module] }
import() { b, a, c, default: { b, a, c } } { default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'] } [Module: null prototype] { a, b, c, default: { b, a, c }, [Module] } [Object: null prototype] { a, b, c, default: { b, a, c } } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } [Module: null prototype] { [__esModule], b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], default: [G] { b, a, c }, [Module] } [Module: null prototype] { [__esModule], default: { b, a, c }, b: [G: 'b'], a: [G: 'a'], c: [G: 'c'], [Module] } [Module: null prototype] { [__esModule], default: { b, a, c }, [Module] }
await import() === require() false false false false false false false false
import * as x; x === await import() true false true true false false false false

order-esModule

<
order-esModule babel

babel-js

webpack4
esbuild node

node-lts
rollup webpack webpack-js webpack4-mjs
import x

import { default as x }

import * as x; x.default
undefined 💎 { [__esModule], b, a, c } { [__esModule], b, a, c } { [__esModule], b, a, c } { [__esModule], b, a, c } undefined + warnings 💎 { [__esModule], b, a, c }
import * as x; ident(x).default undefined 🟡 { [__esModule], b, a, c } { [__esModule], b, a, c } { [__esModule], b, a, c } { [__esModule], b, a, c } undefined 🟡 { [__esModule], b, a, c }
import { named as x } undefined undefined syntax error 💎 undefined undefined + errors 💎