differential-browsers
💡 This library is a fork of Polymer/tools/packages/browser-capabilities, but the repository has been dead for two years. The biggest offender here is Anaheim edge that is now chromium based.
A JavaScript library that detects browser capabilities from a user agent string.
The following keywords are supported. See differential-browsers.ts for the latest browser support matrix.
Keyword | Description |
---|---|
push | HTTP/2 Server Push |
serviceworker | Service Worker API |
modules |
JavaScript Modules (including dynamic import() and import.meta ) |
es2015 | ECMAScript 2015 (aka ES6) |
es2016 | ECMAScript 2016 |
es2017 | ECMAScript 2017 |
es2018 | ECMAScript 2018 |
TODO:
- [ ]
push
is supported for<link rel="preload" ...>
, butmodulepreload
is not available - [ ]
es2019
- covering:flat
andflatMap
Array
methods, try .. catchoptional binding,
Object.fromEntries, stable
Array.sort`, and more - [ ]
es2020
- covering: optional chaining (?.
), nullish coalescing (??
),export * as namespace
andBigInt
, and more