158 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			158 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# caniuse-api [](https://travis-ci.org/Nyalab/caniuse-api) [](https://ci.appveyor.com/project/MoOx/caniuse-api/branch/master)
 | 
						|
 | 
						|
request the caniuse data to check browsers compatibilities
 | 
						|
 | 
						|
## Installation
 | 
						|
 | 
						|
```console
 | 
						|
$ yarn add caniuse-api
 | 
						|
```
 | 
						|
 | 
						|
## Usage
 | 
						|
 | 
						|
```js
 | 
						|
const caniuse = require('caniuse-api')
 | 
						|
 | 
						|
caniuse.getSupport('border-radius')
 | 
						|
caniuse.isSupported('border-radius', 'ie 8, ie 9')
 | 
						|
caniuse.setBrowserScope('> 5%, last 1 version')
 | 
						|
caniuse.getSupport('border-radius')
 | 
						|
// ...
 | 
						|
```
 | 
						|
 | 
						|
## API
 | 
						|
 | 
						|
#### `caniuse.getSupport(feature)`
 | 
						|
 | 
						|
_ask since which browsers versions a feature is available_
 | 
						|
 | 
						|
* `y`: Since which browser version the feature is available
 | 
						|
* `n`: Up to which browser version the feature is unavailable
 | 
						|
* `a`: Up to which browser version the feature is partially supported
 | 
						|
* `x`: Up to which browser version the feature is prefixed
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.getSupport('border-radius', true)
 | 
						|
/*
 | 
						|
{ and_chr: { y: 67 },
 | 
						|
  and_ff: { y: 60 },
 | 
						|
  and_qq: { y: 1.2 },
 | 
						|
  and_uc: { y: 11.8 },
 | 
						|
  android: { y: 2.1, x: 2.1 },
 | 
						|
  baidu: { y: 7.12 },
 | 
						|
  chrome: { y: 4, x: 4 },
 | 
						|
  edge: { y: 12 },
 | 
						|
  firefox: { a: 2, x: 3.6, y: 3 },
 | 
						|
  ie: { n: 8, y: 9 },
 | 
						|
  ie_mob: { y: 10 },
 | 
						|
  ios_saf: { y: 3.2, x: 3.2 },
 | 
						|
  op_mini: {},
 | 
						|
  op_mob: { n: 10, y: 11 },
 | 
						|
  opera: { n: 10, y: 10.5 },
 | 
						|
  safari: { y: 3.1, x: 4 },
 | 
						|
  samsung: { y: 4 } }
 | 
						|
*/
 | 
						|
```
 | 
						|
 | 
						|
#### `caniuse.isSupported(feature, browsers)`
 | 
						|
 | 
						|
_ask if a feature is supported by some browsers_
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.isSupported('border-radius', 'ie 8, ie 9') // false
 | 
						|
caniuse.isSupported('border-radius', 'ie 9') // true
 | 
						|
```
 | 
						|
 | 
						|
#### `caniuse.find(query)`
 | 
						|
 | 
						|
_search for a caniuse feature name_
 | 
						|
 | 
						|
Ex:
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.find('radius') // ['border-radius']
 | 
						|
caniuse.find('nothingness') // []
 | 
						|
caniuse.find('css3')
 | 
						|
/*
 | 
						|
[ 'css3-attr',
 | 
						|
  'css3-boxsizing',
 | 
						|
  'css3-colors',
 | 
						|
  'css3-cursors-grab',
 | 
						|
  'css3-cursors-newer',
 | 
						|
  'css3-cursors',
 | 
						|
  'css3-tabsize' ]
 | 
						|
*/
 | 
						|
```
 | 
						|
 | 
						|
#### `caniuse.getLatestStableBrowsers()`
 | 
						|
 | 
						|
_get the current version for each browser_
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.getLatestStableBrowsers()
 | 
						|
/*
 | 
						|
[ 'and_chr 67',
 | 
						|
  'and_ff 60',
 | 
						|
  'and_qq 1.2',
 | 
						|
  'and_uc 11.8',
 | 
						|
  'android 67',
 | 
						|
  'baidu 7.12',
 | 
						|
  'bb 10',
 | 
						|
  'chrome 67',
 | 
						|
  'edge 17',
 | 
						|
  'firefox 61',
 | 
						|
  'ie 11',
 | 
						|
  'ie_mob 11',
 | 
						|
  'ios_saf 11.3-11.4',
 | 
						|
  'op_mini all',
 | 
						|
  'op_mob 46',
 | 
						|
  'opera 53',
 | 
						|
  'safari 11.1',
 | 
						|
  'samsung 7.2' ]
 | 
						|
*/
 | 
						|
```
 | 
						|
 | 
						|
#### `caniuse.getBrowserScope()`
 | 
						|
 | 
						|
_returns a list of browsers currently used for the scope of operations_
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.getBrowserScope()
 | 
						|
/*
 | 
						|
[ 'and_chr',
 | 
						|
  'and_ff',
 | 
						|
  'and_qq',
 | 
						|
  'and_uc',
 | 
						|
  'android',
 | 
						|
  'baidu',
 | 
						|
  'chrome',
 | 
						|
  'edge',
 | 
						|
  'firefox',
 | 
						|
  'ie',
 | 
						|
  'ie_mob',
 | 
						|
  'ios_saf',
 | 
						|
  'op_mini',
 | 
						|
  'op_mob',
 | 
						|
  'opera',
 | 
						|
  'safari',
 | 
						|
  'samsung' ]
 | 
						|
*/
 | 
						|
```
 | 
						|
 | 
						|
#### `caniuse.setBrowserScope(browserscope)`
 | 
						|
 | 
						|
_if you do not like the default browser scope, you can set it globally by using this method_
 | 
						|
 | 
						|
* browserscope should be a 'autoprefixer' formatted string
 | 
						|
 | 
						|
```js
 | 
						|
caniuse.setBrowserScope('> 5%, last 2 versions, Firefox ESR, Opera 12.1')
 | 
						|
```
 | 
						|
 | 
						|
 | 
						|
---
 | 
						|
 | 
						|
## [Changelog](CHANGELOG.md)
 | 
						|
 | 
						|
## [License](LICENSE)
 |