Skip to content

Commit e3b7484

Browse files
authored
Merge pull request #882 from rivajunior/refactor/change-blacklist-term
refactor(core-js-builder): change blacklist term
2 parents 5a1efc1 + bbf0280 commit e3b7484

3 files changed

Lines changed: 18 additions & 9 deletions

File tree

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,7 @@ It does not work with some features. Also, if you change the default behaviour,
322322

323323
### Custom build[](#index)
324324

325-
For some cases could be useful adding a blacklist of features or generation a polyfill for target engines. You could use [`core-js-builder`](/packages/core-js-builder) package for that.
325+
For some cases could be useful adding a _exclude_ of features or generation a polyfill for target engines. You could use [`core-js-builder`](/packages/core-js-builder) package for that.
326326

327327
### Compatibility data[](#index)
328328

packages/core-js-builder/README.md

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,15 @@
1-
For some cases could be useful adding a blacklist of features or generation a polyfill for target engines. This API helps conditionally include or exclude certain parts of [`core-js`](https://github.com/zloirock/core-js), use `browserslist` queries from [`core-js-compat`](https://github.com/zloirock/core-js/tree/master/packages/core-js-compat) package.
1+
For some cases could be useful adding a _exclude_ list of features or generation a polyfill for target engines. This API helps conditionally include or exclude certain parts of [`core-js`](https://github.com/zloirock/core-js), use `browserslist` queries from [`core-js-compat`](https://github.com/zloirock/core-js/tree/master/packages/core-js-compat) package.
2+
3+
> **NOTE:**
4+
> `blacklist` parameter is now deprecated in favor of `exclude`. And will be removed in the next major version. You can't use both parameters since `blacklist` has precedence.
25
36
```js
47
require('core-js-builder')({
5-
modules: ['es', 'esnext.reflect', 'web'], // modules / namespaces, by default - all `core-js` modules
6-
blacklist: ['es.math', 'es.number.constructor'], // blacklist of modules / namespaces, by default - empty list
7-
targets: '> 0.5%', // optional browserslist query
8-
filename: './my-core-js-bundle.js', // optional target filename, if it's missed a file will not be created
9-
}).then(code => { // code of result polyfill
8+
modules: ['es', 'esnext.reflect', 'web'], // modules / namespaces, by default - all `core-js` modules
9+
exclude: ['es.math', 'es.number.constructor'], // exclude of modules / namespaces, by default - empty list
10+
targets: '> 0.5%', // optional browserslist query
11+
filename: './my-core-js-bundle.js', // optional target filename, if it's missed a file will not be created
12+
}).then(code => { // code of result polyfill
1013
// ...
1114
}).catch(error => {
1215
// ...

packages/core-js-builder/index.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,13 @@ const compat = require('core-js-compat/compat');
1414
const modulesList = require('core-js-compat/modules');
1515
const { banner } = require('./config');
1616

17-
module.exports = async function ({ blacklist = [], modules = modulesList.slice(), targets, filename } = {}) {
17+
module.exports = async function ({
18+
blacklist, // TODO: Remove from `core-js@4`
19+
exclude = [],
20+
modules = modulesList.slice(),
21+
targets,
22+
filename,
23+
} = {}) {
1824
const set = new Set();
1925

2026
function filter(method, list) {
@@ -28,7 +34,7 @@ module.exports = async function ({ blacklist = [], modules = modulesList.slice()
2834
}
2935

3036
filter('add', modules);
31-
filter('delete', blacklist);
37+
filter('delete', blacklist || exclude);
3238

3339
modules = modulesList.filter(it => set.has(it));
3440

0 commit comments

Comments
 (0)