Git Product home page Git Product logo

browserslist-to-esbuild's Introduction

browserslist-to-esbuild

Use browserslist with esbuild.

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

Install

You have to install the browserslist package as well in your project:

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

or

yarn add --dev browserslist 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'

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

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

browserslistToEsbuild('>0.2%, not dead')

API

browserslistToEsbuild(browserslistConfig?, options?)

browserslistConfig

Type: string | string[] | undefined

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

options

Type: object | undefined

An object containing the options that will be forwarded to browserslist. You can check out the browserslist options documentation to see all the options available.

CLI

You can also use this package on the cli to test out the command in your project. If no argument is passed, the browserslist config is searched in the script running directory.

Here is some example usage:

$ npx browserslist-to-esbuild
chrome109 edge118 firefox115 ios15.6 opera102 safari15.6

$ npx browserslist-to-esbuild '>0.2%, not dead'
chrome103 edge87 firefox115 ios12.2 opera102 safari14.1

$ npx browserslist-to-esbuild '>0.2%' 'not dead'
chrome103 edge87 firefox115 ios12.2 opera102 safari14.1

browserslist-to-esbuild's People

Contributors

filipw01 avatar idleberg avatar kingyue737 avatar marcofugaro avatar realtayy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.