browserslist-to-esbuild

Use browserslist with esbuild

Usage no npm install needed!

<script type="module">
  import browserslistToEsbuild from 'https://cdn.skypack.dev/browserslist-to-esbuild';
</script>

README

browserslist-to-esbuild

Use browserslist with esbuild.

Allows you to use use browserslist and pass the correct browsers to esbuild's target option.

Install

npm install --save-dev browserslist-to-esbuild

or

yarn add --dev browserslist-to-esbuild

Usage

You can call browserslistToEsbuild() directly in your esbuild.mjs script, it will look for your browserslist config in either package.json or the .browserslistrc.

It will return an esbuild-compatible array of browsers.

import { build } from 'esbuild'
import browserslistToEsbuild from 'browserslist-to-esbuild'

build({
  entryPoints: ['input.js'],
  outfile: 'output.js',
  bundle: true,
  target: browserslistToEsbuild(), // --> ["chrome79", "edge92", "firefox91", "safari13.1"]
}).catch(() => process.exit(1))

Otherwise, you can pass yourself a browserslist array or string to the function.

browserslistToEsbuild(['>0.2%', 'not dead', 'not op_mini all'])

API

browserslistToEsbuild(browserslistConfig?)

browserslistConfig

Type: array | string | undefined

An array of string of browsers compatible with browserslist. If none is passed, a browserslist config is searched in the script running directory.