From 3db786c8e97059ef69a456fe42196324060ee357 Mon Sep 17 00:00:00 2001 From: Emmanuel Chambon Date: Mon, 10 May 2021 13:03:31 +0200 Subject: [PATCH 1/3] build: only target esm --- README.md | 3 +- package.json | 7 +- packages/random-name/package.json | 5 +- packages/regex/package.json | 3 +- packages/use-dataloader/package.json | 3 +- packages/use-i18n/package.json | 3 +- packages/use-query-params/package.json | 3 +- rollup.config.mjs | 36 +++------ yarn.lock | 108 ++++++------------------- 9 files changed, 45 insertions(+), 126 deletions(-) diff --git a/README.md b/README.md index 8172f68da..c07247072 100644 --- a/README.md +++ b/README.md @@ -155,7 +155,6 @@ We target by default Node@14 but you can add a browser output by adding a `brows ```js "browser": { - "dist/index.js": "dist/index.browser.js", "dist/module.js": "dist/module.browser.js" } ``` @@ -166,7 +165,7 @@ The browserlist we are currently using is available in the [rollup.config.mjs](. ### On build outputs -We output both UMD and ESM files for each target. +We only output ESM modules. ### On commits diff --git a/package.json b/package.json index d99d7abaf..1f9ed3382 100644 --- a/package.json +++ b/package.json @@ -14,8 +14,6 @@ "@commitlint/cli": "^12.0.0", "@commitlint/config-conventional": "^12.0.0", "@rollup/plugin-babel": "^5.2.2", - "@rollup/plugin-commonjs": "^18.0.0", - "@rollup/plugin-node-resolve": "^11.0.1", "@testing-library/jest-dom": "^5.11.9", "@testing-library/react": "^11.2.5", "@testing-library/react-hooks": "^5.1.0", @@ -31,13 +29,12 @@ "prettier": "^2.2.1", "read-pkg": "^6.0.0", "rollup": "^2.36.1", - "rollup-plugin-analyzer": "^4.0.0", - "rollup-plugin-preserve-shebangs": "^0.2.0" + "rollup-plugin-visualizer": "^5.5.0" }, "scripts": { "lint": "eslint --cache .", "lint:fix": "yarn run lint --fix", - "build": "lerna exec --ignore @scaleway/eslint-* --ignore @scaleway/countries -- rollup -c ../../rollup.config.mjs", + "build": "lerna exec --stream --ignore @scaleway/eslint-* --ignore @scaleway/countries -- rollup -c ../../rollup.config.mjs", "build:profile": "cross-env PROFILE=true yarn run build", "commit": "npx git-cz -a", "test": "jest", diff --git a/packages/random-name/package.json b/packages/random-name/package.json index 0ad72f209..a1b7b80fd 100644 --- a/packages/random-name/package.json +++ b/packages/random-name/package.json @@ -2,11 +2,10 @@ "name": "@scaleway/random-name", "version": "1.3.0", "description": "A small utility to generate a random name", - "main": "dist/index.js", "module": "dist/module.js", + "type": "module", "browser": { - "dist/index.js": "./dist/index.browser.js", - "dist/module.js": "./dist/module.browser.js" + "dist/index.js": "./dist/module.browser.js" }, "publishConfig": { "access": "public" diff --git a/packages/regex/package.json b/packages/regex/package.json index e6e9d687c..2f735ab35 100644 --- a/packages/regex/package.json +++ b/packages/regex/package.json @@ -2,10 +2,9 @@ "name": "@scaleway/regex", "version": "1.4.1", "description": "A small utility to use regex", - "main": "dist/index.js", + "type": "module", "module": "dist/module.js", "browser": { - "dist/index.js": "./dist/index.browser.js", "dist/module.js": "./dist/module.browser.js" }, "publishConfig": { diff --git a/packages/use-dataloader/package.json b/packages/use-dataloader/package.json index 263f650f7..a054c4b01 100644 --- a/packages/use-dataloader/package.json +++ b/packages/use-dataloader/package.json @@ -8,10 +8,9 @@ "hooks", "dataloader" ], - "main": "dist/index.js", + "type": "module", "module": "dist/module.js", "browser": { - "dist/index.js": "./dist/index.browser.js", "dist/module.js": "./dist/module.browser.js" }, "publishConfig": { diff --git a/packages/use-i18n/package.json b/packages/use-i18n/package.json index 0c271b5d1..5b5f90748 100644 --- a/packages/use-i18n/package.json +++ b/packages/use-i18n/package.json @@ -10,10 +10,9 @@ "intl", "react-intl" ], - "main": "dist/index.js", + "type": "module", "module": "dist/module.js", "browser": { - "dist/index.js": "./dist/index.browser.js", "dist/module.js": "./dist/module.browser.js" }, "publishConfig": { diff --git a/packages/use-query-params/package.json b/packages/use-query-params/package.json index 534dda815..bef3584bb 100644 --- a/packages/use-query-params/package.json +++ b/packages/use-query-params/package.json @@ -11,10 +11,9 @@ "react-router-dom", "query-params" ], - "main": "dist/index.js", + "type": "module", "module": "dist/module.js", "browser": { - "dist/index.js": "./dist/index.browser.js", "dist/module.js": "./dist/module.browser.js" }, "publishConfig": { diff --git a/rollup.config.mjs b/rollup.config.mjs index 8c722c0da..15ad287b5 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -1,10 +1,7 @@ import { babel } from '@rollup/plugin-babel' -import commonjs from '@rollup/plugin-commonjs' -import { nodeResolve } from '@rollup/plugin-node-resolve' import builtins from 'builtin-modules' import { readPackageAsync } from 'read-pkg' -import analyze from 'rollup-plugin-analyzer' -import { preserveShebangs } from 'rollup-plugin-preserve-shebangs' +import { visualizer } from 'rollup-plugin-visualizer' const PROFILE = !!process.env.PROFILE @@ -40,28 +37,19 @@ const getConfig = (pkg, isBrowser = false) => { '@babel/plugin-transform-react-jsx', ], }), - nodeResolve({ - browser: isBrowser, - preferBuiltins: true, - }), - commonjs({ - include: '**/node_modules/**', - }), - preserveShebangs(), - PROFILE && analyze({ summaryOnly: true }), + PROFILE && + visualizer({ + gzipSize: true, + brotliSize: true, + open: true, + filename: '.reports/report.html', + }), ].filter(Boolean), external, - output: [ - { - format: 'umd', - name: pkg.name, - file: isBrowser ? 'dist/index.browser.js' : 'dist/index.js', - }, - { - format: 'es', - file: isBrowser ? 'dist/module.browser.js' : 'dist/module.js', - }, - ], + output: [{ + format: 'es', + file: isBrowser ? 'dist/module.browser.js' : 'dist/module.js', + }], } } diff --git a/yarn.lock b/yarn.lock index 98e67e64a..6ce37191f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2225,31 +2225,6 @@ "@babel/helper-module-imports" "^7.10.4" "@rollup/pluginutils" "^3.1.0" -"@rollup/plugin-commonjs@^18.0.0": - version "18.1.0" - resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-18.1.0.tgz#5a760d757af168a50727c0ae080251fbfcc5eb02" - integrity sha512-h3e6T9rUxVMAQswpDIobfUHn/doMzM9sgkMrsMWCFLmB84PSoC8mV8tOloAJjSRwdqhXBqstlX2BwBpHJvbhxg== - dependencies: - "@rollup/pluginutils" "^3.1.0" - commondir "^1.0.1" - estree-walker "^2.0.1" - glob "^7.1.6" - is-reference "^1.2.1" - magic-string "^0.25.7" - resolve "^1.17.0" - -"@rollup/plugin-node-resolve@^11.0.1": - version "11.2.1" - resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-11.2.1.tgz#82aa59397a29cd4e13248b106e6a4a1880362a60" - integrity sha512-yc2n43jcqVyGE2sqV5/YCmocy9ArjVAP/BeXyTtADTBBX6V0e5UMqwO8CdQ0kzjb6zu5P1qMzsScCMRvE9OlVg== - dependencies: - "@rollup/pluginutils" "^3.1.0" - "@types/resolve" "1.17.1" - builtin-modules "^3.1.0" - deepmerge "^4.2.2" - is-module "^1.0.0" - resolve "^1.19.0" - "@rollup/pluginutils@^3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" @@ -2364,11 +2339,6 @@ dependencies: "@babel/types" "^7.3.0" -"@types/estree@*": - version "0.0.45" - resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.45.tgz#e9387572998e5ecdac221950dab3e8c3b16af884" - integrity sha512-jnqIUKDUqJbDIUxm0Uj7bnlMnRm1T/eZ9N+AVMqhPgzrba2GhGG5o/jCTwmdPK709nEZsGoMzXEDUjcXHa3W0g== - "@types/estree@0.0.39": version "0.0.39" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" @@ -2471,13 +2441,6 @@ "@types/scheduler" "*" csstype "^3.0.2" -"@types/resolve@1.17.1": - version "1.17.1" - resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" - integrity sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== - dependencies: - "@types/node" "*" - "@types/scheduler@*": version "0.16.1" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" @@ -3009,7 +2972,7 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== -builtin-modules@^3.1.0, builtin-modules@^3.2.0: +builtin-modules@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== @@ -3330,11 +3293,6 @@ commander@^7.2.0: resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== -commondir@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" - integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= - compare-func@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" @@ -4171,11 +4129,6 @@ estree-walker@^1.0.1: resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-1.0.1.tgz#31bc5d612c96b704106b477e6dd5d8aa138cb700" integrity sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg== -estree-walker@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.1.tgz#f8e030fb21cefa183b44b7ad516b747434e7a3e0" - integrity sha512-tF0hv+Yi2Ot1cwj9eYHtxC0jB9bmjacjQs6ZBTj82H8JwUywFuc+7E83NWfNMwHXZc11mjfFcVXPe9gEP4B8dg== - esutils@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" @@ -5241,11 +5194,6 @@ is-lambda@^1.0.1: resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= -is-module@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" - integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= - is-negative-zero@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" @@ -5305,13 +5253,6 @@ is-potential-custom-element-name@^1.0.0: resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.0.tgz#0c52e54bcca391bb2c494b21e8626d7336c6e397" integrity sha1-DFLlS8yjkbssSUsh6GJtczbG45c= -is-reference@^1.2.1: - version "1.2.1" - resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" - integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== - dependencies: - "@types/estree" "*" - is-regex@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.2.tgz#81c8ebde4db142f2cf1c53fc86d6a45788266251" @@ -5381,7 +5322,7 @@ is-windows@^1.0.2: resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== -is-wsl@^2.2.0: +is-wsl@^2.1.1, is-wsl@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== @@ -6281,13 +6222,6 @@ lz-string@^1.4.4: resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.4.4.tgz#c0d8eaf36059f705796e1e344811cf4c498d3a26" integrity sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= -magic-string@^0.25.7: - version "0.25.7" - resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.25.7.tgz#3f497d6fd34c669c6798dcb821f2ef31f5445051" - integrity sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA== - dependencies: - sourcemap-codec "^1.4.4" - make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -6616,6 +6550,11 @@ mute-stream@0.0.8, mute-stream@~0.0.4: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== +nanoid@^3.1.22: + version "3.1.22" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.22.tgz#b35f8fb7d151990a8aebd5aa5015c03cf726f844" + integrity sha512-/2ZUaJX2ANuLtTvqTlgqBQNJoQO398KyJgZloL0PZkC0dpysjncRUPsFe3DUPzz/y3h+u7C46np8RMuvF3jsSQ== + nanomatch@^1.2.9: version "1.2.13" resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" @@ -6979,6 +6918,14 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +open@^7.4.2: + version "7.4.2" + resolved "https://registry.yarnpkg.com/open/-/open-7.4.2.tgz#b8147e26dcf3e426316c730089fd71edd29c2321" + integrity sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q== + dependencies: + is-docker "^2.0.0" + is-wsl "^2.1.1" + optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -7928,7 +7875,7 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -7981,17 +7928,15 @@ rimraf@^3.0.0, rimraf@^3.0.2: dependencies: glob "^7.1.3" -rollup-plugin-analyzer@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-analyzer/-/rollup-plugin-analyzer-4.0.0.tgz#96b757ed64a098b59d72f085319e68cdd86d5798" - integrity sha512-LL9GEt3bkXp6Wa19SNR5MWcvHNMvuTFYg+eYBZN2OIFhSWN+pEJUQXEKu5BsOeABob3x9PDaLKW7w5iOJnsESQ== - -rollup-plugin-preserve-shebangs@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/rollup-plugin-preserve-shebangs/-/rollup-plugin-preserve-shebangs-0.2.0.tgz#e48894c1f68c6fd54b0de10bd26906224d5dc7cd" - integrity sha512-OEyTIfZwUJ7yUAVAbegac/bNvp1WJzgZcQNCFprWX42wwwOqlJwrev9lUmzZdYVgCWct+03xUPvZg4RfgkM9oQ== +rollup-plugin-visualizer@^5.5.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-5.5.0.tgz#dbe9daa3a46576fb697eb62b19ed251112b85d1e" + integrity sha512-QUd0ZHGYn6rgogS+yzG08AvMk9J4kR1lO1cpLJCIAQhbyIGSBdqCddKWtxDsdmsxhkY/GCGw8CvoSB3MwMQOIQ== dependencies: - magic-string "^0.25.7" + nanoid "^3.1.22" + open "^7.4.2" + source-map "^0.7.3" + yargs "^16.2.0" rollup@^2.36.1: version "2.47.0" @@ -8330,11 +8275,6 @@ source-map@^0.7.3: resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== -sourcemap-codec@^1.4.4: - version "1.4.8" - resolved "https://registry.yarnpkg.com/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz#ea804bd94857402e6992d05a38ef1ae35a9ab4c4" - integrity sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA== - spdx-correct@^3.0.0: version "3.1.1" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" From 62bf31dd1d57e6c943dc87d35427765c68a3bae0 Mon Sep 17 00:00:00 2001 From: Emmanuel Chambon Date: Mon, 10 May 2021 13:31:42 +0200 Subject: [PATCH 2/3] fix: correct export --- packages/random-name/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/random-name/package.json b/packages/random-name/package.json index a1b7b80fd..39a903729 100644 --- a/packages/random-name/package.json +++ b/packages/random-name/package.json @@ -5,7 +5,7 @@ "module": "dist/module.js", "type": "module", "browser": { - "dist/index.js": "./dist/module.browser.js" + "dist/module.js": "./dist/module.browser.js" }, "publishConfig": { "access": "public" From 864a8fef6bbd5e1f84c6240e224e364a777656d9 Mon Sep 17 00:00:00 2001 From: Emmanuel Chambon Date: Mon, 10 May 2021 15:13:09 +0200 Subject: [PATCH 3/3] fix: restore node-resolve --- package.json | 1 + rollup.config.mjs | 9 +++++++-- yarn.lock | 28 ++++++++++++++++++++++++++-- 3 files changed, 34 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 1f9ed3382..c26e4063e 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "@commitlint/cli": "^12.0.0", "@commitlint/config-conventional": "^12.0.0", "@rollup/plugin-babel": "^5.2.2", + "@rollup/plugin-node-resolve": "^13.0.0", "@testing-library/jest-dom": "^5.11.9", "@testing-library/react": "^11.2.5", "@testing-library/react-hooks": "^5.1.0", diff --git a/rollup.config.mjs b/rollup.config.mjs index 15ad287b5..c9564faef 100644 --- a/rollup.config.mjs +++ b/rollup.config.mjs @@ -1,4 +1,5 @@ import { babel } from '@rollup/plugin-babel' +import { nodeResolve } from '@rollup/plugin-node-resolve' import builtins from 'builtin-modules' import { readPackageAsync } from 'read-pkg' import { visualizer } from 'rollup-plugin-visualizer' @@ -37,6 +38,10 @@ const getConfig = (pkg, isBrowser = false) => { '@babel/plugin-transform-react-jsx', ], }), + nodeResolve({ + browser: isBrowser, + preferBuiltins: true, + }), PROFILE && visualizer({ gzipSize: true, @@ -46,10 +51,10 @@ const getConfig = (pkg, isBrowser = false) => { }), ].filter(Boolean), external, - output: [{ + output: { format: 'es', file: isBrowser ? 'dist/module.browser.js' : 'dist/module.js', - }], + }, } } diff --git a/yarn.lock b/yarn.lock index 6ce37191f..5112e6909 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2225,6 +2225,18 @@ "@babel/helper-module-imports" "^7.10.4" "@rollup/pluginutils" "^3.1.0" +"@rollup/plugin-node-resolve@^13.0.0": + version "13.0.0" + resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-13.0.0.tgz#352f07e430ff377809ec8ec8a6fd636547162dc4" + integrity sha512-41X411HJ3oikIDivT5OKe9EZ6ud6DXudtfNrGbC4nniaxx2esiWjkLOzgnZsWq1IM8YIeL2rzRGLZLBjlhnZtQ== + dependencies: + "@rollup/pluginutils" "^3.1.0" + "@types/resolve" "1.17.1" + builtin-modules "^3.1.0" + deepmerge "^4.2.2" + is-module "^1.0.0" + resolve "^1.19.0" + "@rollup/pluginutils@^3.1.0": version "3.1.0" resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-3.1.0.tgz#706b4524ee6dc8b103b3c995533e5ad680c02b9b" @@ -2441,6 +2453,13 @@ "@types/scheduler" "*" csstype "^3.0.2" +"@types/resolve@1.17.1": + version "1.17.1" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.17.1.tgz#3afd6ad8967c77e4376c598a82ddd58f46ec45d6" + integrity sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw== + dependencies: + "@types/node" "*" + "@types/scheduler@*": version "0.16.1" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.1.tgz#18845205e86ff0038517aab7a18a62a6b9f71275" @@ -2972,7 +2991,7 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.1.tgz#32713bc028f75c02fdb710d7c7bcec1f2c6070ef" integrity sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A== -builtin-modules@^3.2.0: +builtin-modules@^3.1.0, builtin-modules@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.2.0.tgz#45d5db99e7ee5e6bc4f362e008bf917ab5049887" integrity sha512-lGzLKcioL90C7wMczpkY0n/oART3MbBa8R9OFGE1rJxoVI86u4WAGfEk8Wjv10eKSyTHVGkSo3bvBylCEtk7LA== @@ -5194,6 +5213,11 @@ is-lambda@^1.0.1: resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= +is-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" + integrity sha1-Mlj7afeMFNW4FdZkM2tM/7ZEFZE= + is-negative-zero@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" @@ -7875,7 +7899,7 @@ resolve-url@^0.2.1: resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= -resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.20.0: +resolve@^1.1.6, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.14.2, resolve@^1.17.0, resolve@^1.18.1, resolve@^1.19.0, resolve@^1.20.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==