From 5f1a6a9e3f8bd07aaaadb88d288fa3dd60bd94bb Mon Sep 17 00:00:00 2001 From: Katja Lutz Date: Mon, 29 Jun 2020 22:45:30 +0200 Subject: [PATCH] fix: dont set aliases as externals (#671) --- src/index.js | 4 ++ test/__snapshots__/index.test.js.snap | 48 +++++++++++++++++++ test/fixtures/alias-external/package.json | 10 ++++ .../alias-external/src/colossal-glob.js | 1 + test/fixtures/alias-external/src/index.js | 2 + 5 files changed, 65 insertions(+) create mode 100644 test/fixtures/alias-external/package.json create mode 100644 test/fixtures/alias-external/src/colossal-glob.js create mode 100644 test/fixtures/alias-external/src/index.js diff --git a/src/index.js b/src/index.js index 91d2948..d90dba8 100644 --- a/src/index.js +++ b/src/index.js @@ -462,6 +462,7 @@ function createConfig(options, entry, format, writeMeta) { const moduleAliases = options.alias ? parseMappingArgumentAlias(options.alias) : []; + const aliasIds = moduleAliases.map(alias => alias.find); const peerDeps = Object.keys(pkg.peerDependencies || {}); if (options.external === 'none') { @@ -560,6 +561,9 @@ function createConfig(options, entry, format, writeMeta) { if (options.multipleEntries && id === '.') { return true; } + if (aliasIds.indexOf(id) >= 0) { + return false; + } return externalTest(id); }, treeshake: { diff --git a/test/__snapshots__/index.test.js.snap b/test/__snapshots__/index.test.js.snap index 0fab5d8..ff46d38 100644 --- a/test/__snapshots__/index.test.js.snap +++ b/test/__snapshots__/index.test.js.snap @@ -43,6 +43,54 @@ exports[`fixtures build alias with microbundle 5`] = ` " `; +exports[`fixtures build alias-external with microbundle 1`] = ` +"Used script: microbundle --alias tiny-glob=./colossal-glob.js + +Directory tree: + +alias-external + dist + alias-external.esm.js + alias-external.esm.js.map + alias-external.js + alias-external.js.map + alias-external.umd.js + alias-external.umd.js.map + package.json + src + colossal-glob.js + index.js + + +Build \\"aliasExternal\\" to dist: +37 B: alias-external.js.gz +21 B: alias-external.js.br +37 B: alias-external.esm.js.gz +21 B: alias-external.esm.js.br +93 B: alias-external.umd.js.gz +89 B: alias-external.umd.js.br" +`; + +exports[`fixtures build alias-external with microbundle 2`] = `6`; + +exports[`fixtures build alias-external with microbundle 3`] = ` +"console.log(42); +//# sourceMappingURL=alias-external.esm.js.map +" +`; + +exports[`fixtures build alias-external with microbundle 4`] = ` +"console.log(42); +//# sourceMappingURL=alias-external.js.map +" +`; + +exports[`fixtures build alias-external with microbundle 5`] = ` +"!function(n){\\"function\\"==typeof define&&define.amd?define(n):n()}(function(){console.log(42)}); +//# sourceMappingURL=alias-external.umd.js.map +" +`; + exports[`fixtures build async-iife-ts with microbundle 1`] = ` "Used script: microbundle diff --git a/test/fixtures/alias-external/package.json b/test/fixtures/alias-external/package.json new file mode 100644 index 0000000..06cb12b --- /dev/null +++ b/test/fixtures/alias-external/package.json @@ -0,0 +1,10 @@ +{ + "name": "alias-external", + "scripts": { + "build": "microbundle --alias tiny-glob=./colossal-glob.js" + }, + "dependencies": { + "tiny-glob": "^0.2.6", + "lodash.merge": "^4.6.2" + } +} diff --git a/test/fixtures/alias-external/src/colossal-glob.js b/test/fixtures/alias-external/src/colossal-glob.js new file mode 100644 index 0000000..7a4e8a7 --- /dev/null +++ b/test/fixtures/alias-external/src/colossal-glob.js @@ -0,0 +1 @@ +export default 42; diff --git a/test/fixtures/alias-external/src/index.js b/test/fixtures/alias-external/src/index.js new file mode 100644 index 0000000..6bcbdd6 --- /dev/null +++ b/test/fixtures/alias-external/src/index.js @@ -0,0 +1,2 @@ +import tinyglob from 'tiny-glob'; +console.log(tinyglob);