nought: { input: { import "foo"; } expect_exact: 'import"foo";' } default_only: { input: { import foo from "bar"; } expect_exact: 'import foo from"bar";' } all_only: { input: { import * as foo from "bar"; } expect_exact: 'import*as foo from"bar";' } keys_only: { input: { import { as as foo, bar, delete as baz } from "moo"; } expect_exact: 'import{as as foo,bar,delete as baz}from"moo";' } default_all: { input: { import foo, * as bar from "baz"; } expect_exact: 'import foo,*as bar from"baz";' } default_keys: { input: { import foo, { bar } from "baz"; } expect_exact: 'import foo,{bar}from"baz";' } dynamic: { input: { (async a => await import(a))("foo").then(bar); } expect_exact: '(async a=>await import(a))("foo").then(bar);' } dynamic_nought: { input: { import(foo); } expect_exact: "import(foo);" } import_meta_1: { input: { console.log(import.meta, import.meta.url); } expect_exact: "console.log(import.meta,import.meta.url);" } import_meta_2: { input: { import.meta.url.split("/").forEach(function(part, index) { console.log(index, part); }); } expect_exact: 'import.meta.url.split("/").forEach(function(part,index){console.log(index,part)});' } same_quotes: { beautify = { beautify: true, quote_style: 3, } input: { import 'foo'; import "bar"; } expect_exact: [ "import 'foo';", "", 'import "bar";', ] } drop_unused: { options = { imports: true, toplevel: true, unused: true, } input: { import a, * as b from "foo"; import { c } from "bar"; import { d, _ as e } from "baz"; console.log(d); } expect: { import "foo"; import "bar"; import { d as d } from "baz"; console.log(d); } } mangle: { rename = false mangle = { toplevel: true, } input: { import foo, { bar } from "baz"; consoe.log(moo); import * as moo from "moz"; } expect: { import o, { bar as m } from "baz"; consoe.log(r); import * as r from "moz"; } } rename_mangle: { rename = true mangle = { toplevel: true, } input: { import foo, { bar } from "baz"; consoe.log(moo); import * as moo from "moz"; } expect: { import o, { bar as m } from "baz"; consoe.log(r); import * as r from "moz"; } } keep_ref: { options = { reduce_vars: true, toplevel: true, unused: true, } input: { import foo from "bar"; foo(); } expect: { import foo from "bar"; foo(); } } forbid_merge: { options = { merge_vars: true, toplevel: true, } input: { import A from "foo"; export default class extends A {} var f = () => () => {}; f(); f(); } expect: { import A from "foo"; export default class extends A {} var f = () => () => {}; f(); f(); } } issue_4708_1: { options = { imports: true, toplevel: true, unused: true, } input: { var a; import a from "foo"; } expect: { var a; import a from "foo"; } } issue_4708_2: { options = { imports: true, reduce_vars: true, toplevel: true, unused: true, } input: { var a; console.log(a); import a from "foo"; } expect: { var a; console.log(a); import a from "foo"; } }