Skip to content

Latest commit

 

History

History
39 lines (31 loc) · 2.17 KB

README.md

File metadata and controls

39 lines (31 loc) · 2.17 KB

logo

fundraising PRs welcome version

I highly recommend reading this: So, what's next?

For some cases could be useful to exclude some core-js features or generate a polyfill for target engines. This API helps conditionally include or exclude certain parts of core-js and build for targets. modules, exclude and targets options are specified in the core-js-compat format.

import builder from 'core-js-builder';

const bundle = await builder({
  // entry / module / namespace / an array of them, by default - all `core-js` modules
  modules: ['core-js/actual', /^esnext\.reflect\./],
  // a blacklist of entries / modules / namespaces, by default - empty list
  exclude: [/^es\.math\./, 'es.number.constructor'],
  // optional browserslist or core-js-compat format query
  targets: '> 0.5%, not dead, ie 9-11',
  // shows summary for the bundle, disabled by default
  summary: {
    // in the console, you could specify required parts or set `true` for enable all of them
    console: { size: true, modules: false },
    // in the comment in the target file, similarly to `summary.console`
    comment: { size: false, modules: true },
  },
  // output format, 'bundle' by default, can be 'cjs' or 'esm', and in this case
  // the result will not be bundled and will contain imports of required modules
  format: 'bundle',
  // optional target filename, if it's missed a file will not be created
  filename: PATH_TO_MY_COREJS_BUNDLE,
});

ℹ️ When using TypeScript, make sure to set esModuleInterop to true.