feature-detect-es6
Advanced tools
Comparing version 0.2.0 to 1.0.0
@@ -89,1 +89,59 @@ 'use strict' | ||
} | ||
/** | ||
* Returns true if `Map`, `WeakMap`, `Set` and `WeakSet` are available. | ||
* | ||
* @returns {boolean} | ||
*/ | ||
exports.collections = function () { | ||
return typeof Map !== 'undefined' && | ||
typeof WeakMap !== 'undefined' && | ||
typeof Set !== 'undefined' && | ||
typeof WeakSet !== 'undefined' | ||
} | ||
/** | ||
* Returns true if generators are available. | ||
* | ||
* @returns {boolean} | ||
*/ | ||
exports.generators = function () { | ||
try { | ||
eval('function* test() {}') | ||
return true | ||
} catch (err) { | ||
return false | ||
} | ||
} | ||
/** | ||
* Returns true if `Promise` is available. | ||
* | ||
* @returns {boolean} | ||
*/ | ||
exports.promises = function () { | ||
return typeof Promise !== 'undefined' | ||
} | ||
/** | ||
* Returns true if template strings are available. | ||
* | ||
* @returns {boolean} | ||
*/ | ||
exports.templateStrings = function () { | ||
try { | ||
eval('var a = `a`') | ||
return true | ||
} catch (err) { | ||
return false | ||
} | ||
} | ||
/** | ||
* Returns true if `Symbol` is available. | ||
* | ||
* @returns {boolean} | ||
*/ | ||
exports.symbols = function () { | ||
return typeof Symbol !== 'undefined' | ||
} |
{ | ||
"name": "feature-detect-es6", | ||
"author": "Lloyd Brookes <75pound@gmail.com>", | ||
"version": "0.2.0", | ||
"version": "1.0.0", | ||
"description": "Detect which ES6 features are available.", | ||
@@ -6,0 +6,0 @@ "repository": "https://github.com/75lb/feature-detect-es6.git", |
@@ -28,2 +28,7 @@ [![view on npm](http://img.shields.io/npm/v/feature-detect-es6.svg)](https://www.npmjs.org/package/feature-detect-es6) | ||
* [.newArrayFeatures()](#module_feature-detect-es6.newArrayFeatures) ⇒ <code>boolean</code> | ||
* [.collections()](#module_feature-detect-es6.collections) ⇒ <code>boolean</code> | ||
* [.generators()](#module_feature-detect-es6.generators) ⇒ <code>boolean</code> | ||
* [.promises()](#module_feature-detect-es6.promises) ⇒ <code>boolean</code> | ||
* [.templateStrings()](#module_feature-detect-es6.templateStrings) ⇒ <code>boolean</code> | ||
* [.symbols()](#module_feature-detect-es6.symbols) ⇒ <code>boolean</code> | ||
@@ -55,5 +60,30 @@ <a name="module_feature-detect-es6.class"></a> | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
<a name="module_feature-detect-es6.collections"></a> | ||
### detect.collections() ⇒ <code>boolean</code> | ||
Returns true if `Map`, `WeakMap`, `Set` and `WeakSet` are available. | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
<a name="module_feature-detect-es6.generators"></a> | ||
### detect.generators() ⇒ <code>boolean</code> | ||
Returns true if generators are available. | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
<a name="module_feature-detect-es6.promises"></a> | ||
### detect.promises() ⇒ <code>boolean</code> | ||
Returns true if `Promise` is available. | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
<a name="module_feature-detect-es6.templateStrings"></a> | ||
### detect.templateStrings() ⇒ <code>boolean</code> | ||
Returns true if template strings are available. | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
<a name="module_feature-detect-es6.symbols"></a> | ||
### detect.symbols() ⇒ <code>boolean</code> | ||
Returns true if `Symbol` is available. | ||
**Kind**: static method of <code>[feature-detect-es6](#module_feature-detect-es6)</code> | ||
* * * | ||
© 2015 Lloyd Brookes \<75pound@gmail.com\>. Documented by [jsdoc-to-markdown](https://github.com/jsdoc2md/jsdoc-to-markdown). |
@@ -28,1 +28,26 @@ var detect = require('../') | ||
}) | ||
test('.collections()', function (t) { | ||
t.strictEqual(detect.collections(), true) | ||
t.end() | ||
}) | ||
test('.generators()', function (t) { | ||
t.strictEqual(detect.generators(), true) | ||
t.end() | ||
}) | ||
test('.promises()', function (t) { | ||
t.strictEqual(detect.generators(), true) | ||
t.end() | ||
}) | ||
test('.templateStrings()', function (t) { | ||
t.strictEqual(detect.templateStrings(), true) | ||
t.end() | ||
}) | ||
test('.symbols()', function (t) { | ||
t.strictEqual(detect.symbols(), true) | ||
t.end() | ||
}) |
@@ -28,1 +28,26 @@ var detect = require('../') | ||
}) | ||
test('.collections()', function (t) { | ||
t.strictEqual(detect.collections(), true) | ||
t.end() | ||
}) | ||
test('.generators()', function (t) { | ||
t.strictEqual(detect.generators(), true) | ||
t.end() | ||
}) | ||
test('.promises()', function (t) { | ||
t.strictEqual(detect.generators(), true) | ||
t.end() | ||
}) | ||
test('.templateStrings()', function (t) { | ||
t.strictEqual(detect.templateStrings(), true) | ||
t.end() | ||
}) | ||
test('.symbols()', function (t) { | ||
t.strictEqual(detect.symbols(), true) | ||
t.end() | ||
}) |
@@ -7,5 +7,8 @@ if (process.env.VERSION === 'node') { | ||
require('./es6-iojs') | ||
} else if (process.env.VERSION === '0.12') { | ||
console.log('Running es5-0.12 tests') | ||
require('./es5-0.12') | ||
} else { | ||
console.log('Running ES5 tests') | ||
require('./es5') | ||
console.log('Running es5-0.10 tests') | ||
require('./es5-0.10') | ||
} |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
14612
12
326
1
88
4