pax_global_header00006660000000000000000000000064131267265230014521gustar00rootroot0000000000000052 comment=8d09fa52975e46e6244032abdb641ce5294474af babel-preset-env-1.6.0/000077500000000000000000000000001312672652300146605ustar00rootroot00000000000000babel-preset-env-1.6.0/.eslintignore000066400000000000000000000000461312672652300173630ustar00rootroot00000000000000/lib fixtures debug-fixtures test/tmp babel-preset-env-1.6.0/.eslintrc000066400000000000000000000001441312672652300165030ustar00rootroot00000000000000{ "extends": "babel", "parserOptions": { "ecmaVersion": 7, "sourceType": "module" } } babel-preset-env-1.6.0/.github/000077500000000000000000000000001312672652300162205ustar00rootroot00000000000000babel-preset-env-1.6.0/.github/stale.yml000066400000000000000000000017371312672652300200630ustar00rootroot00000000000000# Configuration for probot-stale - https://github.com/probot/stale # Number of days of inactivity before an Issue or Pull Request becomes stale daysUntilStale: 60 # Number of days of inactivity before a stale Issue or Pull Request is closed daysUntilClose: 7 # Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable exemptLabels: - has pr - pinned - security # Label to use when marking as stale staleLabel: stale # Comment to post when marking as stale. Set to `false` to disable markComment: > This issue has been automatically marked as `stale` because it has not had recent activity 😴. It will be closed if no further activity occurs. Thank you for your contributions 👌! # Comment to post when removing the stale label. Set to `false` to disable unmarkComment: false # Comment to post when closing a stale Issue or Pull Request. Set to `false` to disable closeComment: false # Limit to only `issues` or `pulls` # only: issues babel-preset-env-1.6.0/.gitignore000066400000000000000000000001421312672652300166450ustar00rootroot00000000000000node_modules coverage lib test/tmp .DS_Store *.log .vscode .nyc_output tmp babel-preset-env-*.tgz babel-preset-env-1.6.0/.npmignore000066400000000000000000000002141312672652300166540ustar00rootroot00000000000000coverage src test node_modules scripts .eslintignore .travis.yml codecov.yml yarn.lock .nyc_output .vscode .eslintrc babel-preset-env-*.tgz babel-preset-env-1.6.0/.travis.yml000066400000000000000000000020571312672652300167750ustar00rootroot00000000000000git: depth: 3 sudo: false language: node_js cache: yarn: true directories: - node_modules node_js: - "8" - '6' - '4' - '0.12' - '0.10' env: global: - BABEL_ENV=test matrix: - PKG_CMD="npm" - PKG_CMD="yarn" before_install: - nvm use $TRAVIS_NODE_VERSION - npm set loglevel error - npm set progress false - 'if [ $PKG_CMD = "yarn" ]; then curl -o- -L https://yarnpkg.com/install.sh | bash && PATH=$HOME/.yarn/bin:$PATH ; fi' install: - $PKG_CMD install script: - 'if [ -n "${LINT-}" ]; then $PKG_CMD run lint ; fi' - 'if [ -n "${SMOKE_TEST-}" ]; then node scripts/smoke-test.js ; fi' - 'if [ -z "${LINT-}" ] && [ -z "${SMOKE_TEST-}" ]; then $PKG_CMD run test-ci ; fi' matrix: fast_finish: true exclude: - node_js: "0.10" env: PKG_CMD="yarn" - node_js: "0.12" env: PKG_CMD="yarn" include: - node_js: "node" env: LINT=true PKG_CMD="npm" - node_js: "node" env: SMOKE_TEST=true PKG_CMD="npm" after_success: 'if [ -z "${LINT-}" ] && [ -z "${SMOKE_TEST-}" ]; then npm run coverage-ci ; fi' babel-preset-env-1.6.0/CHANGELOG.md000066400000000000000000000535741312672652300165070ustar00rootroot00000000000000# Changelog ## v1.6.0 (2017-07-04) ### :rocket: New Feature - Bump compat-table for node8 support ([#363](https://github.com/babel/babel-preset-env/pull/363)) (@existentialism) We updated our mappings to support native trailing function commas and string paddings in Node.js 8+. ### :bug: Bug Fix - Handle `chromeandroid` browserslist value ([#367](https://github.com/babel/babel-preset-env/pull/367)) (@yavorsky) We added support for using browserslist's `chromeandroid` in `targets`. ### :memo: Documentation - Tweak uglify option docs ([#368](https://github.com/babel/babel-preset-env/pull/368)) (@existentialism) Thanks to @graingert and @pfiaux for pointing out some needed updates to the `uglify-js`-related docs. ## v1.5.2 (2017-06-07) ### :bug: Bug Fix - Ensure explicit targets always override browsers key targets ([#346](https://github.com/babel/babel-preset-env/pull/346)) (@existentialism) `browser` targets should be overridden by explicit targets, and we inadvertently broke this when we landed string version support. ## v1.5.1 (2017-05-22) ### :bug: Bug Fix - Compile with loose mode ([#322](https://github.com/babel/babel-preset-env/pull/332)) (@existentialism) ## v1.5.0 (2017-05-19) ### :rocket: New Feature - Support target versions as strings ([#321](https://github.com/babel/babel-preset-env/pull/321)) (@existentialism) We were originally waiting on 2.x for a breaking change, but since node v7.10 and other targets are causing some pain, we decided to land a backwards compatible version. ### :house: Internal - Backport: use preset-env and remove flow-strip-types ([#324](https://github.com/babel/babel-preset-env/pull/324)) (@yavorsky) - Bump electron-to-chromium ([#329](https://github.com/babel/babel-preset-env/pull/329)) (@existentialism) - Tweak version mappings to match compat-table updates ([#323](https://github.com/babel/babel-preset-env/pull/323)) (@existentialism) - Bump browserslist ([#319](https://github.com/babel/babel-preset-env/pull/319)) (@existentialism) - Bump compat-table ([#307](https://github.com/babel/babel-preset-env/pull/307)) (@existentialism) - Add debug-fixtures and test/tmp to .eslintignore ([#305](https://github.com/babel/babel-preset-env/pull/305)) (@yavorsky) ## v1.4.0 (2017-04-14) ### :rocket: New Feature - Support `spec` option ([#98](https://github.com/babel/babel-preset-env/pull/98)) (@Kovensky) Added an option to enable more spec compliant, but potentially slower, transformations for any plugins in this preset that support them. - Bump compat-table for Edge 15 support ([#273](https://github.com/babel/babel-preset-env/pull/273)) (@existentialism) We updated our mappings so that you can get native support for async/await and other goodies when targeting Edge 15! ### :bug: Bug Fix - Add Android browser to name map ([#270](https://github.com/babel/babel-preset-env/pull/270)) (@existentialism) Fixed a bug that was ignoring Android targets in browserslist queries (for example: "Android >= 4"). ### :memo: Documentation - Clarify note about loading polyfills only once ([#282](https://github.com/babel/babel-preset-env/pull/282)) (@darahak) - Add a reminder about include/exclude options ([#275](https://github.com/babel/babel-preset-env/pull/275)) (@existentialism) ### :house: Internal - Chore: reduce package size. ([#281](https://github.com/babel/babel-preset-env/pull/281)) (@evilebottnawi) - Remove deprecated comment ([#271](https://github.com/babel/babel-preset-env/pull/271)) (@yavorsky) ## v1.3.3 (2017-04-07) ### :bug: Bug Fix - Support electron version in a string format ([#252](https://github.com/babel/babel-preset-env/pull/252)) (@yavorsky) Adding electron as a target was an inadvertent breaking change as it no longer allowed string versions. We added an exception for now, even though it is inconsistent with other versions. Just as a note, the upcoming version 2.x will allow _both_ number and string versions. - Ensure const-check plugin order ([#257](https://github.com/babel/babel-preset-env/pull/257)) (@existentialism) We now force the `const-es2015-check` plugin to run first (so that it can correctly report issues before they get transpiled away). ### :rocket: New Feature - Allow use `babel-plugin-` prefix for include and exclude ([#242](https://github.com/babel/babel-preset-env/pull/242)) (@yavorsky) The `include` and `exclude` options now allow both prefixed (`babel-plugin-transform-es2015-spread`) and prefix-less (`transform-es2015-spread`) plugin names. ### :memo: Documentation - Note babel plugin prefix handling in include/exclude ([#245](https://github.com/babel/babel-preset-env/pull/245)) (@existentialism) - Fix README: debug option shows info in stdout. ([#236](https://github.com/babel/babel-preset-env/pull/236)) (@Gerhut) ### :house: Internal - Add simple smoke-test ([#240](https://github.com/babel/babel-preset-env/pull/240)) (@existentialism) - Add prepublish script (@existentialism) ## v1.3.2 (2017-03-30) - Fixed an issue with a broken publish ## v1.3.1 (2017-03-30) - Fixed a regression with missing files due to `.npmignore`. ## v1.3.0 (2017-03-30) ### :bug: Bug Fix - Add check for ArrayBuffer[Symbol.species] ([#233](https://github.com/babel/babel-preset-env/pull/233)) (@existentialism) We now properly check for `Symbol.species` support in ArrayBuffer and include the polyfill if necessary. This should, as a side effect, fix ArrayBuffer-related errors on IE9. ### :nail_care: Polish - Fill data with electron as a target. ([#229](https://github.com/babel/babel-preset-env/pull/229)) (@yavorsky) We've simplified things by adding `electron` as a target instead of doing a bunch of things at runtime. Electron targets should now also be displayed in the debug output. - separate default builtins for platforms ([#226](https://github.com/babel/babel-preset-env/pull/226)) (@restrry) If you are targeting the `node` environment exclusively, the always-included web polyfills (like `dom.iterable`, and a few others) will now no longer be included. ### :memo: Documentation * remove deprecated projects ([#223](https://github.com/babel/babel-preset-env/pull/223)) [skip ci] (@stevemao) ### :house: Internal * npmignore: Add related to build data and codecov. ([#216](https://github.com/babel/babel-preset-env/pull/216)) (@yavorsky) ## v1.2.2 (2017-03-14) ### :bug: Bug Fix - Refactor browser data parsing to handle families ([#208](https://github.com/babel/babel-preset-env/pull/208)) (@existentialism) When parsing plugin data, we weren't properly handling browser families. This caused `transform-es2015-block-scoping` and other plugins to be incorrectly added for Edge >= 12. (s/o to @mgol for the the report and review!) - Add typed array methods to built-ins features. ([#198](https://github.com/babel/babel-preset-env/pull/198)) (@yavorsky) Fixes an issue where some TypedArray features were not being polyfilled properly. (s/o to @alippai for the report!) ### :memo: Documentation - Fixed minor typo in readme ([#199](https://github.com/babel/babel-preset-env/pull/199)) (@bl4ckdu5t) - Add built-ins, better links, compat-table url, etc ([#195](https://github.com/babel/babel-preset-env/pull/195)) (@yavorsky) - Change CONTRIBUTING.md to use absolute paths ([#194](https://github.com/babel/babel-preset-env/pull/194)) (@aaronang) ### :house: Internal - Bump plugins ([#201](https://github.com/babel/babel-preset-env/pull/201)) (@yavorsky) - Enable code coverage ([#200](https://github.com/babel/babel-preset-env/pull/200)) (@alxpy) - Increase mocha timeout to 10s ([#202](https://github.com/babel/babel-preset-env/pull/202)) (@yavorsky) ## v1.2.1 (2017-03-06) ### :bug: Bug Fix - Add transform-duplicate-keys mapping ([#192](https://github.com/babel/babel-preset-env/pull/192)) (@existentialism) Our plugin data was missing a mapping for the `transform-duplicate-keys` plugin which caused it to never be included. (s/o to @Timer for the report!) ### :memo: Documentation - Clarify reasons for the uglify option in README.md ([#188](https://github.com/babel/babel-preset-env/pull/188)) (@mikegreiling) ## v1.2.0 (2017-03-03) ### :rocket: New Feature - Add uglify as a target ([#178](https://github.com/babel/babel-preset-env/pull/178)) (@yavorsky) Support for `uglify` as a target is now available! This will enable all plugins and, as a result, fully compiles your code to ES5. Note, that useBuiltIns will work as before, and only the polyfills that your other target(s) need will be included. ```json { "presets": [ ["env", { "targets": { "chrome": 55, "uglify": true }, "useBuiltIns": true, "modules": false }] ] } ``` ### :bug: Bug Fix - Respect older versions in invert equals map ([#180](https://github.com/babel/babel-preset-env/pull/180)) (@danez) Fixes a number of bugs that caused some incorrect and/or missing environment data when parsing `compat-table`. ## v1.1.11 (2017-03-01) This release primarily upgrades `compat-table`, which adds support for async on Node 7.6! ### :bug: Bug Fix - Fix hasBeenWarned condition. ([#175](https://github.com/babel/babel-preset-env/pull/175)) (@yavorsky) ### :memo: Documentation - Add yarn example. ([#174](https://github.com/babel/babel-preset-env/pull/174)) (@yavorsky) ### :house: Internal - Bump compat-table ([#177](https://github.com/babel/babel-preset-env/pull/177)) (@existentialism) - Add electron version exception test ([#176](https://github.com/babel/babel-preset-env/pull/176)) (@existentialism) ## v1.1.10 (2017-02-24) ### :bug: Bug Fix - Drop use of lodash/intersection from checkDuplicateIncludeExcludes ([#173](https://github.com/babel/babel-preset-env/pull/173)) (@existentialism) ## v1.1.9 (2017-02-24) ### :bug: Bug Fix - Add tests for debug output ([#156](https://github.com/babel/babel-preset-env/pull/156)) (@existentialism) Since we've (mostly @yavorsky) have fixed a number of bugs recently with the `debug` option output, we added the ability to assert stdout matches what we expect. Read the updated [CONTRIBUTING.md](https://github.com/babel/babel-preset-env/blob/master/CONTRIBUTING.md#testing-the-debug-option) for more info. - Fixes #143. Log correct targets. ([#155](https://github.com/babel/babel-preset-env/pull/155)) (@yavorsky) This fixes a bug in the `debug` output where incorrect target(s) were being displayed for why a particular plugin/preset was being included. Given targets: ```txt { "firefox": 52, "node": 7.4 } ``` Before: ```txt Using plugins: transform-es2015-destructuring {"node":6.5} transform-es2015-for-of {"node":6.5} transform-es2015-function-name {"node":6.5} transform-es2015-literals {"node":4} transform-exponentiation-operator {"firefox":52} syntax-trailing-function-commas {"firefox":52} ``` After: ```txt Using plugins: transform-es2015-destructuring {"firefox":52} transform-es2015-for-of {"firefox":52} transform-es2015-function-name {"firefox":52} transform-es2015-literals {"firefox":52} transform-exponentiation-operator {"node":7.4} syntax-trailing-function-commas {"node":7.4} ``` ### :memo: Documentation - Fix compat-table link in contributing.md (@existentialism) - Update README examples to fix website ([#151](https://github.com/babel/babel-preset-env/pull/)) (@existentialism) - Fix few typos ([#146](https://github.com/babel/babel-preset-env/pull/146)) (@existentialism) - Add configuration example to clarify `debug: true` ([#138](https://github.com/babel/babel-preset-env/pull/138)) (@yavorsky) - Fix CHANGELOG’s v1.1.8 updates typo. ([#136](https://github.com/babel/babel-preset-env/pull/136)) (@yavorsky) - README: Update `debug: true` example. ([#138](https://github.com/babel/babel-preset-env/pull/138)) (@yavorsky) ### :house: Internal - update compat ([#169](https://github.com/babel/babel-preset-env/pull/169)) (@hzoo) - Use external Electron to Chromium library ([#144](https://github.com/babel/babel-preset-env/pull/144)) (@Kilian) - Update yarn lockfile ([#152](https://github.com/babel/babel-preset-env/pull/152)) (@existentialism) - Extract option normalization into independant file ([#125](https://github.com/babel/babel-preset-env/pull/125)) (@baer) - Update yarnfile ([#145](https://github.com/babel/babel-preset-env/pull/145)) (@baer) - devDeps: eslint-config-babel v5.0.0 ([#139](https://github.com/babel/babel-preset-env/pull/139)) (@kaicataldo) - Update compat-table, build data ([#135](https://github.com/babel/babel-preset-env/pull/135)) (@hzoo) ## v1.1.8 (2017-01-10) ### :bug: Bug Fix - Debug: Transformations before logs. ([#128](https://github.com/babel/babel-preset-env/pull/128)) (@yavorsky) Makes sure that all transformations on `targets` (such as `exclude`/`include`) are run before logging out with the `debug` option. Fixes ([#127](https://github.com/babel/babel-preset-env/issues/127)). ### :house: Internal - Remove unnecessary extension. ([#131](https://github.com/babel/babel-preset-env/pull/131)) (@roman-yakobnyuk) - Include yarn.lock and update CI. ([#124](https://github.com/babel/babel-preset-env/pull/124)) (@existentialism) ## v1.1.7 (2017-01-09) Had a publishing issue in the previous release. ## v1.1.6 (2017-01-06) ### :bug: Bug Fix - Explicitly resolve lowest browser version. ([#121](https://github.com/babel/babel-preset-env/pull/121)) (@brokenmass) ```js { "targets": { "browsers": ["ios >= 6"] // was resolving to {ios: 10} rather than {ios: 6} } } ``` ## v1.1.5 (2017-01-04) ### :bug: Bug Fix - Show error if target version is not a number. ([#107](https://github.com/babel/babel-preset-env/pull/107)) (@existentialism) ```js { "presets": [ ["env", { "targets": { "chrome": "52", // will error since it's not a number, "chrome": 52 // correct! } }] ] } ``` - Fix targets for the `debug` option. ([#109](https://github.com/babel/babel-preset-env/pull/109)) (@yavorsky) Now it prints the transformed targets/environments rather than the browsers query. ```txt Using targets: { "chrome": 53, "ie": 10, "node": 6 } Modules transform: false Using plugins: transform-es2015-arrow-functions {"chrome":47,"node":6} transform-es2015-block-scoped-functions {"chrome":41,"ie":11,"node":4} Using polyfills: es6.typed.uint8-clamped-array {"chrome":5,"node":0.12} es6.map {"chrome":51,"node":6.5} ``` ## v1.1.4 (2016-12-16) v1.1.2-v1.1.4 ### :bug: Bug Fix The new `exclude`/`include` options weren't working correctly for built-ins. ([#102](https://github.com/babel/babel-preset-env/pull/102)). Also fixes an issue with debug option. ## v1.1.1 (2016-12-13) ### :bug: Bug Fix Regression with the previous release due to using `Object.values` (ES2017). This wasn't caught because we are using babel-register to run tests and includes polyfills so it didn't fail on CI even though we have Node 0.10 as an env. Looking into fixing this to prevent future issues. ## v1.1.0 (2016-12-13) ### :rocket: New Feature - Add `exclude` option, rename `whitelist` to `include` ([#89](https://github.com/babel/babel-preset-env/pull/89)) (@hzoo) Example: ```js { "presets": [ ["env", { "targets": { "browsers": ["last 2 versions", "safari >= 7"] }, "include": ["transform-es2015-arrow-functions"], "exclude": [ "transform-regenerator", "transform-async-to-generator", "map" ], "useBuiltIns": true }] ] } ``` `"exclude": ["transform-regenerator"]` doesn't transform generators and removes `regeneratorRuntime` from being imported. `"exclude": ["transform-async-to-generator"]` doesn't use the built-in async-to-gen transform so you can use something like [fast-async](https://github.com/MatAtBread/fast-async). `"exclude": ["map"]` doesn't include the `Map` polyfill if you know you aren't using it in your code (w/ `useBuiltIns`). (We will figure out a way to automatically do this [#84](https://github.com/babel/babel-preset-env/issues/84)). If you pass a wrong plugin it will error: valid options for `include/exclude` are in [/data/plugin-features.js](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js) and [/data/built-in-features.js](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js) (without the `es6.`) ### :house: Internal - Optimize result filtration. ([#77](https://github.com/babel/babel-preset-env/pull/77)) (@yavorsky) - Update eslint config to align with other babel projects ([#79](https://github.com/babel/babel-preset-env/pull/79)) (@baer) - Update pathnames to avoid uppercase ([#80](https://github.com/babel/babel-preset-env/pull/80)) (@baer) - Refactor build data for clarity/consistency ([#81](https://github.com/babel/babel-preset-env/pull/81)) (@baer) - Update linting rules to cover all js ([#82](https://github.com/babel/babel-preset-env/pull/82)) (@baer) - Cleanup lib before rebuilding ([#87](https://github.com/babel/babel-preset-env/pull/87)) (@baer) - Move linting dependency to be dev only ([#88](https://github.com/babel/babel-preset-env/pull/88)) (@baer) ### :memo: Documentation - Fix typo ([#78](https://github.com/babel/babel-preset-env/pull/78)) (@rohmanhm) - Fix PR link in changelog. ([#75](https://github.com/babel/babel-preset-env/pull/75)) (@nhajidin) ## v1.0.2 (2016-12-10) ### :bug: Bug Fix * Fix issue with Object.getOwnPropertySymbols ([#71](https://github.com/babel/babel-preset-env/pull/71)) ([@existentialism](https://github.com/existentialism)) Was requiring the wrong module kinda of like in v1.0.1: https://github.com/zloirock/core-js#ecmascript-6-symbol ```diff -import "core-js/modules/es6.object.get-own-property-symbols"; ``` The test is just a part of `Symbol`. ## v1.0.1 (2016-12-10) ### :bug: Bug Fix * Fix regenerator import ([#68](https://github.com/babel/babel-preset-env/pull/68)) ([@hzoo](https://github.com/hzoo)) We were outputting an invalid path for `regenerator`! ```diff +import "regenerator-runtime/runtime"; -import "core-js/modules/regenerator-runtime/runtime"- ``` ## v1.0.0 (2016-12-09) ### :rocket: New Feature * Add `useBuiltIns` option ([#56](https://github.com/babel/babel-preset-env/pull/56)) ([@hzoo](https://github.com/hzoo)), ([@yavorsky](https://github.com/yavorsky)), ([@existentialism](https://github.com/existentialism)) A way to apply `babel-preset-env` for polyfills (via `"babel-polyfill"``). > This option will apply a new Babel plugin that replaces `require("babel-polyfill")` with the individual requires for `babel-polyfill` based on the target environments. Install ``` npm install babel-polyfill --save ``` In ```js import "babel-polyfill"; // create an entry js file that contains this // or import "core-js"; ``` Out (different based on environment) ```js // chrome 55 import "core-js/modules/es7.string.pad-start"; // haha left_pad import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; ``` `.babelrc` Usage ```js { "presets": [ ["env", { "targets": { "electron": 1.4 }, "modules": false, // webpack 2 "useBuiltIns": true // new option }] ] } ``` > Also looking to make an easier integration point via Webpack with this method. Please reach out if you have ideas! --- * Support [Electron](http://electron.atom.io/) ([#55](https://github.com/babel/babel-preset-env/pull/55)) ([@paulcbetts](https://github.com/paulcbetts)) Electron is also an environment, so [Paul went ahead](https://twitter.com/paulcbetts/status/804507070103851008) and added support for this! `.babelrc` Usage ```js { "presets": [ ["env", {"targets": { "electron": 1.4 }}]] } ``` > Currently we are manually updating the data in [/data/electron-to-chromium.js](https://github.com/babel/babel-preset-env/blob/master/data/electron-to-chromium.js), but [@kevinsawicki](https://github.com/kevinsawicki) says we could generate the data from [atom-shell/dist/index.json](https://gh-contractor-zcbenz.s3.amazonaws.com/atom-shell/dist/index.json) as well! (Someone should make a PR :smile:) ## v0.0.9 (2016-11-24) ### :rocket: New Feature * Support Opera ([#48](https://github.com/babel/babel-preset-env/pull/48)) (Henry Zhu) Was as simple as modifying the chrome version and subtracting 13! (so chrome 54 = opera 41) ```js { "presets": [ ["env", { "targets": { "opera": 41 } }] ] } ``` ## v0.0.8 (2016-11-16) ### :nail_care: Polish * Only print the debug info once ([#46](https://github.com/babel/babel-preset-env/pull/46) (Henry Zhu) When using the `debug` option it was printing the data for each file processed rather than once. ```js { "presets": [ ["env", { "debug": true }] ] } ``` ## v0.0.7 (2016-11-02) ### :rocket: New Feature * hardcode a current node version option ([#35](https://github.com/babel/babel-preset-env/pull/35)) (Henry Zhu) ```js { "presets": [ ["env", { "targets": { "node": "current" // parseFloat(process.versions.node) } }] ] } ``` * add 'whitelist' option ([#31](https://github.com/babel/babel-preset-env/pull/31)) (Henry Zhu) ```js { "presets": [ ["env", { "targets": { "chrome": 52 }, "whitelist": ["transform-es2015-arrow-functions"] }] ] } ``` * Add more aliases (Henry Zhu) * Update plugin data: firefox 52 supports async/await! ([#29](https://github.com/babel/babel-preset-env/pull/29)) (Henry Zhu) ### :bug: Bug Fixes * Use compat-table equals option ([#36](https://github.com/babel/babel-preset-env/pull/36)) (Henry Zhu) Compute and use `compat-table` equivalents ```js { "safari6": "phantom", "chrome44": "iojs", "chrome50": "node64", "chrome51": "node65", "chrome54": "node7", "chrome30": "android44", "chrome37": "android50", "chrome39": "android51", "safari7": "ios7", "safari71_8": "ios8", "safari9": "ios9", "safari10": "ios10", "chrome50": "node6" } ``` * Change default behavior to act the same as babel-preset-latest ([#33](https://github.com/babel/babel-preset-env/pull/33)) (Henry Zhu) ```js { "presets": ["env"] } // should act the same as babel-preset-latest ``` ## Internal * Add fixture helper for tests ([#28](https://github.com/babel/babel-preset-env/pull/28)) (Henry Zhu) babel-preset-env-1.6.0/CONTRIBUTING.md000066400000000000000000000052671312672652300171230ustar00rootroot00000000000000# Contributing ## Adding a new plugin to support (when approved in the next ECMAScript version) ### Update [`plugin-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js) *Example:* If you were going to add `**` which is in ES2016: Find the relevant entries on [compat-table](https://kangax.github.io/compat-table/es2016plus/#test-exponentiation_(**)_operator): `exponentiation (**) operator` Find the corresponding babel plugin: `transform-exponentiation-operator` And add them in this structure: ```js // es2016 "transform-exponentiation-operator": { features: [ "exponentiation (**) operator", ], }, ``` ### Update [`built-in-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js) *Example:* In case you want to add `Object.values` which is in ES2017: Find the relevant feature and subfeature on [compat-table](https://kangax.github.io/compat-table/es2016plus/#test-Object_static_methods_Object.values) and split it with `/`: `Object static methods / Object.values` Find the corresponding module on [core-js](https://github.com/zloirock/core-js/tree/master/modules): `es7.object.values.js` Find required ES version in [`built-in-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js) and add the new feature: ```js const es2017 = { //... "es7.object.values": "Object static methods / Object.values" } ``` ### Update [`plugins.json`](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json) Until `compat-table` is a standalone npm module for data we are using the git url `"compat-table": "kangax/compat-table#[latest-commit-hash]"`, So we update and then run `npm run build-data`. If there are no changes, then `plugins.json` will be the same. ## Tests ### Running tests locally ```bash npm test ``` ### Checking code coverage locally ```bash npm run coverage ``` ### Writing tests #### General All the tests for `babel-preset-env` exist in the `test/fixtures` folder. The test setup and conventions are exactly the same as testing a Babel plugin, so please read our [documentation on writing tests](https://github.com/babel/babel/blob/master/CONTRIBUTING.md#babel-plugin-x). #### Testing the `debug` option Testing debug output to `stdout` is similar. Under the `test/debug-fixtures`, create a folder with a descriptive name of your test, and add the following: * Add a `options.json` file (just as the other tests, this is essentially a `.babelrc`) with the desired test configuration (required) * Add a `stdout.txt` file with the expected debug output. For added convenience, if there is no `stdout.txt` present, the test runner will generate one for you. babel-preset-env-1.6.0/LICENSE000066400000000000000000000020461312672652300156670ustar00rootroot00000000000000MIT License Copyright (c) 2016 Babel Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. babel-preset-env-1.6.0/README.md000066400000000000000000000274121312672652300161450ustar00rootroot00000000000000# babel-preset-env [![npm](https://img.shields.io/npm/v/babel-preset-env.svg)](https://www.npmjs.com/package/babel-preset-env) [![travis](https://img.shields.io/travis/babel/babel-preset-env/master.svg)](https://travis-ci.org/babel/babel-preset-env) [![npm-downloads](https://img.shields.io/npm/dm/babel-preset-env.svg)](https://www.npmjs.com/package/babel-preset-env) [![codecov](https://img.shields.io/codecov/c/github/babel/babel-preset-env/master.svg?maxAge=43200)](https://codecov.io/github/babel/babel-preset-env) > A Babel preset that can automatically determine the Babel plugins and polyfills you need based on your supported environments. ```sh npm install babel-preset-env --save-dev ``` ```json { "presets": [ ["env", { "targets": { "browsers": ["last 2 versions", "safari >= 7"] } }] ] } ``` Check out the many options (especially `useBuiltIns` to polyfill less)! - [How it Works](#how-it-works) - [Install](#install) - [Usage](#usage) - [Options](#options) - [Examples](#examples) - [Caveats](#caveats) - [Other Cool Projects](#other-cool-projects) ## How it Works ### Determine environment support for ECMAScript features Use external data such as [`compat-table`](https://github.com/kangax/compat-table) to determine browser support. (We should create PRs there when necessary) ![](https://cloud.githubusercontent.com/assets/588473/19214029/58deebce-8d48-11e6-9004-ee3fbcb75d8b.png) We can periodically run [build-data.js](https://github.com/babel/babel-preset-env/blob/master/scripts/build-data.js) which generates [plugins.json](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json). Ref: [#7](https://github.com/babel/babel-preset-env/issues/7) ### Maintain a mapping between JavaScript features and Babel plugins > Currently located at [plugin-features.js](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js). This should be straightforward to do in most cases. There might be cases where plugins should be split up more or certain plugins aren't standalone enough (or impossible to do). ### Support all plugins in Babel that are considered `latest` > Default behavior without options is the same as `babel-preset-latest`. It won't include `stage-x` plugins. env will support all plugins in what we consider the latest version of Javascript (by matching what we do in [`babel-preset-latest`](http://babeljs.io/docs/plugins/preset-latest/)). Ref: [#14](https://github.com/babel/babel-preset-env/issues/14) ### Determine the lowest common denominator of plugins to be included in the preset If you are targeting IE 8 and Chrome 55 it will include all plugins required by IE 8 since you would need to support both still. ### Support a target option `"node": "current"` to compile for the currently running node version. For example, if you are building on Node 4, arrow functions won't be converted, but they will if you build on Node 0.12. ### Support a `browsers` option like autoprefixer Use [browserslist](https://github.com/ai/browserslist) to declare supported environments by performing queries like `> 1%, last 2 versions`. Ref: [#19](https://github.com/babel/babel-preset-env/pull/19) ## Install With [npm](https://www.npmjs.com): ```sh npm install --save-dev babel-preset-env ``` Or [yarn](https://yarnpkg.com): ```sh yarn add babel-preset-env --dev ``` ## Usage The default behavior without options runs all transforms (behaves the same as [babel-preset-latest](https://babeljs.io/docs/plugins/preset-latest/)). ```json { "presets": ["env"] } ``` ## Options For more information on setting options for a preset, refer to the [plugin/preset options](http://babeljs.io/docs/plugins/#plugin-preset-options) documentation. ### `targets` `{ [string]: number | string }`, defaults to `{}`. Takes an object of environment versions to support. Each target environment takes a number or a string (we recommend using a string when specifying minor versions like `node: "6.10"`). Example environments: `chrome`, `opera`, `edge`, `firefox`, `safari`, `ie`, `ios`, `android`, `node`, `electron`. The [data](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json) for this is generated by running the [build-data script](https://github.com/babel/babel-preset-env/blob/master/scripts/build-data.js) which pulls in data from [compat-table](https://kangax.github.io/compat-table). ### `targets.node` `number | string | "current" | true` If you want to compile against the current node version, you can specify `"node": true` or `"node": "current"`, which would be the same as `"node": parseFloat(process.versions.node)`. ### `targets.browsers` `Array | string` A query to select browsers (ex: last 2 versions, > 5%) using [browserslist](https://github.com/ai/browserslist). Note, browsers' results are overridden by explicit items from `targets`. ### `targets.uglify` `true` When using `uglify-js` to minify your code, you may run into syntax errors when targeting later browsers since `uglify-js` does not support any ES2015+ syntax. To prevent these errors - set the `uglify` option to `true`, which enables all transformation plugins and as a result, your code is fully compiled to ES5. However, the `useBuiltIns` option will still work as before and only include the polyfills that your target(s) need. > Uglify has support for ES2015 syntax via [uglify-es](https://github.com/mishoo/UglifyJS2/tree/harmony). If you are using syntax unsupported by `uglify-es`, we recommend using [Babili](https://github.com/babel/babili). > Note: This option is deprecated in 2.x and replaced with a [`forceAllTransforms` option](https://github.com/babel/babel-preset-env/pull/264). ### `spec` `boolean`, defaults to `false`. Enable more spec compliant, but potentially slower, transformations for any plugins in this preset that support them. ### `loose` `boolean`, defaults to `false`. Enable "loose" transformations for any plugins in this preset that allow them. ### `modules` `"amd" | "umd" | "systemjs" | "commonjs" | false`, defaults to `"commonjs"`. Enable transformation of ES6 module syntax to another module type. Setting this to `false` will not transform modules. ### `debug` `boolean`, defaults to `false`. Outputs the targets/plugins used and the version specified in [plugin data version](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json) to `console.log`. ### `include` `Array`, defaults to `[]`. > NOTE: `whitelist` is deprecated and will be removed in the next major in favor of this. An array of plugins to always include. Valid options include any: - [Babel plugins](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js) - both with (`babel-plugin-transform-es2015-spread`) and without prefix (`transform-es2015-spread`) are supported. - [Built-ins](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js), such as `map`, `set`, or `object.assign`. This option is useful if there is a bug in a native implementation, or a combination of a non-supported feature + a supported one doesn't work. For example, Node 4 supports native classes but not spread. If `super` is used with a spread argument, then the `transform-es2015-classes` transform needs to be `include`d, as it is not possible to transpile a spread with `super` otherwise. > NOTE: The `include` and `exclude` options _only_ work with the [plugins included with this preset](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js); so, for example, including `transform-do-expressions` or excluding `transform-function-bind` will throw errors. To use a plugin _not_ included with this preset, add them to your [config](https://babeljs.io/docs/usage/babelrc/) directly. ### `exclude` `Array`, defaults to `[]`. An array of plugins to always exclude/remove. The possible options are the same as the `include` option. This option is useful for "blacklisting" a transform like `transform-regenerator` if you don't use generators and don't want to include `regeneratorRuntime` (when using `useBuiltIns`) or for using another plugin like [fast-async](https://github.com/MatAtBread/fast-async) instead of [Babel's async-to-gen](http://babeljs.io/docs/plugins/transform-async-generator-functions/). ### `useBuiltIns` `boolean`, defaults to `false`. A way to apply `babel-preset-env` for polyfills (via "babel-polyfill"). > NOTE: This does not currently polyfill experimental/stage-x built-ins like the regular "babel-polyfill" does. > This will only work with npm >= 3 (which should be used with Babel 6 anyway) ``` npm install babel-polyfill --save ``` This option enables a new plugin that replaces the statement `import "babel-polyfill"` or `require("babel-polyfill")` with individual requires for `babel-polyfill` based on environment. > NOTE: Only use `require("babel-polyfill");` once in your whole app. > Multiple imports or requires of `babel-polyfill` will throw an error since it can cause global collisions and other issues that are hard to trace. > We recommend creating a single entry file that only contains the `require` statement. **In** ```js import "babel-polyfill"; ``` **Out (different based on environment)** ```js import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; ``` This will also work for `core-js` directly (`import "core-js";`) ``` npm install core-js --save ``` --- ## Examples ### Export with various targets ```js export class A {} ``` #### Target only Chrome 52 **.babelrc** ```json { "presets": [ ["env", { "targets": { "chrome": 52 } }] ] } ``` **Out** ```js class A {} exports.A = A; ``` #### Target Chrome 52 with webpack 2/rollup and loose mode **.babelrc** ```json { "presets": [ ["env", { "targets": { "chrome": 52 }, "modules": false, "loose": true }] ] } ``` **Out** ```js export class A {} ``` #### Target specific browsers via browserslist **.babelrc** ```json { "presets": [ ["env", { "targets": { "chrome": 52, "browsers": ["last 2 versions", "safari 7"] } }] ] } ``` **Out** ```js export var A = function A() { _classCallCheck(this, A); }; ``` #### Target latest node via `node: true` or `node: "current"` **.babelrc** ```json { "presets": [ ["env", { "targets": { "node": "current" } }] ] } ``` **Out** ```js class A {} exports.A = A; ``` ### Show debug output **.babelrc** ```json { "presets": [ [ "env", { "targets": { "safari": 10 }, "modules": false, "useBuiltIns": true, "debug": true }] ] } ``` **stdout** ```sh Using targets: { "safari": 10 } Modules transform: false Using plugins: transform-exponentiation-operator {} transform-async-to-generator {} Using polyfills: es7.object.values {} es7.object.entries {} es7.object.get-own-property-descriptors {} web.timers {} web.immediate {} web.dom.iterable {} ``` ### Include and exclude specific plugins/built-ins > always include arrow functions, explicitly exclude generators ```json { "presets": [ ["env", { "targets": { "browsers": ["last 2 versions", "safari >= 7"] }, "include": ["transform-es2015-arrow-functions", "es6.map"], "exclude": ["transform-regenerator", "es6.set"] }] ] } ``` ## Caveats If you get a `SyntaxError: Unexpected token ...` error when using the [object-rest-spread](https://github.com/babel/babel/tree/master/packages/babel-plugin-transform-object-rest-spread) transform then make sure the plugin has been updated to, at least, `v6.19.0`. ## Other Cool Projects - [babel-preset-modern-browsers](https://github.com/christophehurpeau/babel-preset-modern-browsers) - ? babel-preset-env-1.6.0/codecov.yml000066400000000000000000000001001312672652300170140ustar00rootroot00000000000000coverage: parsers: javascript: enable_partials: yes babel-preset-env-1.6.0/data/000077500000000000000000000000001312672652300155715ustar00rootroot00000000000000babel-preset-env-1.6.0/data/built-in-features.js000066400000000000000000000173401312672652300214730ustar00rootroot00000000000000// https://github.com/zloirock/core-js const typedArrayMethods = [ "typed arrays / %TypedArray%.from", "typed arrays / %TypedArray%.of", "typed arrays / %TypedArray%.prototype.subarray", "typed arrays / %TypedArray%.prototype.join", "typed arrays / %TypedArray%.prototype.indexOf", "typed arrays / %TypedArray%.prototype.lastIndexOf", "typed arrays / %TypedArray%.prototype.slice", "typed arrays / %TypedArray%.prototype.every", "typed arrays / %TypedArray%.prototype.filter", "typed arrays / %TypedArray%.prototype.forEach", "typed arrays / %TypedArray%.prototype.map", "typed arrays / %TypedArray%.prototype.reduce", "typed arrays / %TypedArray%.prototype.reduceRight", "typed arrays / %TypedArray%.prototype.reverse", "typed arrays / %TypedArray%.prototype.some", "typed arrays / %TypedArray%.prototype.sort", "typed arrays / %TypedArray%.prototype.copyWithin", "typed arrays / %TypedArray%.prototype.find", "typed arrays / %TypedArray%.prototype.findIndex", "typed arrays / %TypedArray%.prototype.fill", "typed arrays / %TypedArray%.prototype.keys", "typed arrays / %TypedArray%.prototype.values", "typed arrays / %TypedArray%.prototype.entries", "typed arrays / %TypedArray%.prototype[Symbol.iterator]", "typed arrays / %TypedArray%[Symbol.species]", ]; const es2015 = { "es6.typed.array-buffer": "typed arrays / ArrayBuffer[Symbol.species]", "es6.typed.data-view": "typed arrays / DataView", "es6.typed.int8-array": { features: ["typed arrays / Int8Array"].concat(typedArrayMethods) }, "es6.typed.uint8-array": { features: ["typed arrays / Uint8Array"].concat(typedArrayMethods) }, "es6.typed.uint8-clamped-array": { features: ["typed arrays / Uint8ClampedArray"].concat(typedArrayMethods) }, "es6.typed.int16-array": { features: ["typed arrays / Int16Array"].concat(typedArrayMethods) }, "es6.typed.uint16-array": { features: ["typed arrays / Uint16Array"].concat(typedArrayMethods) }, "es6.typed.int32-array": { features: ["typed arrays / Int32Array"].concat(typedArrayMethods) }, "es6.typed.uint32-array": { features: ["typed arrays / Uint32Array"].concat(typedArrayMethods) }, "es6.typed.float32-array": { features: ["typed arrays / Float32Array"].concat(typedArrayMethods) }, "es6.typed.float64-array": { features: ["typed arrays / Float64Array"].concat(typedArrayMethods) }, "es6.map": "Map", "es6.set": "Set", "es6.weak-map": "WeakMap", "es6.weak-set": "WeakSet", // Proxy not implementable "es6.reflect.apply": "Reflect / Reflect.apply", "es6.reflect.construct": "Reflect / Reflect.construct", "es6.reflect.define-property": "Reflect / Reflect.defineProperty", "es6.reflect.delete-property": "Reflect / Reflect.deleteProperty", "es6.reflect.get": "Reflect / Reflect.get", "es6.reflect.get-own-property-descriptor": "Reflect / Reflect.getOwnPropertyDescriptor", "es6.reflect.get-prototype-of": "Reflect / Reflect.getPrototypeOf", "es6.reflect.has": "Reflect / Reflect.has", "es6.reflect.is-extensible": "Reflect / Reflect.isExtensible", "es6.reflect.own-keys": "Reflect / Reflect.ownKeys", "es6.reflect.prevent-extensions": "Reflect / Reflect.preventExtensions", "es6.reflect.set": "Reflect / Reflect.set", "es6.reflect.set-prototype-of": "Reflect / Reflect.setPrototypeOf", "es6.promise": "Promise", "es6.symbol": { features: [ "Symbol", "Object static methods / Object.getOwnPropertySymbols", "well-known symbols / Symbol.hasInstance", "well-known symbols / Symbol.isConcatSpreadable", "well-known symbols / Symbol.iterator", "well-known symbols / Symbol.match", "well-known symbols / Symbol.replace", "well-known symbols / Symbol.search", "well-known symbols / Symbol.species", "well-known symbols / Symbol.split", "well-known symbols / Symbol.toPrimitive", "well-known symbols / Symbol.toStringTag", "well-known symbols / Symbol.unscopables", ] }, "es6.object.assign": "Object static methods / Object.assign", "es6.object.is": "Object static methods / Object.is", "es6.object.set-prototype-of": "Object static methods / Object.setPrototypeOf", "es6.function.name": "function \"name\" property", "es6.string.raw": "String static methods / String.raw", "es6.string.from-code-point": "String static methods / String.fromCodePoint", "es6.string.code-point-at": "String.prototype methods / String.prototype.codePointAt", // "String.prototype methods / String.prototype.normalize" not implemented "es6.string.repeat": "String.prototype methods / String.prototype.repeat", "es6.string.starts-with": "String.prototype methods / String.prototype.startsWith", "es6.string.ends-with": "String.prototype methods / String.prototype.endsWith", "es6.string.includes": "String.prototype methods / String.prototype.includes", "es6.regexp.flags": "RegExp.prototype properties / RegExp.prototype.flags", "es6.regexp.match": "RegExp.prototype properties / RegExp.prototype[Symbol.match]", "es6.regexp.replace": "RegExp.prototype properties / RegExp.prototype[Symbol.replace]", "es6.regexp.split": "RegExp.prototype properties / RegExp.prototype[Symbol.split]", "es6.regexp.search": "RegExp.prototype properties / RegExp.prototype[Symbol.search]", "es6.array.from": "Array static methods / Array.from", "es6.array.of": "Array static methods / Array.of", "es6.array.copy-within": "Array.prototype methods / Array.prototype.copyWithin", "es6.array.find": "Array.prototype methods / Array.prototype.find", "es6.array.find-index": "Array.prototype methods / Array.prototype.findIndex", "es6.array.fill": "Array.prototype methods / Array.prototype.fill", "es6.array.iterator": { features: [ "Array.prototype methods / Array.prototype.keys", // can use Symbol.iterator, not implemented in many environments // "Array.prototype methods / Array.prototype.values", "Array.prototype methods / Array.prototype.entries", ] }, "es6.number.is-finite": "Number properties / Number.isFinite", "es6.number.is-integer": "Number properties / Number.isInteger", "es6.number.is-safe-integer": "Number properties / Number.isSafeInteger", "es6.number.is-nan": "Number properties / Number.isNaN", "es6.number.epsilon": "Number properties / Number.EPSILON", "es6.number.min-safe-integer": "Number properties / Number.MIN_SAFE_INTEGER", "es6.number.max-safe-integer": "Number properties / Number.MAX_SAFE_INTEGER", "es6.math.acosh": "Math methods / Math.acosh", "es6.math.asinh": "Math methods / Math.asinh", "es6.math.atanh": "Math methods / Math.atanh", "es6.math.cbrt": "Math methods / Math.cbrt", "es6.math.clz32": "Math methods / Math.clz32", "es6.math.cosh": "Math methods / Math.cosh", "es6.math.expm1": "Math methods / Math.expm1", "es6.math.fround": "Math methods / Math.fround", "es6.math.hypot": "Math methods / Math.hypot", "es6.math.imul": "Math methods / Math.imul", "es6.math.log1p": "Math methods / Math.log1p", "es6.math.log10": "Math methods / Math.log10", "es6.math.log2": "Math methods / Math.log2", "es6.math.sign": "Math methods / Math.sign", "es6.math.sinh": "Math methods / Math.sinh", "es6.math.tanh": "Math methods / Math.tanh", "es6.math.trunc": "Math methods / Math.trunc", }; const es2016 = { "es7.array.includes": "Array.prototype.includes", }; const es2017 = { "es7.object.values": "Object static methods / Object.values", "es7.object.entries": "Object static methods / Object.entries", "es7.object.get-own-property-descriptors": "Object static methods / Object.getOwnPropertyDescriptors", "es7.string.pad-start": "String padding / String.prototype.padStart", "es7.string.pad-end": "String padding / String.prototype.padEnd", }; module.exports = Object.assign({}, es2015, es2016, es2017); babel-preset-env-1.6.0/data/built-ins.json000066400000000000000000000360551312672652300204030ustar00rootroot00000000000000{ "es6.typed.array-buffer": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.data-view": { "chrome": "5", "opera": "12", "edge": "12", "firefox": "15", "safari": "5.1", "node": "0.12", "ie": "10", "android": "4", "ios": "6", "electron": "1.1" }, "es6.typed.int8-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.uint8-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.uint8-clamped-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.int16-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.uint16-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.int32-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.uint32-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.float32-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.typed.float64-array": { "chrome": "51", "edge": "13", "firefox": "48", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.map": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.set": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.weak-map": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "9", "node": "6.5", "ios": "9", "opera": "38", "electron": "1.2" }, "es6.weak-set": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "9", "node": "6.5", "ios": "9", "opera": "38", "electron": "1.2" }, "es6.reflect.apply": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.construct": { "chrome": "49", "edge": "13", "firefox": "45", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.define-property": { "chrome": "49", "edge": "13", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.delete-property": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.get": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.get-own-property-descriptor": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.get-prototype-of": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.has": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.is-extensible": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.own-keys": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.prevent-extensions": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.set": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.reflect.set-prototype-of": { "chrome": "49", "edge": "12", "firefox": "42", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "es6.promise": { "chrome": "51", "edge": "13", "firefox": "45", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.symbol": { "chrome": "51", "firefox": "51", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.object.assign": { "chrome": "45", "edge": "12", "firefox": "34", "safari": "9", "node": "4", "ios": "9", "opera": "32", "electron": "0.35" }, "es6.object.is": { "chrome": "19", "edge": "12", "firefox": "22", "safari": "9", "node": "0.12", "android": "4.1", "ios": "9", "electron": "0.2" }, "es6.object.set-prototype-of": { "chrome": "34", "edge": "12", "firefox": "31", "safari": "9", "node": "0.12", "ie": "11", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.function.name": { "chrome": "51", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.string.raw": { "chrome": "41", "edge": "12", "firefox": "34", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.from-code-point": { "chrome": "41", "edge": "12", "firefox": "29", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.code-point-at": { "chrome": "41", "edge": "12", "firefox": "29", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.repeat": { "chrome": "41", "edge": "12", "firefox": "24", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.starts-with": { "chrome": "41", "edge": "12", "firefox": "29", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.ends-with": { "chrome": "41", "edge": "12", "firefox": "29", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.string.includes": { "chrome": "41", "edge": "12", "firefox": "40", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "es6.regexp.flags": { "chrome": "49", "firefox": "37", "safari": "9", "node": "6", "ios": "9", "opera": "36", "electron": "1" }, "es6.regexp.match": { "chrome": "50", "firefox": "49", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "es6.regexp.replace": { "chrome": "50", "firefox": "49", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "es6.regexp.split": { "chrome": "50", "firefox": "49", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "es6.regexp.search": { "chrome": "50", "firefox": "49", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "es6.array.from": { "chrome": "51", "edge": "15", "firefox": "36", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "es6.array.of": { "chrome": "45", "edge": "12", "firefox": "25", "safari": "9", "node": "4", "ios": "9", "opera": "32", "electron": "0.35" }, "es6.array.copy-within": { "chrome": "45", "edge": "12", "firefox": "32", "safari": "9", "node": "4", "ios": "9", "opera": "32", "electron": "0.35" }, "es6.array.find": { "chrome": "45", "edge": "12", "firefox": "25", "safari": "7.1", "node": "4", "ios": "8", "opera": "32", "electron": "0.35" }, "es6.array.find-index": { "chrome": "45", "edge": "12", "firefox": "25", "safari": "7.1", "node": "4", "ios": "8", "opera": "32", "electron": "0.35" }, "es6.array.fill": { "chrome": "45", "edge": "12", "firefox": "31", "safari": "7.1", "node": "4", "ios": "8", "opera": "32", "electron": "0.35" }, "es6.array.iterator": { "chrome": "38", "edge": "12", "firefox": "28", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.number.is-finite": { "chrome": "19", "edge": "12", "firefox": "16", "safari": "9", "node": "0.12", "android": "4.1", "ios": "9", "electron": "0.2" }, "es6.number.is-integer": { "chrome": "34", "edge": "12", "firefox": "16", "safari": "9", "node": "0.12", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.number.is-safe-integer": { "chrome": "34", "edge": "12", "firefox": "32", "safari": "9", "node": "0.12", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.number.is-nan": { "chrome": "19", "edge": "12", "firefox": "15", "safari": "9", "node": "0.12", "android": "4.1", "ios": "9", "electron": "0.2" }, "es6.number.epsilon": { "chrome": "34", "edge": "12", "firefox": "25", "safari": "9", "node": "0.12", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.number.min-safe-integer": { "chrome": "34", "edge": "12", "firefox": "31", "safari": "9", "node": "0.12", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.number.max-safe-integer": { "chrome": "34", "edge": "12", "firefox": "31", "safari": "9", "node": "0.12", "ios": "9", "opera": "21", "electron": "0.2" }, "es6.math.acosh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.asinh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.atanh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.cbrt": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.clz32": { "chrome": "38", "edge": "12", "firefox": "31", "safari": "9", "node": "0.12", "ios": "9", "opera": "25", "electron": "0.2" }, "es6.math.cosh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.expm1": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.fround": { "chrome": "38", "edge": "12", "firefox": "26", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.hypot": { "chrome": "38", "edge": "12", "firefox": "27", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.imul": { "chrome": "30", "edge": "12", "firefox": "23", "safari": "7", "node": "0.12", "ios": "7", "opera": "17", "electron": "0.2" }, "es6.math.log1p": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.log10": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.log2": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.sign": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "9", "node": "0.12", "ios": "9", "opera": "25", "electron": "0.2" }, "es6.math.sinh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.tanh": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es6.math.trunc": { "chrome": "38", "edge": "12", "firefox": "25", "safari": "7.1", "node": "0.12", "ios": "8", "opera": "25", "electron": "0.2" }, "es7.array.includes": { "chrome": "47", "edge": "14", "firefox": "43", "safari": "10", "node": "6", "ios": "10", "opera": "34", "electron": "0.36" }, "es7.object.values": { "chrome": "54", "edge": "14", "firefox": "47", "safari": "10.1", "node": "7", "ios": "10.3", "opera": "41", "electron": "1.5" }, "es7.object.entries": { "chrome": "54", "edge": "14", "firefox": "47", "safari": "10.1", "node": "7", "ios": "10.3", "opera": "41", "electron": "1.5" }, "es7.object.get-own-property-descriptors": { "chrome": "54", "edge": "15", "firefox": "50", "safari": "10.1", "node": "7", "ios": "10.3", "opera": "41", "electron": "1.5" }, "es7.string.pad-start": { "chrome": "57", "edge": "15", "firefox": "48", "safari": "10", "node": "8", "ios": "10", "opera": "44", "electron": "1.7" }, "es7.string.pad-end": { "chrome": "57", "edge": "15", "firefox": "48", "safari": "10", "node": "8", "ios": "10", "opera": "44", "electron": "1.7" } } babel-preset-env-1.6.0/data/plugin-features.js000066400000000000000000000051731312672652300212470ustar00rootroot00000000000000module.exports = { // es2015 "check-es2015-constants": { features: [ "const", ], }, "transform-es2015-arrow-functions": { features: [ "arrow functions", ], }, "transform-es2015-block-scoped-functions": { features: [ "block-level function declaration" ], }, "transform-es2015-block-scoping": { features: [ "const", "let", ], }, "transform-es2015-classes": { features: [ "class", "super", ], }, "transform-es2015-computed-properties": { features: [ "object literal extensions / computed properties", ], }, "transform-es2015-destructuring": { features: [ "destructuring, assignment", "destructuring, declarations", "destructuring, parameters", ], }, "transform-es2015-duplicate-keys": { features: [ "miscellaneous / duplicate property names in strict mode", ], }, "transform-es2015-for-of": { features: [ "for..of loops", ], }, "transform-es2015-function-name": { features: [ "function \"name\" property", ] }, "transform-es2015-literals": { features: [ "Unicode code point escapes", ], }, "transform-es2015-object-super": { features: [ "super", ], }, "transform-es2015-parameters": { features: [ "default function parameters", "rest parameters", ], }, "transform-es2015-shorthand-properties": { features: [ "object literal extensions / shorthand properties", ], }, "transform-es2015-spread": { features: [ "spread (...) operator", ], }, "transform-es2015-sticky-regex": { features: [ "RegExp \"y\" and \"u\" flags / \"y\" flag, lastIndex", "RegExp \"y\" and \"u\" flags / \"y\" flag", ], }, "transform-es2015-template-literals": { features: [ "template literals", ], }, "transform-es2015-typeof-symbol": { features: [ "Symbol / typeof support" ], }, "transform-es2015-unicode-regex": { features: [ "RegExp \"y\" and \"u\" flags / \"u\" flag, case folding", "RegExp \"y\" and \"u\" flags / \"u\" flag, Unicode code point escapes", "RegExp \"y\" and \"u\" flags / \"u\" flag", ], }, "transform-regenerator": { features: [ "generators", ], }, // es2016 "transform-exponentiation-operator": { features: [ "exponentiation (**) operator", ], }, // es2017 "transform-async-to-generator": { features: [ "async functions", ], }, "syntax-trailing-function-commas": { features: [ "trailing commas in function syntax", ], } }; babel-preset-env-1.6.0/data/plugins.json000066400000000000000000000106561312672652300201550ustar00rootroot00000000000000{ "check-es2015-constants": { "chrome": "49", "edge": "14", "firefox": "51", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "transform-es2015-arrow-functions": { "chrome": "47", "edge": "13", "firefox": "45", "safari": "10", "node": "6", "ios": "10", "opera": "34", "electron": "0.36" }, "transform-es2015-block-scoped-functions": { "chrome": "41", "edge": "12", "firefox": "46", "safari": "10", "node": "4", "ie": "11", "ios": "10", "opera": "28", "electron": "0.24" }, "transform-es2015-block-scoping": { "chrome": "49", "edge": "14", "firefox": "51", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "transform-es2015-classes": { "chrome": "46", "edge": "13", "firefox": "45", "safari": "10", "node": "5", "ios": "10", "opera": "33", "electron": "0.36" }, "transform-es2015-computed-properties": { "chrome": "44", "edge": "12", "firefox": "34", "safari": "7.1", "node": "4", "ios": "8", "opera": "31", "electron": "0.31" }, "transform-es2015-destructuring": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "transform-es2015-duplicate-keys": { "chrome": "42", "edge": "12", "firefox": "34", "safari": "9", "node": "4", "ios": "9", "opera": "29", "electron": "0.27" }, "transform-es2015-for-of": { "chrome": "51", "edge": "15", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "transform-es2015-function-name": { "chrome": "51", "firefox": "53", "safari": "10", "node": "6.5", "ios": "10", "opera": "38", "electron": "1.2" }, "transform-es2015-literals": { "chrome": "44", "edge": "12", "firefox": "53", "safari": "9", "node": "4", "ios": "9", "opera": "31", "electron": "0.31" }, "transform-es2015-object-super": { "chrome": "46", "edge": "13", "firefox": "45", "safari": "10", "node": "5", "ios": "10", "opera": "33", "electron": "0.36" }, "transform-es2015-parameters": { "chrome": "49", "edge": "14", "firefox": "53", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "transform-es2015-shorthand-properties": { "chrome": "43", "edge": "12", "firefox": "33", "safari": "9", "node": "4", "ios": "9", "opera": "30", "electron": "0.29" }, "transform-es2015-spread": { "chrome": "46", "edge": "13", "firefox": "36", "safari": "10", "node": "5", "ios": "10", "opera": "33", "electron": "0.36" }, "transform-es2015-sticky-regex": { "chrome": "49", "edge": "13", "firefox": "3", "safari": "10", "node": "6", "ios": "10", "opera": "36", "electron": "1" }, "transform-es2015-template-literals": { "chrome": "41", "edge": "13", "firefox": "34", "safari": "9", "node": "4", "ios": "9", "opera": "28", "electron": "0.24" }, "transform-es2015-typeof-symbol": { "chrome": "38", "edge": "12", "firefox": "36", "safari": "9", "node": "0.12", "ios": "9", "opera": "25", "electron": "0.2" }, "transform-es2015-unicode-regex": { "chrome": "50", "edge": "13", "firefox": "46", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "transform-regenerator": { "chrome": "50", "edge": "13", "firefox": "53", "safari": "10", "node": "6", "ios": "10", "opera": "37", "electron": "1.1" }, "transform-exponentiation-operator": { "chrome": "52", "edge": "14", "firefox": "52", "safari": "10.1", "node": "7", "ios": "10.3", "opera": "39", "electron": "1.3" }, "transform-async-to-generator": { "chrome": "55", "edge": "15", "firefox": "52", "safari": "10.1", "node": "7.6", "ios": "10.3", "opera": "42", "electron": "1.6" }, "syntax-trailing-function-commas": { "chrome": "58", "edge": "14", "firefox": "52", "safari": "10", "node": "8", "ios": "10", "opera": "45", "electron": "1.7" } } babel-preset-env-1.6.0/package.json000066400000000000000000000072321312672652300171520ustar00rootroot00000000000000{ "name": "babel-preset-env", "version": "1.6.0", "description": "A Babel preset for each environment.", "author": "Henry Zhu ", "homepage": "https://babeljs.io/", "license": "MIT", "repository": "https://github.com/babel/babel-preset-env", "main": "lib/index.js", "scripts": { "build": "rimraf lib && babel src -d lib", "build-data": "node ./scripts/build-data.js", "changelog": "git log `git describe --tags --abbrev=0`..HEAD --pretty=format:' * %s (%an)' | grep -v 'Merge pull request'", "coverage": "BABEL_ENV=test nyc npm run test", "coverage-ci": "nyc report --reporter=json && codecov -f coverage/coverage-final.json", "dev": "babel -w src -d lib", "fix": "eslint . --fix", "lint": "eslint .", "prepublish": "npm run build", "test": "npm run build && npm run test-only", "test-ci": "nyc npm run test", "test-only": "mocha ./test --compilers js:babel-register -t 10000" }, "dependencies": { "babel-plugin-check-es2015-constants": "^6.22.0", "babel-plugin-syntax-trailing-function-commas": "^6.22.0", "babel-plugin-transform-async-to-generator": "^6.22.0", "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", "babel-plugin-transform-es2015-block-scoping": "^6.23.0", "babel-plugin-transform-es2015-classes": "^6.23.0", "babel-plugin-transform-es2015-computed-properties": "^6.22.0", "babel-plugin-transform-es2015-destructuring": "^6.23.0", "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", "babel-plugin-transform-es2015-for-of": "^6.23.0", "babel-plugin-transform-es2015-function-name": "^6.22.0", "babel-plugin-transform-es2015-literals": "^6.22.0", "babel-plugin-transform-es2015-modules-amd": "^6.22.0", "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", "babel-plugin-transform-es2015-modules-umd": "^6.23.0", "babel-plugin-transform-es2015-object-super": "^6.22.0", "babel-plugin-transform-es2015-parameters": "^6.23.0", "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", "babel-plugin-transform-es2015-spread": "^6.22.0", "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", "babel-plugin-transform-es2015-template-literals": "^6.22.0", "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", "babel-plugin-transform-exponentiation-operator": "^6.22.0", "babel-plugin-transform-regenerator": "^6.22.0", "browserslist": "^2.1.2", "invariant": "^2.2.2", "semver": "^5.3.0" }, "devDependencies": { "babel-cli": "^6.23.0", "babel-eslint": "^7.1.1", "babel-helper-fixtures": "^6.22.0", "babel-helper-plugin-test-runner": "^6.22.0", "babel-plugin-istanbul": "^3.1.2", "babel-preset-env": "^1.4.0", "babel-register": "^6.23.0", "chai": "^3.5.0", "codecov": "^1.0.1", "compat-table": "kangax/compat-table#d88c80ea6dcbc7064112eb46bb020718107892f7", "eslint": "^3.17.1", "eslint-config-babel": "^6.0.0", "eslint-plugin-flowtype": "^2.29.1", "fs-extra": "~2.0.0", "lodash": "^4.17.4", "mocha": "^3.2.0", "nyc": "^10.1.2", "electron-to-chromium": "^1.3.11", "rimraf": "^2.6.1" }, "babel": { "presets": [ [ "env", { "loose": true } ] ], "env": { "test": { "plugins": [ "istanbul" ] } } }, "nyc": { "all": true, "include": [ "src/*.js" ], "instrument": false, "sourceMap": false } } babel-preset-env-1.6.0/scripts/000077500000000000000000000000001312672652300163475ustar00rootroot00000000000000babel-preset-env-1.6.0/scripts/build-data.js000066400000000000000000000161231312672652300207160ustar00rootroot00000000000000"use strict"; const fs = require("fs"); const path = require("path"); const flatten = require("lodash/flatten"); const flattenDeep = require("lodash/flattenDeep"); const mapValues = require("lodash/mapValues"); const pickBy = require("lodash/pickBy"); const electronToChromiumVersions = require("electron-to-chromium").versions; const pluginFeatures = require("../data/plugin-features"); const builtInFeatures = require("../data/built-in-features"); const electronToChromiumKeys = Object.keys(electronToChromiumVersions).reverse(); const chromiumToElectronMap = electronToChromiumKeys.reduce( (all, electron) => { all[electronToChromiumVersions[electron]] = +electron; return all; } , {}); const chromiumToElectronVersions = Object.keys(chromiumToElectronMap); const findClosestElectronVersion = (targetVersion) => { const chromiumVersionsLength = chromiumToElectronVersions.length; const maxChromium = +chromiumToElectronVersions[chromiumVersionsLength - 1]; if (targetVersion > maxChromium) return null; const closestChrome = chromiumToElectronVersions.find( (version) => targetVersion <= version ); return chromiumToElectronMap[closestChrome]; }; const chromiumToElectron = (chromium) => chromiumToElectronMap[chromium] || findClosestElectronVersion(chromium); const renameTests = (tests, getName) => tests.map((test) => Object.assign({}, test, { name: getName(test.name) })); // The following is adapted from compat-table: // https://github.com/kangax/compat-table/blob/gh-pages/build.js // // It parses and interpolates data so environments that "equal" other // environments (node4 and chrome45), as well as familial relationships (edge // and ie11) can be handled properly. const envs = require("compat-table/environments"); const byTestSuite = (suite) => (browser) => { return Array.isArray(browser.test_suites) ? browser.test_suites.indexOf(suite) > -1 : true; }; const es6 = require("compat-table/data-es6"); es6.browsers = pickBy(envs, byTestSuite("es6")); const es2016plus = require("compat-table/data-es2016plus"); es2016plus.browsers = pickBy(envs, byTestSuite("es2016plus")); const interpolateAllResults = (rawBrowsers, tests) => { const interpolateResults = (res) => { let browser; let prevBrowser; let result; let prevResult; let prevBid; for (const bid in rawBrowsers) { // For browsers that are essentially equal to other browsers, // copy over the results. browser = rawBrowsers[bid]; if (browser.equals && res[bid] === undefined) { result = res[browser.equals]; res[bid] = browser.ignore_flagged && result === "flagged" ? false : result; // For each browser, check if the previous browser has the same // browser full name (e.g. Firefox) or family name (e.g. Chakra) as this one. } else if ( prevBrowser && (prevBrowser.full.replace(/,.+$/, "") === browser.full.replace(/,.+$/, "") || (browser.family !== undefined && prevBrowser.family === browser.family)) ) { // For each test, check if the previous browser has a result // that this browser lacks. result = res[bid]; prevResult = res[prevBid]; if (prevResult !== undefined && result === undefined) { res[bid] = prevResult; } } prevBrowser = browser; prevBid = bid; } }; // Now print the results. tests.forEach(function(t) { // Calculate the result totals for tests which consist solely of subtests. if ("subtests" in t) { t.subtests.forEach(function(e) { interpolateResults(e.res); }); } else { interpolateResults(t.res); } }); }; interpolateAllResults(es6.browsers, es6.tests); interpolateAllResults(es2016plus.browsers, es2016plus.tests); // End of compat-table code adaptation const environments = [ "chrome", "opera", "edge", "firefox", "safari", "node", "ie", "android", "ios", "phantom" ]; const compatibilityTests = flattenDeep([ es6, es2016plus, ].map((data) => data.tests.map((test) => { return test.subtests ? [test, renameTests(test.subtests, (name) => test.name + " / " + name)] : test; }) )); const getLowestImplementedVersion = ({ features }, env) => { const tests = flatten(compatibilityTests .filter((test) => { return features.indexOf(test.name) >= 0 || // for features === ["DataView"] // it covers "DataView (Int8)" and "DataView (UInt8)" features.length === 1 && test.name.indexOf(features[0]) === 0; }) .map((test) => { const isBuiltIn = test.category === "built-ins" || test.category === "built-in extensions"; return test.subtests ? test.subtests.map((subtest) => ({ name: `${test.name}/${subtest.name}`, res: subtest.res, isBuiltIn })) : { name: test.name, res: test.res, isBuiltIn }; }) ); const envTests = tests .map(({ res: test, name, isBuiltIn }, i) => { // Babel itself doesn't implement the feature correctly, // don't count against it // only doing this for built-ins atm if (!test.babel && isBuiltIn) { return "-1"; } return Object.keys(test) .filter((t) => t.startsWith(env)) // Babel assumes strict mode .filter((test) => tests[i].res[test] === true || tests[i].res[test] === "strict") // normalize some keys .map((test) => test.replace("_", ".")) .filter((test) => !isNaN(parseFloat(test.replace(env, "")))) .shift(); }); const envFiltered = envTests.filter((t) => t); if (envTests.length > envFiltered.length || envTests.length === 0) { // envTests.forEach((test, i) => { // if (!test) { // // print unsupported features // if (env === 'node') { // console.log(`ENV(${env}): ${tests[i].name}`); // } // } // }); return null; } return envTests .map((str) => Number(str.replace(env, ""))) .reduce((a, b) => { return (a < b) ? b : a; }); }; const generateData = (environments, features) => { return mapValues(features, (options) => { if (!options.features) { options = { features: [options] }; } const plugin = {}; environments.forEach((env) => { const version = getLowestImplementedVersion(options, env); if (version !== null) { plugin[env] = version.toString(); } }); if (plugin.chrome) { // add opera if (plugin.chrome >= 28) { plugin.opera = (plugin.chrome - 13).toString(); } else if (plugin.chrome === 5) { plugin.opera = "12"; } // add electron const electronVersion = chromiumToElectron(plugin.chrome); if (electronVersion) { plugin.electron = electronVersion.toString(); } } return plugin; }); }; fs.writeFileSync( path.join(__dirname, "../data/plugins.json"), JSON.stringify(generateData(environments, pluginFeatures), null, 2) + "\n" ); fs.writeFileSync( path.join(__dirname, "../data/built-ins.json"), JSON.stringify(generateData(environments, builtInFeatures), null, 2) + "\n" ); babel-preset-env-1.6.0/scripts/smoke-test.js000077500000000000000000000025031312672652300210030ustar00rootroot00000000000000const fs = require("fs-extra"); const execSync = require("child_process").execSync; const path = require("path"); const pkg = require("../package.json"); let errorOccurred = false; const tempFolderPath = path.join(__dirname, "../tmp"); const packPath = path.join(__dirname, `../babel-preset-env-${pkg.version}.tgz`); try { console.log("Creating package"); execSync("npm pack"); console.log("Setting up smoke test"); fs.ensureDirSync(tempFolderPath); fs.writeFileSync( path.join(tempFolderPath, "package.json"), ` { "name": "babel-preset-env-smoke-test", "private": true, "version": "1.0.0", "scripts": { "build": "babel index.js --out-file index.es6" }, "dependencies": { "babel-cli": "*", "babel-preset-env": "${packPath}" } } `); fs.writeFileSync( path.join(tempFolderPath, ".babelrc"), ` { "presets": [ ["env", { modules: false, useBuiltIns: true }] ] } ` ); fs.writeFileSync( path.join(tempFolderPath, "index.js"), ` import "babel-polyfill"; 1 ** 2; ` ); process.chdir(tempFolderPath); console.log("Running smoke test"); execSync("npm install && npm run build"); } catch (e) { errorOccurred = true; } console.log("Cleaning up"); fs.removeSync(tempFolderPath); fs.removeSync(packPath); process.exit(errorOccurred ? 1 : 0); babel-preset-env-1.6.0/src/000077500000000000000000000000001312672652300154475ustar00rootroot00000000000000babel-preset-env-1.6.0/src/default-includes.js000066400000000000000000000001371312672652300212360ustar00rootroot00000000000000export const defaultWebIncludes = [ "web.timers", "web.immediate", "web.dom.iterable" ]; babel-preset-env-1.6.0/src/index.js000066400000000000000000000130751312672652300171220ustar00rootroot00000000000000import semver from "semver"; import builtInsList from "../data/built-ins.json"; import { defaultWebIncludes } from "./default-includes"; import moduleTransformations from "./module-transformations"; import normalizeOptions from "./normalize-options.js"; import pluginList from "../data/plugins.json"; import transformPolyfillRequirePlugin from "./transform-polyfill-require-plugin"; import getTargets from "./targets-parser"; import { _extends, prettifyTargets, prettifyVersion, semverify } from "./utils"; /** * Determine if a transformation is required * * NOTE: This assumes `supportedEnvironments` has already been parsed by `getTargets` * * @param {Object} supportedEnvironments An Object containing environment keys and the lowest * supported version as a value * @param {Object} plugin An Object containing environment keys and the lowest * version the feature was implemented in as a value * @return {Boolean} Whether or not the transformation is required */ export const isPluginRequired = (supportedEnvironments, plugin) => { const targetEnvironments = Object.keys(supportedEnvironments); if (targetEnvironments.length === 0) { return true; } const isRequiredForEnvironments = targetEnvironments .filter((environment) => { // Feature is not implemented in that environment if (!plugin[environment]) { return true; } const lowestImplementedVersion = plugin[environment]; const lowestTargetedVersion = supportedEnvironments[environment]; if (!semver.valid(lowestTargetedVersion)) { throw new Error( // eslint-disable-next-line max-len `Invalid version passed for target "${environment}": "${lowestTargetedVersion}". Versions must be in semver format (major.minor.patch)`, ); } return semver.gt( semverify(lowestImplementedVersion), lowestTargetedVersion, ); }); return isRequiredForEnvironments.length > 0; }; let hasBeenLogged = false; const logPlugin = (plugin, targets, list) => { const envList = list[plugin] || {}; const filteredList = Object.keys(targets) .reduce((a, b) => { if (!envList[b] || semver.lt(targets[b], semverify(envList[b]))) { a[b] = prettifyVersion(targets[b]); } return a; }, {}); const logStr = ` ${plugin} ${JSON.stringify(filteredList)}`; console.log(logStr); }; const filterItem = (targets, exclusions, list, item) => { const isDefault = defaultWebIncludes.indexOf(item) >= 0; const notExcluded = exclusions.indexOf(item) === -1; if (isDefault) return notExcluded; const isRequired = isPluginRequired(targets, list[item]); return isRequired && notExcluded; }; const getBuiltInTargets = (targets) => { const builtInTargets = _extends({}, targets); if (builtInTargets.uglify != null) { delete builtInTargets.uglify; } return builtInTargets; }; export const transformIncludesAndExcludes = (opts) => ({ all: opts, plugins: opts.filter((opt) => !opt.match(/^(es\d+|web)\./)), builtIns: opts.filter((opt) => opt.match(/^(es\d+|web)\./)) }); function getPlatformSpecificDefaultFor(targets) { const targetNames = Object.keys(targets); const isAnyTarget = !targetNames.length; const isWebTarget = targetNames.some((name) => name !== "node"); return (isAnyTarget || isWebTarget) ? defaultWebIncludes : []; } export default function buildPreset(context, opts = {}) { const validatedOptions = normalizeOptions(opts); const { debug, loose, moduleType, spec, useBuiltIns } = validatedOptions; const targets = getTargets(validatedOptions.targets); const include = transformIncludesAndExcludes(validatedOptions.include); const exclude = transformIncludesAndExcludes(validatedOptions.exclude); const filterPlugins = filterItem.bind(null, targets, exclude.plugins, pluginList); const transformations = Object.keys(pluginList) .filter(filterPlugins) .concat(include.plugins); let polyfills; let polyfillTargets; if (useBuiltIns) { polyfillTargets = getBuiltInTargets(targets); const filterBuiltIns = filterItem.bind(null, polyfillTargets, exclude.builtIns, builtInsList); polyfills = Object.keys(builtInsList) .concat(getPlatformSpecificDefaultFor(polyfillTargets)) .filter(filterBuiltIns) .concat(include.builtIns); } if (debug && !hasBeenLogged) { hasBeenLogged = true; console.log("babel-preset-env: `DEBUG` option"); console.log("\nUsing targets:"); console.log(JSON.stringify(prettifyTargets(targets), null, 2)); console.log(`\nModules transform: ${moduleType}`); console.log("\nUsing plugins:"); transformations.forEach((transform) => { logPlugin(transform, targets, pluginList); }); if (useBuiltIns && polyfills.length) { console.log("\nUsing polyfills:"); polyfills.forEach((polyfill) => { logPlugin(polyfill, polyfillTargets, builtInsList); }); } } const regenerator = transformations.indexOf("transform-regenerator") >= 0; const modulePlugin = moduleType !== false && moduleTransformations[moduleType]; const plugins = []; // NOTE: not giving spec here yet to avoid compatibility issues when // babel-plugin-transform-es2015-modules-commonjs gets its spec mode modulePlugin && plugins.push([require(`babel-plugin-${modulePlugin}`), { loose }]); plugins.push(...transformations.map((pluginName) => [require(`babel-plugin-${pluginName}`), { spec, loose }] )); useBuiltIns && plugins.push([transformPolyfillRequirePlugin, { polyfills, regenerator }]); return { plugins }; } babel-preset-env-1.6.0/src/module-transformations.js000066400000000000000000000003131312672652300225160ustar00rootroot00000000000000export default { "amd": "transform-es2015-modules-amd", "commonjs": "transform-es2015-modules-commonjs", "systemjs": "transform-es2015-modules-systemjs", "umd": "transform-es2015-modules-umd" }; babel-preset-env-1.6.0/src/normalize-options.js000066400000000000000000000070541312672652300215040ustar00rootroot00000000000000import invariant from "invariant"; import builtInsList from "../data/built-ins.json"; import { defaultWebIncludes } from "./default-includes"; import moduleTransformations from "./module-transformations"; import pluginFeatures from "../data/plugin-features"; const validIncludesAndExcludes = [ ...Object.keys(pluginFeatures), ...Object.keys(moduleTransformations).map((m) => moduleTransformations[m]), ...Object.keys(builtInsList), ...defaultWebIncludes, ]; let hasBeenWarned = false; export const validateIncludesAndExcludes = (opts = [], type) => { invariant( Array.isArray(opts), `Invalid Option: The '${type}' option must be an Array of plugins/built-ins` ); const unknownOpts = []; opts.forEach((opt) => { if (validIncludesAndExcludes.indexOf(opt) === -1) { unknownOpts.push(opt); } }); invariant( unknownOpts.length === 0, `Invalid Option: The plugins/built-ins '${unknownOpts}' passed to the '${type}' option are not valid. Please check data/[plugin-features|built-in-features].js in babel-preset-env` ); return opts; }; export const normalizePluginName = (plugin) => plugin.replace(/^babel-plugin-/, ""); export const normalizePluginNames = (plugins) => plugins.map(normalizePluginName); export const checkDuplicateIncludeExcludes = (include = [], exclude = []) => { const duplicates = include.filter( (opt) => exclude.indexOf(opt) >= 0 ); invariant( duplicates.length === 0, `Invalid Option: The plugins/built-ins '${duplicates}' were found in both the "include" and "exclude" options.` ); }; export const validateBoolOption = (name, value, defaultValue) => { if (typeof value === "undefined") { value = defaultValue; } if (typeof value !== "boolean") { throw new Error(`Preset env: '${name}' option must be a boolean.`); } return value; }; export const validateLooseOption = (looseOpt) => validateBoolOption("loose", looseOpt, false); export const validateSpecOption = (specOpt) => validateBoolOption("spec", specOpt, false); export const validateModulesOption = (modulesOpt = "commonjs") => { invariant( modulesOpt === false || Object.keys(moduleTransformations).indexOf(modulesOpt) > -1, `Invalid Option: The 'modules' option must be either 'false' to indicate no modules, or a module type which can be be one of: 'commonjs' (default), 'amd', 'umd', 'systemjs'.` ); return modulesOpt; }; export default function normalizeOptions(opts) { // TODO: remove whitelist in favor of include in next major if (opts.whitelist && !hasBeenWarned) { console.warn( `Deprecation Warning: The "whitelist" option has been deprecated in favor of "include" to match the newly added "exclude" option (instead of "blacklist").` ); hasBeenWarned = true; } invariant( !(opts.whitelist && opts.include), `Invalid Option: The "whitelist" and the "include" option are the same and one can be used at a time` ); if (opts.exclude) { opts.exclude = normalizePluginNames(opts.exclude); } if (opts.whitelist || opts.include) { opts.include = normalizePluginNames(opts.whitelist || opts.include); } checkDuplicateIncludeExcludes(opts.include, opts.exclude); return { debug: opts.debug, exclude: validateIncludesAndExcludes(opts.exclude, "exclude"), include: validateIncludesAndExcludes(opts.include, "include"), loose: validateLooseOption(opts.loose), moduleType: validateModulesOption(opts.modules), spec: validateSpecOption(opts.spec), targets: opts.targets, useBuiltIns: opts.useBuiltIns }; } babel-preset-env-1.6.0/src/targets-parser.js000066400000000000000000000062141312672652300207530ustar00rootroot00000000000000import browserslist from "browserslist"; import semver from "semver"; import { semverify } from "./utils"; const browserNameMap = { android: "android", chrome: "chrome", and_chr: "chrome", edge: "edge", firefox: "firefox", ie: "ie", ios_saf: "ios", safari: "safari", }; const isBrowsersQueryValid = (browsers) => typeof browsers === "string" || Array.isArray(browsers); const semverMin = (first, second) => { return first && semver.lt(first, second) ? first : second; }; const getLowestVersions = (browsers) => { return browsers.reduce( (all, browser) => { const [browserName, browserVersion] = browser.split(" "); const normalizedBrowserName = browserNameMap[browserName]; if (!normalizedBrowserName) { return all; } try { // Browser version can return as "10.0-10.2" const splitVersion = browserVersion.split("-")[0]; const parsedBrowserVersion = semverify(splitVersion); all[normalizedBrowserName] = semverMin( all[normalizedBrowserName], parsedBrowserVersion, ); } catch (e) {} return all; }, {}, ); }; const outputDecimalWarning = (decimalTargets) => { if (!decimalTargets || !decimalTargets.length) { return; } console.log("Warning, the following targets are using a decimal version:"); console.log(""); decimalTargets.forEach(({ target, value }) => console.log(` ${target}: ${value}`)); console.log(""); console.log( "We recommend using a string for minor/patch versions to avoid numbers like 6.10", ); console.log("getting parsed as 6.1, which can lead to unexpected behavior."); console.log(""); }; const targetParserMap = { __default: (target, value) => [target, semverify(value)], // Parse `node: true` and `node: "current"` to version node: (target, value) => { const parsed = value === true || value === "current" ? process.versions.node : semverify(value); return [target, parsed]; }, // Only valid value for Uglify is `true` uglify: (target, value) => [target, value === true], }; const getTargets = (targets = {}) => { let targetOpts = {}; // Parse browsers target via browserslist if (isBrowsersQueryValid(targets.browsers)) { targetOpts = getLowestVersions(browserslist(targets.browsers)); } // Parse remaining targets const parsed = Object.keys(targets).reduce( (results, target) => { if (target !== "browsers") { const value = targets[target]; // Warn when specifying minor/patch as a decimal if (typeof value === "number" && value % 1 !== 0) { results.decimalWarnings.push({ target, value }); } // Check if we have a target parser? const parser = targetParserMap[target] || targetParserMap.__default; const [parsedTarget, parsedValue] = parser(target, value); if (parsedValue) { results.targets[parsedTarget] = parsedValue; } } return results; }, { targets: targetOpts, decimalWarnings: [], }, ); outputDecimalWarning(parsed.decimalWarnings); return parsed.targets; }; export default getTargets; babel-preset-env-1.6.0/src/transform-polyfill-require-plugin.js000066400000000000000000000053651312672652300246270ustar00rootroot00000000000000function isPolyfillSource(value) { return value === "babel-polyfill" || value === "core-js"; } export default function ({ types: t }) { function createImportDeclaration(polyfill) { const declar = t.importDeclaration([], t.stringLiteral(polyfill)); declar._blockHoist = 3; return declar; } function createRequireStatement(polyfill) { return t.expressionStatement( t.callExpression( t.identifier("require"), [ t.stringLiteral(polyfill) ] ) ); } function isRequire(path) { return t.isExpressionStatement(path.node) && t.isCallExpression(path.node.expression) && t.isIdentifier(path.node.expression.callee) && path.node.expression.callee.name === "require" && path.node.expression.arguments.length === 1 && t.isStringLiteral(path.node.expression.arguments[0]) && isPolyfillSource(path.node.expression.arguments[0].value); } function createImport(polyfill, requireType, core) { if (core) { polyfill = `core-js/modules/${polyfill}`; } if (requireType === "import") { return createImportDeclaration(polyfill); } else { return createRequireStatement(polyfill); } } function createImports(polyfills, requireType, regenerator) { const imports = polyfills .filter((el, i, arr) => arr.indexOf(el) === i) .map((polyfill) => createImport(polyfill, requireType, true)); return [ ...imports, regenerator && createImport("regenerator-runtime/runtime", requireType) ].filter(Boolean); } const isPolyfillImport = { ImportDeclaration(path, state) { if (path.node.specifiers.length === 0 && isPolyfillSource(path.node.source.value)) { this.numPolyfillImports++; if (this.numPolyfillImports > 1) { path.remove(); return; } path.replaceWithMultiple( createImports(state.opts.polyfills, "import", state.opts.regenerator) ); } }, Program(path, state) { if (!state.opts.polyfills) { throw path.buildCodeFrameError(` There was an issue in "babel-preset-env" such that the "polyfills" option was not correctly passed to the "transform-polyfill-require" plugin `); } path.get("body").forEach((bodyPath) => { if (isRequire(bodyPath)) { this.numPolyfillImports++; if (this.numPolyfillImports > 1) { path.remove(); return; } bodyPath.replaceWithMultiple( createImports(state.opts.polyfills, "require", state.opts.regenerator) ); } }); } }; return { name: "transform-polyfill-require", visitor: isPolyfillImport, pre() { this.numPolyfillImports = 0; } }; } babel-preset-env-1.6.0/src/utils.js000066400000000000000000000025241312672652300171500ustar00rootroot00000000000000// @flow import semver from "semver"; export const _extends = Object.assign || function(target) { for (let i = 1; i < arguments.length; i++) { const source = arguments[i]; for (const key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; // Convert version to a semver value. // 2.5 -> 2.5.0; 1 -> 1.0.0; export const semverify = (version) => { if (typeof version === "string" && semver.valid(version)) { return version; } const split = version.toString().split("."); while (split.length < 3) { split.push(0); } return split.join("."); }; export const prettifyVersion = (version) => { if (typeof version !== "string") { return version; } const parts = [semver.major(version)]; const minor = semver.minor(version); const patch = semver.patch(version); if (minor || patch) { parts.push(minor); } if (patch) { parts.push(patch); } return parts.join("."); }; export const prettifyTargets = (targets = {}) => { return Object.keys(targets).reduce( (results, target) => { let value = targets[target]; if (typeof value === "string") { value = prettifyVersion(value); } results[target] = value; return results; }, {}, ); }; babel-preset-env-1.6.0/test/000077500000000000000000000000001312672652300156375ustar00rootroot00000000000000babel-preset-env-1.6.0/test/.eslintrc000066400000000000000000000001101312672652300174530ustar00rootroot00000000000000{ "env": { "mocha": true }, "rules": { "max-len": 0 } } babel-preset-env-1.6.0/test/debug-fixtures.js000066400000000000000000000047041312672652300211370ustar00rootroot00000000000000const chai = require("chai"); const child = require("child_process"); const fs = require("fs-extra"); const helper = require("babel-helper-fixtures"); const path = require("path"); const fixtureLoc = path.join(__dirname, "debug-fixtures"); const tmpLoc = path.join(__dirname, "tmp"); const clear = () => { process.chdir(__dirname); if (fs.existsSync(tmpLoc)) fs.removeSync(tmpLoc); fs.mkdirSync(tmpLoc); process.chdir(tmpLoc); }; const saveInFiles = (files) => { Object.keys(files).forEach((filename) => { const content = files[filename]; fs.outputFileSync(filename, content); }); }; const assertTest = (stdout, stderr, opts) => { stderr = stderr.trim(); if (stderr) { throw new Error("stderr:\n" + stderr); } stdout = stdout.trim(); stdout = stdout.replace(/\\/g, "/"); if (opts.stdout) { const expectStdout = opts.stdout.trim(); chai.expect(stdout).to.equal(expectStdout, "stdout didn't match"); } else { const file = path.join(opts.testLoc, "stdout.txt"); console.log(`New test file created: ${file}`); fs.outputFileSync(file, stdout); } }; const buildTest = (opts) => { const binLoc = path.join(process.cwd(), "node_modules/.bin/babel"); return (callback) => { clear(); saveInFiles(opts.inFiles); let args = [binLoc]; args = args.concat(opts.args); const spawn = child.spawn(process.execPath, args); let stdout = ""; let stderr = ""; spawn.stdout.on("data", (chunk) => stdout += chunk); spawn.stderr.on("data", (chunk) => stderr += chunk); spawn.on("close", () => { let err; try { assertTest(stdout, stderr, opts); } catch (e) { err = e; } callback(err); }); }; }; describe("debug output", () => { fs.readdirSync(fixtureLoc).forEach((testName) => { if (testName.slice(0, 1) === ".") return; const testLoc = path.join(fixtureLoc, testName); const opts = { args: ["src", "--out-dir", "lib"], testLoc: testLoc, }; const stdoutLoc = path.join(testLoc, "stdout.txt"); if (fs.existsSync(stdoutLoc)) { opts.stdout = helper.readFile(stdoutLoc); } const optionsLoc = path.join(testLoc, "options.json"); if (!fs.existsSync(optionsLoc)) { throw new Error(`Debug test '${testName}' is missing an options.json file`); } opts.inFiles = { "src/in.js": "", ".babelrc": helper.readFile(optionsLoc), }; it(testName, buildTest(opts)); }); }); babel-preset-env-1.6.0/test/debug-fixtures/000077500000000000000000000000001312672652300205745ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/android/000077500000000000000000000000001312672652300222145ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/android/options.json000066400000000000000000000002441312672652300246020ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "browsers": [ "Android >= 4" ] }, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/debug-fixtures/android/stdout.txt000066400000000000000000000105301312672652300242760ustar00rootroot00000000000000babel-preset-env: `DEBUG` option Using targets: { "android": "4" } Modules transform: commonjs Using plugins: check-es2015-constants {"android":"4"} transform-es2015-arrow-functions {"android":"4"} transform-es2015-block-scoped-functions {"android":"4"} transform-es2015-block-scoping {"android":"4"} transform-es2015-classes {"android":"4"} transform-es2015-computed-properties {"android":"4"} transform-es2015-destructuring {"android":"4"} transform-es2015-duplicate-keys {"android":"4"} transform-es2015-for-of {"android":"4"} transform-es2015-function-name {"android":"4"} transform-es2015-literals {"android":"4"} transform-es2015-object-super {"android":"4"} transform-es2015-parameters {"android":"4"} transform-es2015-shorthand-properties {"android":"4"} transform-es2015-spread {"android":"4"} transform-es2015-sticky-regex {"android":"4"} transform-es2015-template-literals {"android":"4"} transform-es2015-typeof-symbol {"android":"4"} transform-es2015-unicode-regex {"android":"4"} transform-regenerator {"android":"4"} transform-exponentiation-operator {"android":"4"} transform-async-to-generator {"android":"4"} syntax-trailing-function-commas {"android":"4"} Using polyfills: es6.typed.array-buffer {"android":"4"} es6.typed.int8-array {"android":"4"} es6.typed.uint8-array {"android":"4"} es6.typed.uint8-clamped-array {"android":"4"} es6.typed.int16-array {"android":"4"} es6.typed.uint16-array {"android":"4"} es6.typed.int32-array {"android":"4"} es6.typed.uint32-array {"android":"4"} es6.typed.float32-array {"android":"4"} es6.typed.float64-array {"android":"4"} es6.map {"android":"4"} es6.set {"android":"4"} es6.weak-map {"android":"4"} es6.weak-set {"android":"4"} es6.reflect.apply {"android":"4"} es6.reflect.construct {"android":"4"} es6.reflect.define-property {"android":"4"} es6.reflect.delete-property {"android":"4"} es6.reflect.get {"android":"4"} es6.reflect.get-own-property-descriptor {"android":"4"} es6.reflect.get-prototype-of {"android":"4"} es6.reflect.has {"android":"4"} es6.reflect.is-extensible {"android":"4"} es6.reflect.own-keys {"android":"4"} es6.reflect.prevent-extensions {"android":"4"} es6.reflect.set {"android":"4"} es6.reflect.set-prototype-of {"android":"4"} es6.promise {"android":"4"} es6.symbol {"android":"4"} es6.object.assign {"android":"4"} es6.object.is {"android":"4"} es6.object.set-prototype-of {"android":"4"} es6.function.name {"android":"4"} es6.string.raw {"android":"4"} es6.string.from-code-point {"android":"4"} es6.string.code-point-at {"android":"4"} es6.string.repeat {"android":"4"} es6.string.starts-with {"android":"4"} es6.string.ends-with {"android":"4"} es6.string.includes {"android":"4"} es6.regexp.flags {"android":"4"} es6.regexp.match {"android":"4"} es6.regexp.replace {"android":"4"} es6.regexp.split {"android":"4"} es6.regexp.search {"android":"4"} es6.array.from {"android":"4"} es6.array.of {"android":"4"} es6.array.copy-within {"android":"4"} es6.array.find {"android":"4"} es6.array.find-index {"android":"4"} es6.array.fill {"android":"4"} es6.array.iterator {"android":"4"} es6.number.is-finite {"android":"4"} es6.number.is-integer {"android":"4"} es6.number.is-safe-integer {"android":"4"} es6.number.is-nan {"android":"4"} es6.number.epsilon {"android":"4"} es6.number.min-safe-integer {"android":"4"} es6.number.max-safe-integer {"android":"4"} es6.math.acosh {"android":"4"} es6.math.asinh {"android":"4"} es6.math.atanh {"android":"4"} es6.math.cbrt {"android":"4"} es6.math.clz32 {"android":"4"} es6.math.cosh {"android":"4"} es6.math.expm1 {"android":"4"} es6.math.fround {"android":"4"} es6.math.hypot {"android":"4"} es6.math.imul {"android":"4"} es6.math.log1p {"android":"4"} es6.math.log10 {"android":"4"} es6.math.log2 {"android":"4"} es6.math.sign {"android":"4"} es6.math.sinh {"android":"4"} es6.math.tanh {"android":"4"} es6.math.trunc {"android":"4"} es7.array.includes {"android":"4"} es7.object.values {"android":"4"} es7.object.entries {"android":"4"} es7.object.get-own-property-descriptors {"android":"4"} es7.string.pad-start {"android":"4"} es7.string.pad-end {"android":"4"} web.timers {"android":"4"} web.immediate {"android":"4"} web.dom.iterable {"android":"4"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/builtins-uglify/000077500000000000000000000000001312672652300237225ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/builtins-uglify/options.json000066400000000000000000000003021312672652300263030ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "chrome": 55, "uglify": true }, "useBuiltIns": true, "modules": false }] ] } babel-preset-env-1.6.0/test/debug-fixtures/builtins-uglify/stdout.txt000066400000000000000000000026731312672652300260150ustar00rootroot00000000000000babel-preset-env: `DEBUG` option Using targets: { "chrome": "55", "uglify": true } Modules transform: false Using plugins: check-es2015-constants {"uglify":true} transform-es2015-arrow-functions {"uglify":true} transform-es2015-block-scoped-functions {"uglify":true} transform-es2015-block-scoping {"uglify":true} transform-es2015-classes {"uglify":true} transform-es2015-computed-properties {"uglify":true} transform-es2015-destructuring {"uglify":true} transform-es2015-duplicate-keys {"uglify":true} transform-es2015-for-of {"uglify":true} transform-es2015-function-name {"uglify":true} transform-es2015-literals {"uglify":true} transform-es2015-object-super {"uglify":true} transform-es2015-parameters {"uglify":true} transform-es2015-shorthand-properties {"uglify":true} transform-es2015-spread {"uglify":true} transform-es2015-sticky-regex {"uglify":true} transform-es2015-template-literals {"uglify":true} transform-es2015-typeof-symbol {"uglify":true} transform-es2015-unicode-regex {"uglify":true} transform-regenerator {"uglify":true} transform-exponentiation-operator {"uglify":true} transform-async-to-generator {"uglify":true} syntax-trailing-function-commas {"chrome":"55","uglify":true} Using polyfills: es7.string.pad-start {"chrome":"55"} es7.string.pad-end {"chrome":"55"} web.timers {"chrome":"55"} web.immediate {"chrome":"55"} web.dom.iterable {"chrome":"55"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/builtins/000077500000000000000000000000001312672652300224255ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/builtins/options.json000066400000000000000000000002721312672652300250140ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "browsers": "chrome >= 54, ie 10", "node": 6 }, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/debug-fixtures/builtins/stdout.txt000066400000000000000000000106071312672652300245140ustar00rootroot00000000000000babel-preset-env: `DEBUG` option Using targets: { "chrome": "54", "ie": "10", "node": "6" } Modules transform: commonjs Using plugins: check-es2015-constants {"ie":"10"} transform-es2015-arrow-functions {"ie":"10"} transform-es2015-block-scoped-functions {"ie":"10"} transform-es2015-block-scoping {"ie":"10"} transform-es2015-classes {"ie":"10"} transform-es2015-computed-properties {"ie":"10"} transform-es2015-destructuring {"ie":"10","node":"6"} transform-es2015-duplicate-keys {"ie":"10"} transform-es2015-for-of {"ie":"10","node":"6"} transform-es2015-function-name {"ie":"10","node":"6"} transform-es2015-literals {"ie":"10"} transform-es2015-object-super {"ie":"10"} transform-es2015-parameters {"ie":"10"} transform-es2015-shorthand-properties {"ie":"10"} transform-es2015-spread {"ie":"10"} transform-es2015-sticky-regex {"ie":"10"} transform-es2015-template-literals {"ie":"10"} transform-es2015-typeof-symbol {"ie":"10"} transform-es2015-unicode-regex {"ie":"10"} transform-regenerator {"ie":"10"} transform-exponentiation-operator {"ie":"10","node":"6"} transform-async-to-generator {"chrome":"54","ie":"10","node":"6"} syntax-trailing-function-commas {"chrome":"54","ie":"10","node":"6"} Using polyfills: es6.typed.array-buffer {"ie":"10","node":"6"} es6.typed.int8-array {"ie":"10","node":"6"} es6.typed.uint8-array {"ie":"10","node":"6"} es6.typed.uint8-clamped-array {"ie":"10","node":"6"} es6.typed.int16-array {"ie":"10","node":"6"} es6.typed.uint16-array {"ie":"10","node":"6"} es6.typed.int32-array {"ie":"10","node":"6"} es6.typed.uint32-array {"ie":"10","node":"6"} es6.typed.float32-array {"ie":"10","node":"6"} es6.typed.float64-array {"ie":"10","node":"6"} es6.map {"ie":"10","node":"6"} es6.set {"ie":"10","node":"6"} es6.weak-map {"ie":"10","node":"6"} es6.weak-set {"ie":"10","node":"6"} es6.reflect.apply {"ie":"10"} es6.reflect.construct {"ie":"10"} es6.reflect.define-property {"ie":"10"} es6.reflect.delete-property {"ie":"10"} es6.reflect.get {"ie":"10"} es6.reflect.get-own-property-descriptor {"ie":"10"} es6.reflect.get-prototype-of {"ie":"10"} es6.reflect.has {"ie":"10"} es6.reflect.is-extensible {"ie":"10"} es6.reflect.own-keys {"ie":"10"} es6.reflect.prevent-extensions {"ie":"10"} es6.reflect.set {"ie":"10"} es6.reflect.set-prototype-of {"ie":"10"} es6.promise {"ie":"10","node":"6"} es6.symbol {"ie":"10","node":"6"} es6.object.assign {"ie":"10"} es6.object.is {"ie":"10"} es6.object.set-prototype-of {"ie":"10"} es6.function.name {"ie":"10","node":"6"} es6.string.raw {"ie":"10"} es6.string.from-code-point {"ie":"10"} es6.string.code-point-at {"ie":"10"} es6.string.repeat {"ie":"10"} es6.string.starts-with {"ie":"10"} es6.string.ends-with {"ie":"10"} es6.string.includes {"ie":"10"} es6.regexp.flags {"ie":"10"} es6.regexp.match {"ie":"10"} es6.regexp.replace {"ie":"10"} es6.regexp.split {"ie":"10"} es6.regexp.search {"ie":"10"} es6.array.from {"ie":"10","node":"6"} es6.array.of {"ie":"10"} es6.array.copy-within {"ie":"10"} es6.array.find {"ie":"10"} es6.array.find-index {"ie":"10"} es6.array.fill {"ie":"10"} es6.array.iterator {"ie":"10"} es6.number.is-finite {"ie":"10"} es6.number.is-integer {"ie":"10"} es6.number.is-safe-integer {"ie":"10"} es6.number.is-nan {"ie":"10"} es6.number.epsilon {"ie":"10"} es6.number.min-safe-integer {"ie":"10"} es6.number.max-safe-integer {"ie":"10"} es6.math.acosh {"ie":"10"} es6.math.asinh {"ie":"10"} es6.math.atanh {"ie":"10"} es6.math.cbrt {"ie":"10"} es6.math.clz32 {"ie":"10"} es6.math.cosh {"ie":"10"} es6.math.expm1 {"ie":"10"} es6.math.fround {"ie":"10"} es6.math.hypot {"ie":"10"} es6.math.imul {"ie":"10"} es6.math.log1p {"ie":"10"} es6.math.log10 {"ie":"10"} es6.math.log2 {"ie":"10"} es6.math.sign {"ie":"10"} es6.math.sinh {"ie":"10"} es6.math.tanh {"ie":"10"} es6.math.trunc {"ie":"10"} es7.array.includes {"ie":"10"} es7.object.values {"ie":"10","node":"6"} es7.object.entries {"ie":"10","node":"6"} es7.object.get-own-property-descriptors {"ie":"10","node":"6"} es7.string.pad-start {"chrome":"54","ie":"10","node":"6"} es7.string.pad-end {"chrome":"54","ie":"10","node":"6"} web.timers {"chrome":"54","ie":"10","node":"6"} web.immediate {"chrome":"54","ie":"10","node":"6"} web.dom.iterable {"chrome":"54","ie":"10","node":"6"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/electron/000077500000000000000000000000001312672652300224075ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/electron/options.json000066400000000000000000000002261312672652300247750ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "electron": 0.36 }, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/debug-fixtures/electron/stdout.txt000066400000000000000000000055241312672652300245000ustar00rootroot00000000000000Warning, the following targets are using a decimal version: electron: 0.36 We recommend using a string for minor/patch versions to avoid numbers like 6.10 getting parsed as 6.1, which can lead to unexpected behavior. babel-preset-env: `DEBUG` option Using targets: { "electron": "0.36" } Modules transform: commonjs Using plugins: check-es2015-constants {"electron":"0.36"} transform-es2015-block-scoping {"electron":"0.36"} transform-es2015-destructuring {"electron":"0.36"} transform-es2015-for-of {"electron":"0.36"} transform-es2015-function-name {"electron":"0.36"} transform-es2015-parameters {"electron":"0.36"} transform-es2015-sticky-regex {"electron":"0.36"} transform-es2015-unicode-regex {"electron":"0.36"} transform-regenerator {"electron":"0.36"} transform-exponentiation-operator {"electron":"0.36"} transform-async-to-generator {"electron":"0.36"} syntax-trailing-function-commas {"electron":"0.36"} Using polyfills: es6.typed.array-buffer {"electron":"0.36"} es6.typed.data-view {"electron":"0.36"} es6.typed.int8-array {"electron":"0.36"} es6.typed.uint8-array {"electron":"0.36"} es6.typed.uint8-clamped-array {"electron":"0.36"} es6.typed.int16-array {"electron":"0.36"} es6.typed.uint16-array {"electron":"0.36"} es6.typed.int32-array {"electron":"0.36"} es6.typed.uint32-array {"electron":"0.36"} es6.typed.float32-array {"electron":"0.36"} es6.typed.float64-array {"electron":"0.36"} es6.map {"electron":"0.36"} es6.set {"electron":"0.36"} es6.weak-map {"electron":"0.36"} es6.weak-set {"electron":"0.36"} es6.reflect.apply {"electron":"0.36"} es6.reflect.construct {"electron":"0.36"} es6.reflect.define-property {"electron":"0.36"} es6.reflect.delete-property {"electron":"0.36"} es6.reflect.get {"electron":"0.36"} es6.reflect.get-own-property-descriptor {"electron":"0.36"} es6.reflect.get-prototype-of {"electron":"0.36"} es6.reflect.has {"electron":"0.36"} es6.reflect.is-extensible {"electron":"0.36"} es6.reflect.own-keys {"electron":"0.36"} es6.reflect.prevent-extensions {"electron":"0.36"} es6.reflect.set {"electron":"0.36"} es6.reflect.set-prototype-of {"electron":"0.36"} es6.promise {"electron":"0.36"} es6.symbol {"electron":"0.36"} es6.function.name {"electron":"0.36"} es6.regexp.flags {"electron":"0.36"} es6.regexp.match {"electron":"0.36"} es6.regexp.replace {"electron":"0.36"} es6.regexp.split {"electron":"0.36"} es6.regexp.search {"electron":"0.36"} es6.array.from {"electron":"0.36"} es7.object.values {"electron":"0.36"} es7.object.entries {"electron":"0.36"} es7.object.get-own-property-descriptors {"electron":"0.36"} es7.string.pad-start {"electron":"0.36"} es7.string.pad-end {"electron":"0.36"} web.timers {"electron":"0.36"} web.immediate {"electron":"0.36"} web.dom.iterable {"electron":"0.36"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/plugins-only/000077500000000000000000000000001312672652300232345ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/plugins-only/options.json000066400000000000000000000004301312672652300256170ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "exclude": [ "transform-async-to-generator", "transform-regenerator", "transform-es2015-parameters" ], "targets": { "firefox": 52, "node": 7.4 } }] ] } babel-preset-env-1.6.0/test/debug-fixtures/plugins-only/stdout.txt000066400000000000000000000011411312672652300253140ustar00rootroot00000000000000Warning, the following targets are using a decimal version: node: 7.4 We recommend using a string for minor/patch versions to avoid numbers like 6.10 getting parsed as 6.1, which can lead to unexpected behavior. babel-preset-env: `DEBUG` option Using targets: { "firefox": "52", "node": "7.4" } Modules transform: commonjs Using plugins: transform-es2015-destructuring {"firefox":"52"} transform-es2015-for-of {"firefox":"52"} transform-es2015-function-name {"firefox":"52"} transform-es2015-literals {"firefox":"52"} syntax-trailing-function-commas {"node":"7.4"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/specific-targets/000077500000000000000000000000001312672652300240305ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/specific-targets/options.json000066400000000000000000000003121312672652300264120ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "browsers": "ie 10, ios 9, safari 7, edge 13, chrome 54, firefox 49" }, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/debug-fixtures/specific-targets/stdout.txt000066400000000000000000000152721312672652300261220ustar00rootroot00000000000000babel-preset-env: `DEBUG` option Using targets: { "chrome": "54", "edge": "13", "firefox": "49", "ie": "10", "ios": "9", "safari": "7" } Modules transform: commonjs Using plugins: check-es2015-constants {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-arrow-functions {"ie":"10","ios":"9","safari":"7"} transform-es2015-block-scoped-functions {"ie":"10","ios":"9","safari":"7"} transform-es2015-block-scoping {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-classes {"ie":"10","ios":"9","safari":"7"} transform-es2015-computed-properties {"ie":"10","safari":"7"} transform-es2015-destructuring {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-duplicate-keys {"ie":"10","safari":"7"} transform-es2015-for-of {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-function-name {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-literals {"firefox":"49","ie":"10","safari":"7"} transform-es2015-object-super {"ie":"10","ios":"9","safari":"7"} transform-es2015-parameters {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-es2015-shorthand-properties {"ie":"10","safari":"7"} transform-es2015-spread {"ie":"10","ios":"9","safari":"7"} transform-es2015-sticky-regex {"ie":"10","ios":"9","safari":"7"} transform-es2015-template-literals {"ie":"10","safari":"7"} transform-es2015-typeof-symbol {"ie":"10","safari":"7"} transform-es2015-unicode-regex {"ie":"10","ios":"9","safari":"7"} transform-regenerator {"firefox":"49","ie":"10","ios":"9","safari":"7"} transform-exponentiation-operator {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} transform-async-to-generator {"chrome":"54","edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} syntax-trailing-function-commas {"chrome":"54","edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} Using polyfills: es6.typed.array-buffer {"ie":"10","ios":"9","safari":"7"} es6.typed.int8-array {"ie":"10","ios":"9","safari":"7"} es6.typed.uint8-array {"ie":"10","ios":"9","safari":"7"} es6.typed.uint8-clamped-array {"ie":"10","ios":"9","safari":"7"} es6.typed.int16-array {"ie":"10","ios":"9","safari":"7"} es6.typed.uint16-array {"ie":"10","ios":"9","safari":"7"} es6.typed.int32-array {"ie":"10","ios":"9","safari":"7"} es6.typed.uint32-array {"ie":"10","ios":"9","safari":"7"} es6.typed.float32-array {"ie":"10","ios":"9","safari":"7"} es6.typed.float64-array {"ie":"10","ios":"9","safari":"7"} es6.map {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} es6.set {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} es6.weak-map {"edge":"13","firefox":"49","ie":"10","safari":"7"} es6.weak-set {"edge":"13","firefox":"49","ie":"10","safari":"7"} es6.reflect.apply {"ie":"10","ios":"9","safari":"7"} es6.reflect.construct {"ie":"10","ios":"9","safari":"7"} es6.reflect.define-property {"ie":"10","ios":"9","safari":"7"} es6.reflect.delete-property {"ie":"10","ios":"9","safari":"7"} es6.reflect.get {"ie":"10","ios":"9","safari":"7"} es6.reflect.get-own-property-descriptor {"ie":"10","ios":"9","safari":"7"} es6.reflect.get-prototype-of {"ie":"10","ios":"9","safari":"7"} es6.reflect.has {"ie":"10","ios":"9","safari":"7"} es6.reflect.is-extensible {"ie":"10","ios":"9","safari":"7"} es6.reflect.own-keys {"ie":"10","ios":"9","safari":"7"} es6.reflect.prevent-extensions {"ie":"10","ios":"9","safari":"7"} es6.reflect.set {"ie":"10","ios":"9","safari":"7"} es6.reflect.set-prototype-of {"ie":"10","ios":"9","safari":"7"} es6.promise {"ie":"10","ios":"9","safari":"7"} es6.symbol {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} es6.object.assign {"ie":"10","safari":"7"} es6.object.is {"ie":"10","safari":"7"} es6.object.set-prototype-of {"ie":"10","safari":"7"} es6.function.name {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} es6.string.raw {"ie":"10","safari":"7"} es6.string.from-code-point {"ie":"10","safari":"7"} es6.string.code-point-at {"ie":"10","safari":"7"} es6.string.repeat {"ie":"10","safari":"7"} es6.string.starts-with {"ie":"10","safari":"7"} es6.string.ends-with {"ie":"10","safari":"7"} es6.string.includes {"ie":"10","safari":"7"} es6.regexp.flags {"edge":"13","ie":"10","safari":"7"} es6.regexp.match {"edge":"13","ie":"10","ios":"9","safari":"7"} es6.regexp.replace {"edge":"13","ie":"10","ios":"9","safari":"7"} es6.regexp.split {"edge":"13","ie":"10","ios":"9","safari":"7"} es6.regexp.search {"edge":"13","ie":"10","ios":"9","safari":"7"} es6.array.from {"edge":"13","ie":"10","ios":"9","safari":"7"} es6.array.of {"ie":"10","safari":"7"} es6.array.copy-within {"ie":"10","safari":"7"} es6.array.find {"ie":"10","safari":"7"} es6.array.find-index {"ie":"10","safari":"7"} es6.array.fill {"ie":"10","safari":"7"} es6.array.iterator {"ie":"10","safari":"7"} es6.number.is-finite {"ie":"10","safari":"7"} es6.number.is-integer {"ie":"10","safari":"7"} es6.number.is-safe-integer {"ie":"10","safari":"7"} es6.number.is-nan {"ie":"10","safari":"7"} es6.number.epsilon {"ie":"10","safari":"7"} es6.number.min-safe-integer {"ie":"10","safari":"7"} es6.number.max-safe-integer {"ie":"10","safari":"7"} es6.math.acosh {"ie":"10","safari":"7"} es6.math.asinh {"ie":"10","safari":"7"} es6.math.atanh {"ie":"10","safari":"7"} es6.math.cbrt {"ie":"10","safari":"7"} es6.math.clz32 {"ie":"10","safari":"7"} es6.math.cosh {"ie":"10","safari":"7"} es6.math.expm1 {"ie":"10","safari":"7"} es6.math.fround {"ie":"10","safari":"7"} es6.math.hypot {"ie":"10","safari":"7"} es6.math.imul {"ie":"10"} es6.math.log1p {"ie":"10","safari":"7"} es6.math.log10 {"ie":"10","safari":"7"} es6.math.log2 {"ie":"10","safari":"7"} es6.math.sign {"ie":"10","safari":"7"} es6.math.sinh {"ie":"10","safari":"7"} es6.math.tanh {"ie":"10","safari":"7"} es6.math.trunc {"ie":"10","safari":"7"} es7.array.includes {"edge":"13","ie":"10","ios":"9","safari":"7"} es7.object.values {"edge":"13","ie":"10","ios":"9","safari":"7"} es7.object.entries {"edge":"13","ie":"10","ios":"9","safari":"7"} es7.object.get-own-property-descriptors {"edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} es7.string.pad-start {"chrome":"54","edge":"13","ie":"10","ios":"9","safari":"7"} es7.string.pad-end {"chrome":"54","edge":"13","ie":"10","ios":"9","safari":"7"} web.timers {"chrome":"54","edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} web.immediate {"chrome":"54","edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} web.dom.iterable {"chrome":"54","edge":"13","firefox":"49","ie":"10","ios":"9","safari":"7"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/versions-decimals/000077500000000000000000000000001312672652300242235ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/versions-decimals/options.json000066400000000000000000000002711312672652300266110ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "chrome": 54, "electron": 0.36, "node": 6.10, "ie": 10 } }] ] } babel-preset-env-1.6.0/test/debug-fixtures/versions-decimals/stdout.txt000066400000000000000000000033451312672652300263130ustar00rootroot00000000000000Warning, the following targets are using a decimal version: electron: 0.36 node: 6.1 We recommend using a string for minor/patch versions to avoid numbers like 6.10 getting parsed as 6.1, which can lead to unexpected behavior. babel-preset-env: `DEBUG` option Using targets: { "chrome": "54", "electron": "0.36", "node": "6.1", "ie": "10" } Modules transform: commonjs Using plugins: check-es2015-constants {"electron":"0.36","ie":"10"} transform-es2015-arrow-functions {"ie":"10"} transform-es2015-block-scoped-functions {"ie":"10"} transform-es2015-block-scoping {"electron":"0.36","ie":"10"} transform-es2015-classes {"ie":"10"} transform-es2015-computed-properties {"ie":"10"} transform-es2015-destructuring {"electron":"0.36","node":"6.1","ie":"10"} transform-es2015-duplicate-keys {"ie":"10"} transform-es2015-for-of {"electron":"0.36","node":"6.1","ie":"10"} transform-es2015-function-name {"electron":"0.36","node":"6.1","ie":"10"} transform-es2015-literals {"ie":"10"} transform-es2015-object-super {"ie":"10"} transform-es2015-parameters {"electron":"0.36","ie":"10"} transform-es2015-shorthand-properties {"ie":"10"} transform-es2015-spread {"ie":"10"} transform-es2015-sticky-regex {"electron":"0.36","ie":"10"} transform-es2015-template-literals {"ie":"10"} transform-es2015-typeof-symbol {"ie":"10"} transform-es2015-unicode-regex {"electron":"0.36","ie":"10"} transform-regenerator {"electron":"0.36","ie":"10"} transform-exponentiation-operator {"electron":"0.36","node":"6.1","ie":"10"} transform-async-to-generator {"chrome":"54","electron":"0.36","node":"6.1","ie":"10"} syntax-trailing-function-commas {"chrome":"54","electron":"0.36","node":"6.1","ie":"10"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/debug-fixtures/versions-strings/000077500000000000000000000000001312672652300241335ustar00rootroot00000000000000babel-preset-env-1.6.0/test/debug-fixtures/versions-strings/options.json000066400000000000000000000002451312672652300265220ustar00rootroot00000000000000{ "presets": [ ["../../lib", { "debug": true, "targets": { "chrome": "54", "node": "6.10", "ie": "10" } }] ] } babel-preset-env-1.6.0/test/debug-fixtures/versions-strings/stdout.txt000066400000000000000000000023521312672652300262200ustar00rootroot00000000000000babel-preset-env: `DEBUG` option Using targets: { "chrome": "54", "node": "6.10", "ie": "10" } Modules transform: commonjs Using plugins: check-es2015-constants {"ie":"10"} transform-es2015-arrow-functions {"ie":"10"} transform-es2015-block-scoped-functions {"ie":"10"} transform-es2015-block-scoping {"ie":"10"} transform-es2015-classes {"ie":"10"} transform-es2015-computed-properties {"ie":"10"} transform-es2015-destructuring {"ie":"10"} transform-es2015-duplicate-keys {"ie":"10"} transform-es2015-for-of {"ie":"10"} transform-es2015-function-name {"ie":"10"} transform-es2015-literals {"ie":"10"} transform-es2015-object-super {"ie":"10"} transform-es2015-parameters {"ie":"10"} transform-es2015-shorthand-properties {"ie":"10"} transform-es2015-spread {"ie":"10"} transform-es2015-sticky-regex {"ie":"10"} transform-es2015-template-literals {"ie":"10"} transform-es2015-typeof-symbol {"ie":"10"} transform-es2015-unicode-regex {"ie":"10"} transform-regenerator {"ie":"10"} transform-exponentiation-operator {"node":"6.10","ie":"10"} transform-async-to-generator {"chrome":"54","node":"6.10","ie":"10"} syntax-trailing-function-commas {"chrome":"54","node":"6.10","ie":"10"} src/in.js -> lib/in.jsbabel-preset-env-1.6.0/test/fixtures.js000066400000000000000000000000671312672652300200510ustar00rootroot00000000000000require("babel-helper-plugin-test-runner")(__dirname); babel-preset-env-1.6.0/test/fixtures/000077500000000000000000000000001312672652300175105ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/000077500000000000000000000000001312672652300224775ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/filters-duplicates/000077500000000000000000000000001312672652300263025ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/filters-duplicates/actual.js000066400000000000000000000000311312672652300301030ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/plugin-options/filters-duplicates/expected.js000066400000000000000000000001321312672652300304350ustar00rootroot00000000000000import "core-js/modules/es6.typed.data-view"; import "core-js/modules/es6.reflect.apply"; babel-preset-env-1.6.0/test/fixtures/plugin-options/filters-duplicates/options.json000066400000000000000000000003211312672652300306640ustar00rootroot00000000000000{ "plugins": [ ["../../../../lib/transform-polyfill-require-plugin", { "polyfills": [ "es6.typed.data-view", "es6.typed.data-view", "es6.reflect.apply" ] }] ] } babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-false/000077500000000000000000000000001312672652300261045ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-false/actual.js000066400000000000000000000000311312672652300277050ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-false/expected.js000066400000000000000000000000001312672652300302310ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-false/options.json000066400000000000000000000002141312672652300304670ustar00rootroot00000000000000{ "plugins": [ ["../../../../lib/transform-polyfill-require-plugin", { "regenerator": false, "polyfills": [] }] ] } babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-true/000077500000000000000000000000001312672652300257715ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-true/actual.js000066400000000000000000000000311312672652300275720ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-true/expected.js000066400000000000000000000000461312672652300301300ustar00rootroot00000000000000import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/plugin-options/regenerator-true/options.json000066400000000000000000000002131312672652300303530ustar00rootroot00000000000000{ "plugins": [ ["../../../../lib/transform-polyfill-require-plugin", { "regenerator": true, "polyfills": [] }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/000077500000000000000000000000001312672652300225035ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/core-js/000077500000000000000000000000001312672652300240455ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/core-js/actual.js000066400000000000000000000000221312672652300256460ustar00rootroot00000000000000import "core-js"; babel-preset-env-1.6.0/test/fixtures/preset-options/core-js/expected.js000066400000000000000000000003231312672652300262020ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable";babel-preset-env-1.6.0/test/fixtures/preset-options/core-js/options.json000066400000000000000000000002331312672652300264310ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/electron/000077500000000000000000000000001312672652300243165ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/electron/actual.js000066400000000000000000000000421312672652300261210ustar00rootroot00000000000000import "babel-polyfill"; a ** b; babel-preset-env-1.6.0/test/fixtures/preset-options/electron/expected.js000066400000000000000000000005711312672652300264600ustar00rootroot00000000000000import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; a ** b; babel-preset-env-1.6.0/test/fixtures/preset-options/electron/options.json000066400000000000000000000002401312672652300267000ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "electron": "1.4" }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/empty-options/000077500000000000000000000000001312672652300253325ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/empty-options/actual.js000066400000000000000000000000171312672652300271370ustar00rootroot00000000000000const a = "1"; babel-preset-env-1.6.0/test/fixtures/preset-options/empty-options/expected.js000066400000000000000000000000331312672652300274650ustar00rootroot00000000000000"use strict"; var a = "1";babel-preset-env-1.6.0/test/fixtures/preset-options/empty-options/options.json000066400000000000000000000000631312672652300277170ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", {}] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-built-ins/000077500000000000000000000000001312672652300260405ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-built-ins/actual.js000066400000000000000000000000301312672652300276400ustar00rootroot00000000000000import "babel-polyfill";babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-built-ins/expected.js000066400000000000000000000000001312672652300301650ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-built-ins/options.json000066400000000000000000000004761312672652300304350ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "modules": false, "useBuiltIns": true, "exclude": [ "es7.string.pad-start", "es7.string.pad-end", "web.timers", "web.immediate", "web.dom.iterable" ] }] ] }babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-include/000077500000000000000000000000001312672652300255555ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-include/actual.js000066400000000000000000000001071312672652300273620ustar00rootroot00000000000000import "babel-polyfill"; async function a() { await 1; } (() => {})babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-include/expected.js000066400000000000000000000003761312672652300277220ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "core-js/modules/es6.map"; async function a() { await 1; } (function () {}); babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-include/options.json000066400000000000000000000005711312672652300301460ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "modules": false, "useBuiltIns": true, "exclude": [ "transform-async-to-generator", "transform-regenerator", "es7.string.pad-start" ], "include": [ "transform-es2015-arrow-functions", "es6.map" ] }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-regenerator/000077500000000000000000000000001312672652300264475ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-regenerator/actual.js000066400000000000000000000000311312672652300302500ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-regenerator/expected.js000066400000000000000000000074741312672652300306220ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.data-view"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.object.assign"; import "core-js/modules/es6.object.is"; import "core-js/modules/es6.object.set-prototype-of"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.string.raw"; import "core-js/modules/es6.string.from-code-point"; import "core-js/modules/es6.string.code-point-at"; import "core-js/modules/es6.string.repeat"; import "core-js/modules/es6.string.starts-with"; import "core-js/modules/es6.string.ends-with"; import "core-js/modules/es6.string.includes"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es6.array.of"; import "core-js/modules/es6.array.copy-within"; import "core-js/modules/es6.array.find"; import "core-js/modules/es6.array.find-index"; import "core-js/modules/es6.array.fill"; import "core-js/modules/es6.array.iterator"; import "core-js/modules/es6.number.is-finite"; import "core-js/modules/es6.number.is-integer"; import "core-js/modules/es6.number.is-safe-integer"; import "core-js/modules/es6.number.is-nan"; import "core-js/modules/es6.number.epsilon"; import "core-js/modules/es6.number.min-safe-integer"; import "core-js/modules/es6.number.max-safe-integer"; import "core-js/modules/es6.math.acosh"; import "core-js/modules/es6.math.asinh"; import "core-js/modules/es6.math.atanh"; import "core-js/modules/es6.math.cbrt"; import "core-js/modules/es6.math.clz32"; import "core-js/modules/es6.math.cosh"; import "core-js/modules/es6.math.expm1"; import "core-js/modules/es6.math.fround"; import "core-js/modules/es6.math.hypot"; import "core-js/modules/es6.math.imul"; import "core-js/modules/es6.math.log1p"; import "core-js/modules/es6.math.log10"; import "core-js/modules/es6.math.log2"; import "core-js/modules/es6.math.sign"; import "core-js/modules/es6.math.sinh"; import "core-js/modules/es6.math.tanh"; import "core-js/modules/es6.math.trunc"; import "core-js/modules/es7.array.includes"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; babel-preset-env-1.6.0/test/fixtures/preset-options/exclude-regenerator/options.json000066400000000000000000000002261312672652300310350ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "modules": false, "useBuiltIns": true, "exclude": ["transform-regenerator"] }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/exclude/000077500000000000000000000000001312672652300241345ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/exclude/actual.js000066400000000000000000000000421312672652300257370ustar00rootroot00000000000000async function a() { await 1; } babel-preset-env-1.6.0/test/fixtures/preset-options/exclude/expected.js000066400000000000000000000000411312672652300262660ustar00rootroot00000000000000async function a() { await 1; }babel-preset-env-1.6.0/test/fixtures/preset-options/exclude/options.json000066400000000000000000000003161312672652300265220ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "modules": false, "useBuiltIns": true, "exclude": [ "transform-async-to-generator", "transform-regenerator" ] }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/ie-11-built-ins/000077500000000000000000000000001312672652300252235ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/ie-11-built-ins/actual.js000066400000000000000000000000311312672652300270240ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/ie-11-built-ins/expected.js000066400000000000000000000073761312672652300273770ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.object.assign"; import "core-js/modules/es6.object.is"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.string.raw"; import "core-js/modules/es6.string.from-code-point"; import "core-js/modules/es6.string.code-point-at"; import "core-js/modules/es6.string.repeat"; import "core-js/modules/es6.string.starts-with"; import "core-js/modules/es6.string.ends-with"; import "core-js/modules/es6.string.includes"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es6.array.of"; import "core-js/modules/es6.array.copy-within"; import "core-js/modules/es6.array.find"; import "core-js/modules/es6.array.find-index"; import "core-js/modules/es6.array.fill"; import "core-js/modules/es6.array.iterator"; import "core-js/modules/es6.number.is-finite"; import "core-js/modules/es6.number.is-integer"; import "core-js/modules/es6.number.is-safe-integer"; import "core-js/modules/es6.number.is-nan"; import "core-js/modules/es6.number.epsilon"; import "core-js/modules/es6.number.min-safe-integer"; import "core-js/modules/es6.number.max-safe-integer"; import "core-js/modules/es6.math.acosh"; import "core-js/modules/es6.math.asinh"; import "core-js/modules/es6.math.atanh"; import "core-js/modules/es6.math.cbrt"; import "core-js/modules/es6.math.clz32"; import "core-js/modules/es6.math.cosh"; import "core-js/modules/es6.math.expm1"; import "core-js/modules/es6.math.fround"; import "core-js/modules/es6.math.hypot"; import "core-js/modules/es6.math.imul"; import "core-js/modules/es6.math.log1p"; import "core-js/modules/es6.math.log10"; import "core-js/modules/es6.math.log2"; import "core-js/modules/es6.math.sign"; import "core-js/modules/es6.math.sinh"; import "core-js/modules/es6.math.tanh"; import "core-js/modules/es6.math.trunc"; import "core-js/modules/es7.array.includes"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/preset-options/ie-11-built-ins/options.json000066400000000000000000000002571312672652300276150ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "ie": 11 }, "modules": false, "useBuiltIns": true, "modules": false }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/include-built-ins/000077500000000000000000000000001312672652300260325ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/include-built-ins/actual.js000066400000000000000000000000301312672652300276320ustar00rootroot00000000000000import "babel-polyfill";babel-preset-env-1.6.0/test/fixtures/preset-options/include-built-ins/expected.js000066400000000000000000000004301312672652300301660ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; babel-preset-env-1.6.0/test/fixtures/preset-options/include-built-ins/options.json000066400000000000000000000003341312672652300304200ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "include": [ "es6.map", "es6.set" ], "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/include/000077500000000000000000000000001312672652300241265ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/include/actual.js000066400000000000000000000000231312672652300257300ustar00rootroot00000000000000import a from "a"; babel-preset-env-1.6.0/test/fixtures/preset-options/include/expected.js000066400000000000000000000002551312672652300262670ustar00rootroot00000000000000"use strict"; var _a = require("a"); var _a2 = _interopRequireDefault(_a); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }babel-preset-env-1.6.0/test/fixtures/preset-options/include/options.json000066400000000000000000000002341312672652300265130ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": {}, "include": ["transform-es2015-modules-commonjs"], "modules": false }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/ios-10/000077500000000000000000000000001312672652300235135ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/ios-10/actual.js000066400000000000000000000000231312672652300253150ustar00rootroot00000000000000const a = () => 1; babel-preset-env-1.6.0/test/fixtures/preset-options/ios-10/expected.js000066400000000000000000000000231312672652300256450ustar00rootroot00000000000000const a = () => 1; babel-preset-env-1.6.0/test/fixtures/preset-options/ios-10/options.json000066400000000000000000000002151312672652300260770ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "browsers": ["ios >= 10"] }, "modules": false }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/ios-6/000077500000000000000000000000001312672652300234405ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/ios-6/actual.js000066400000000000000000000000221312672652300252410ustar00rootroot00000000000000import "core-js"; babel-preset-env-1.6.0/test/fixtures/preset-options/ios-6/expected.js000066400000000000000000000074641312672652300256120ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.object.assign"; import "core-js/modules/es6.object.is"; import "core-js/modules/es6.object.set-prototype-of"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.string.raw"; import "core-js/modules/es6.string.from-code-point"; import "core-js/modules/es6.string.code-point-at"; import "core-js/modules/es6.string.repeat"; import "core-js/modules/es6.string.starts-with"; import "core-js/modules/es6.string.ends-with"; import "core-js/modules/es6.string.includes"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es6.array.of"; import "core-js/modules/es6.array.copy-within"; import "core-js/modules/es6.array.find"; import "core-js/modules/es6.array.find-index"; import "core-js/modules/es6.array.fill"; import "core-js/modules/es6.array.iterator"; import "core-js/modules/es6.number.is-finite"; import "core-js/modules/es6.number.is-integer"; import "core-js/modules/es6.number.is-safe-integer"; import "core-js/modules/es6.number.is-nan"; import "core-js/modules/es6.number.epsilon"; import "core-js/modules/es6.number.min-safe-integer"; import "core-js/modules/es6.number.max-safe-integer"; import "core-js/modules/es6.math.acosh"; import "core-js/modules/es6.math.asinh"; import "core-js/modules/es6.math.atanh"; import "core-js/modules/es6.math.cbrt"; import "core-js/modules/es6.math.clz32"; import "core-js/modules/es6.math.cosh"; import "core-js/modules/es6.math.expm1"; import "core-js/modules/es6.math.fround"; import "core-js/modules/es6.math.hypot"; import "core-js/modules/es6.math.imul"; import "core-js/modules/es6.math.log1p"; import "core-js/modules/es6.math.log10"; import "core-js/modules/es6.math.log2"; import "core-js/modules/es6.math.sign"; import "core-js/modules/es6.math.sinh"; import "core-js/modules/es6.math.tanh"; import "core-js/modules/es6.math.trunc"; import "core-js/modules/es7.array.includes"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/preset-options/ios-6/options.json000066400000000000000000000002471312672652300260310ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "browsers": ["ios >= 6"] }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/modules-false/000077500000000000000000000000001312672652300252435ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/modules-false/actual.js000066400000000000000000000000231312672652300270450ustar00rootroot00000000000000import a from "a"; babel-preset-env-1.6.0/test/fixtures/preset-options/modules-false/expected.js000066400000000000000000000000221312672652300273740ustar00rootroot00000000000000import a from "a";babel-preset-env-1.6.0/test/fixtures/preset-options/modules-false/options.json000066400000000000000000000001171312672652300276300ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "modules": false }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/no-options/000077500000000000000000000000001312672652300246105ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/no-options/actual.js000066400000000000000000000000171312672652300264150ustar00rootroot00000000000000const a = "1"; babel-preset-env-1.6.0/test/fixtures/preset-options/no-options/expected.js000066400000000000000000000000331312672652300267430ustar00rootroot00000000000000"use strict"; var a = "1";babel-preset-env-1.6.0/test/fixtures/preset-options/no-options/options.json000066400000000000000000000000551312672652300271760ustar00rootroot00000000000000{ "presets": [ "../../../../lib" ] } babel-preset-env-1.6.0/test/fixtures/preset-options/no-transform/000077500000000000000000000000001312672652300251305ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/no-transform/actual.js000066400000000000000000000000631312672652300267360ustar00rootroot00000000000000import "not-core-js"; import "not-babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/no-transform/expected.js000066400000000000000000000000621312672652300272650ustar00rootroot00000000000000import "not-core-js"; import "not-babel-polyfill";babel-preset-env-1.6.0/test/fixtures/preset-options/no-transform/options.json000066400000000000000000000002351312672652300275160ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": "55" }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/spec/000077500000000000000000000000001312672652300234355ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/spec/actual.js000066400000000000000000000000601312672652300252400ustar00rootroot00000000000000const bar = "bar"; const x = () => `foo${bar}`; babel-preset-env-1.6.0/test/fixtures/preset-options/spec/expected.js000066400000000000000000000004301312672652300255710ustar00rootroot00000000000000"use strict"; function _newArrowCheck(innerThis, boundThis) { if (innerThis !== boundThis) { throw new TypeError("Cannot instantiate an arrow function"); } } var bar = "bar"; var x = function () { _newArrowCheck(undefined, undefined); return "foo" + bar; }.bind(undefined);babel-preset-env-1.6.0/test/fixtures/preset-options/spec/options.json000066400000000000000000000001131312672652300260160ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "spec": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/uglify/000077500000000000000000000000001312672652300240025ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/uglify/actual.js000066400000000000000000000000471312672652300256120ustar00rootroot00000000000000import "babel-polyfill"; const a = 1; babel-preset-env-1.6.0/test/fixtures/preset-options/uglify/expected.js000066400000000000000000000004071312672652300261420ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; var a = 1; babel-preset-env-1.6.0/test/fixtures/preset-options/uglify/options.json000066400000000000000000000002631312672652300263710ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55, "uglify": true }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all-exec/000077500000000000000000000000001312672652300266165ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all-exec/exec.js000066400000000000000000000001151312672652300300750ustar00rootroot00000000000000if (parseInt(process.version.slice(1)) > 5) { require('babel-polyfill'); } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all-exec/options.json000066400000000000000000000001221312672652300311770ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all/000077500000000000000000000000001312672652300256745ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all/actual.js000066400000000000000000000000311312672652300274750ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all/expected.js000066400000000000000000000075421312672652300300430ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.data-view"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.object.assign"; import "core-js/modules/es6.object.is"; import "core-js/modules/es6.object.set-prototype-of"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.string.raw"; import "core-js/modules/es6.string.from-code-point"; import "core-js/modules/es6.string.code-point-at"; import "core-js/modules/es6.string.repeat"; import "core-js/modules/es6.string.starts-with"; import "core-js/modules/es6.string.ends-with"; import "core-js/modules/es6.string.includes"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es6.array.of"; import "core-js/modules/es6.array.copy-within"; import "core-js/modules/es6.array.find"; import "core-js/modules/es6.array.find-index"; import "core-js/modules/es6.array.fill"; import "core-js/modules/es6.array.iterator"; import "core-js/modules/es6.number.is-finite"; import "core-js/modules/es6.number.is-integer"; import "core-js/modules/es6.number.is-safe-integer"; import "core-js/modules/es6.number.is-nan"; import "core-js/modules/es6.number.epsilon"; import "core-js/modules/es6.number.min-safe-integer"; import "core-js/modules/es6.number.max-safe-integer"; import "core-js/modules/es6.math.acosh"; import "core-js/modules/es6.math.asinh"; import "core-js/modules/es6.math.atanh"; import "core-js/modules/es6.math.cbrt"; import "core-js/modules/es6.math.clz32"; import "core-js/modules/es6.math.cosh"; import "core-js/modules/es6.math.expm1"; import "core-js/modules/es6.math.fround"; import "core-js/modules/es6.math.hypot"; import "core-js/modules/es6.math.imul"; import "core-js/modules/es6.math.log1p"; import "core-js/modules/es6.math.log10"; import "core-js/modules/es6.math.log2"; import "core-js/modules/es6.math.sign"; import "core-js/modules/es6.math.sinh"; import "core-js/modules/es6.math.tanh"; import "core-js/modules/es6.math.trunc"; import "core-js/modules/es7.array.includes"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-all/options.json000066400000000000000000000001521312672652300302600ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-48/000077500000000000000000000000001312672652300266325ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-48/actual.js000066400000000000000000000000411312672652300304340ustar00rootroot00000000000000import "babel-polyfill"; 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-48/expected.js000066400000000000000000000040621312672652300307730ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; Math.pow(1, 2); babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-48/options.json000066400000000000000000000002331312672652300312160ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 48 }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-49/000077500000000000000000000000001312672652300266335ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-49/actual.js000066400000000000000000000000411312672652300304350ustar00rootroot00000000000000import "babel-polyfill"; 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-49/expected.js000066400000000000000000000025651312672652300310020ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; Math.pow(1, 2); babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chrome-49/options.json000066400000000000000000000002331312672652300312170ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 49 }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chromeandroid/000077500000000000000000000000001312672652300277425ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chromeandroid/actual.js000066400000000000000000000000411312672652300315440ustar00rootroot00000000000000import "babel-polyfill"; 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chromeandroid/expected.js000066400000000000000000000002001312672652300320710ustar00rootroot00000000000000import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; 1 ** 2;babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-chromeandroid/options.json000066400000000000000000000002551312672652300323320ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "browsers": "chromeandroid 59" }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-ie-9/000077500000000000000000000000001312672652300256675ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-ie-9/actual.js000066400000000000000000000000311312672652300274700ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-ie-9/expected.js000066400000000000000000000075411312672652300300350ustar00rootroot00000000000000import "core-js/modules/es6.typed.array-buffer"; import "core-js/modules/es6.typed.data-view"; import "core-js/modules/es6.typed.int8-array"; import "core-js/modules/es6.typed.uint8-array"; import "core-js/modules/es6.typed.uint8-clamped-array"; import "core-js/modules/es6.typed.int16-array"; import "core-js/modules/es6.typed.uint16-array"; import "core-js/modules/es6.typed.int32-array"; import "core-js/modules/es6.typed.uint32-array"; import "core-js/modules/es6.typed.float32-array"; import "core-js/modules/es6.typed.float64-array"; import "core-js/modules/es6.map"; import "core-js/modules/es6.set"; import "core-js/modules/es6.weak-map"; import "core-js/modules/es6.weak-set"; import "core-js/modules/es6.reflect.apply"; import "core-js/modules/es6.reflect.construct"; import "core-js/modules/es6.reflect.define-property"; import "core-js/modules/es6.reflect.delete-property"; import "core-js/modules/es6.reflect.get"; import "core-js/modules/es6.reflect.get-own-property-descriptor"; import "core-js/modules/es6.reflect.get-prototype-of"; import "core-js/modules/es6.reflect.has"; import "core-js/modules/es6.reflect.is-extensible"; import "core-js/modules/es6.reflect.own-keys"; import "core-js/modules/es6.reflect.prevent-extensions"; import "core-js/modules/es6.reflect.set"; import "core-js/modules/es6.reflect.set-prototype-of"; import "core-js/modules/es6.promise"; import "core-js/modules/es6.symbol"; import "core-js/modules/es6.object.assign"; import "core-js/modules/es6.object.is"; import "core-js/modules/es6.object.set-prototype-of"; import "core-js/modules/es6.function.name"; import "core-js/modules/es6.string.raw"; import "core-js/modules/es6.string.from-code-point"; import "core-js/modules/es6.string.code-point-at"; import "core-js/modules/es6.string.repeat"; import "core-js/modules/es6.string.starts-with"; import "core-js/modules/es6.string.ends-with"; import "core-js/modules/es6.string.includes"; import "core-js/modules/es6.regexp.flags"; import "core-js/modules/es6.regexp.match"; import "core-js/modules/es6.regexp.replace"; import "core-js/modules/es6.regexp.split"; import "core-js/modules/es6.regexp.search"; import "core-js/modules/es6.array.from"; import "core-js/modules/es6.array.of"; import "core-js/modules/es6.array.copy-within"; import "core-js/modules/es6.array.find"; import "core-js/modules/es6.array.find-index"; import "core-js/modules/es6.array.fill"; import "core-js/modules/es6.array.iterator"; import "core-js/modules/es6.number.is-finite"; import "core-js/modules/es6.number.is-integer"; import "core-js/modules/es6.number.is-safe-integer"; import "core-js/modules/es6.number.is-nan"; import "core-js/modules/es6.number.epsilon"; import "core-js/modules/es6.number.min-safe-integer"; import "core-js/modules/es6.number.max-safe-integer"; import "core-js/modules/es6.math.acosh"; import "core-js/modules/es6.math.asinh"; import "core-js/modules/es6.math.atanh"; import "core-js/modules/es6.math.cbrt"; import "core-js/modules/es6.math.clz32"; import "core-js/modules/es6.math.cosh"; import "core-js/modules/es6.math.expm1"; import "core-js/modules/es6.math.fround"; import "core-js/modules/es6.math.hypot"; import "core-js/modules/es6.math.imul"; import "core-js/modules/es6.math.log1p"; import "core-js/modules/es6.math.log10"; import "core-js/modules/es6.math.log2"; import "core-js/modules/es6.math.sign"; import "core-js/modules/es6.math.sinh"; import "core-js/modules/es6.math.tanh"; import "core-js/modules/es6.math.trunc"; import "core-js/modules/es7.array.includes"; import "core-js/modules/es7.object.values"; import "core-js/modules/es7.object.entries"; import "core-js/modules/es7.object.get-own-property-descriptors"; import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime";babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-ie-9/options.json000066400000000000000000000002561312672652300302600ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "ie": 9 }, "modules": false, "useBuiltIns": true, "modules": false }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-import/000077500000000000000000000000001312672652300264365ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-import/actual.js000066400000000000000000000000411312672652300302400ustar00rootroot00000000000000import "babel-polyfill"; 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-import/expected.js000066400000000000000000000003341312672652300305750ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; 1 ** 2;babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-import/options.json000066400000000000000000000002331312672652300310220ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-multiple-imports/000077500000000000000000000000001312672652300304525ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-multiple-imports/actual.js000066400000000000000000000000721312672652300322600ustar00rootroot00000000000000import "babel-polyfill"; import "babel-polyfill"; 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-multiple-imports/expected.js000066400000000000000000000003341312672652300326110ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; 1 ** 2;babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-multiple-imports/options.json000066400000000000000000000002331312672652300330360ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": 55 }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node-web/000077500000000000000000000000001312672652300266245ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node-web/actual.js000066400000000000000000000000311312672652300304250ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node-web/expected.js000066400000000000000000000003731312672652300307660ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "core-js/modules/web.timers"; import "core-js/modules/web.immediate"; import "core-js/modules/web.dom.iterable"; import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node-web/options.json000066400000000000000000000003141312672652300312100ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": "55", "node": "7.6", "uglify": true }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node/000077500000000000000000000000001312672652300260515ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node/actual.js000066400000000000000000000000311312672652300276520ustar00rootroot00000000000000import "babel-polyfill"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node/expected.js000066400000000000000000000002031312672652300302030ustar00rootroot00000000000000import "core-js/modules/es7.string.pad-start"; import "core-js/modules/es7.string.pad-end"; import "regenerator-runtime/runtime"; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-node/options.json000066400000000000000000000002641312672652300304410ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "node": "7.6", "uglify": true }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-require/000077500000000000000000000000001312672652300266005ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-require/actual.js000066400000000000000000000000441312672652300304050ustar00rootroot00000000000000require("babel-polyfill"); 1 ** 2; babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-require/expected.js000066400000000000000000000003521312672652300307370ustar00rootroot00000000000000require("core-js/modules/es7.string.pad-start"); require("core-js/modules/es7.string.pad-end"); require("core-js/modules/web.timers"); require("core-js/modules/web.immediate"); require("core-js/modules/web.dom.iterable"); 1 ** 2;babel-preset-env-1.6.0/test/fixtures/preset-options/use-builtins-require/options.json000066400000000000000000000002351312672652300311660ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "targets": { "chrome": "55" }, "modules": false, "useBuiltIns": true }] ] } babel-preset-env-1.6.0/test/fixtures/sanity/000077500000000000000000000000001312672652300210175ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/sanity/check-es2015-constants/000077500000000000000000000000001312672652300250235ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/sanity/check-es2015-constants/exec.js000066400000000000000000000000341312672652300263020ustar00rootroot00000000000000const one = 123; one = 432; babel-preset-env-1.6.0/test/fixtures/sanity/check-es2015-constants/options.json000066400000000000000000000001231312672652300274050ustar00rootroot00000000000000{ "presets": [ ["../../../../lib"] ], "throws": "\"one\" is read-only" } babel-preset-env-1.6.0/test/fixtures/sanity/transform-duplicate-keys/000077500000000000000000000000001312672652300257535ustar00rootroot00000000000000babel-preset-env-1.6.0/test/fixtures/sanity/transform-duplicate-keys/actual.js000066400000000000000000000000261312672652300275600ustar00rootroot00000000000000var a = { b:1, b: 2}; babel-preset-env-1.6.0/test/fixtures/sanity/transform-duplicate-keys/expected.js000066400000000000000000000003751312672652300301170ustar00rootroot00000000000000function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } var a = _defineProperty({ b: 1 }, "b", 2);babel-preset-env-1.6.0/test/fixtures/sanity/transform-duplicate-keys/options.json000066400000000000000000000001171312672652300303400ustar00rootroot00000000000000{ "presets": [ ["../../../../lib", { "modules": false }] ] } babel-preset-env-1.6.0/test/index.spec.js000066400000000000000000000065221312672652300202420ustar00rootroot00000000000000"use strict"; const babelPresetEnv = require("../lib/index.js"); const assert = require("assert"); describe("babel-preset-env", () => { describe("isPluginRequired", () => { const MAX_VERSION = `${Number.MAX_SAFE_INTEGER}.0.0`; it("returns true if no targets are specified", () => { assert.strictEqual(babelPresetEnv.isPluginRequired({}, {}), true); }); it("returns true if plugin feature is not implemented in one or more targets", () => { let targets; const plugin = { edge: false, firefox: 45, chrome: 49, }; targets = { chrome: MAX_VERSION, firefox: MAX_VERSION, }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), false, ); targets = { edge: "12", }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), true, ); }); it("returns false if plugin feature is implemented by lower than target", () => { const plugin = { chrome: 49, }; const targets = { chrome: MAX_VERSION, }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), false, ); }); it("returns false if plugin feature is implemented is equal to target", () => { const plugin = { chrome: 49, }; const targets = { chrome: "49.0.0", }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), false, ); }); it("returns true if plugin feature is implemented is greater than target", () => { const plugin = { chrome: 50, }; const targets = { chrome: "49.0.0", }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), true, ); }); it("returns true if uglify is specified as a target", () => { const plugin = { chrome: 50, }; const targets = { chrome: "55.0.0", uglify: true, }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), true, ); }); it("returns when target is a decimal", () => { const plugin = { node: 6.9, }; const targets = { node: "6.10.0", }; assert.strictEqual( babelPresetEnv.isPluginRequired(targets, plugin), false, ); }); it("throws an error if target version is invalid", () => { const plugin = { chrome: 50, }; const targets = { chrome: 55, }; assert.throws(() => babelPresetEnv.isPluginRequired(targets, plugin)); }); }); describe("transformIncludesAndExcludes", function() { it("should return in transforms array", function() { assert.deepEqual( babelPresetEnv.transformIncludesAndExcludes(["transform-es2015-arrow-functions"]), { all: ["transform-es2015-arrow-functions"], plugins: ["transform-es2015-arrow-functions"], builtIns: [] } ); }); it("should return in built-ins array", function() { assert.deepEqual( babelPresetEnv.transformIncludesAndExcludes(["es6.map"]), { all: ["es6.map"], plugins: [], builtIns: ["es6.map"] } ); }); }); }); babel-preset-env-1.6.0/test/normalize-options.spec.js000066400000000000000000000106551312672652300226260ustar00rootroot00000000000000"use strict"; const normalizeOptions = require("../lib/normalize-options.js"); const assert = require("assert"); const { checkDuplicateIncludeExcludes, normalizePluginNames, validateIncludesAndExcludes, validateLooseOption, validateModulesOption, validateSpecOption, } = normalizeOptions; describe("normalize-options", () => { describe("normalizeOptions", () => { it("should return normalized `include` and `exclude`", () => { const normalized = normalizeOptions.default({ include: [ "babel-plugin-transform-es2015-spread", "transform-es2015-classes" ] }); assert.deepEqual(normalized.include, [ "transform-es2015-spread", "transform-es2015-classes" ]); }); it("should throw if duplicate names in `include` and `exclude`", () => { const normalizeWithSameIncludes = () => { normalizeOptions.default({ include: [ "babel-plugin-transform-es2015-spread", ], exclude: [ "transform-es2015-spread" ] }); }; assert.throws(normalizeWithSameIncludes, Error); }); }); describe("validateLooseOption", () => { it("`undefined` option returns false", () => { assert(validateLooseOption() === false); }); it("`false` option returns false", () => { assert(validateLooseOption(false) === false); }); it("`true` option returns true", () => { assert(validateLooseOption(true) === true); }); it("array option is invalid", () => { assert.throws(() => { validateLooseOption([]); }, Error); }); }); describe("validateSpecOption", () => { it("`undefined` option returns false", () => { assert(validateSpecOption() === false); }); it("`false` option returns false", () => { assert(validateSpecOption(false) === false); }); it("`true` option returns true", () => { assert(validateSpecOption(true) === true); }); }); describe("checkDuplicateIncludeExcludes", function() { it("should throw if duplicate names in both", function() { assert.throws(() => { checkDuplicateIncludeExcludes( ["transform-regenerator", "map"], ["transform-regenerator", "map"] ); }, Error); }); it("should not throw if no duplicate names in both", function() { assert.doesNotThrow(() => { checkDuplicateIncludeExcludes( ["transform-regenerator"], ["map"] ); }, Error); }); }); describe("normalizePluginNames", function() { it("should drop `babel-plugin-` prefix if needed", function() { assert.deepEqual( normalizePluginNames([ "babel-plugin-transform-es2015-object-super", "transform-es2015-parameters" ]), ["transform-es2015-object-super", "transform-es2015-parameters"] ); }); it("should not throw if no duplicate names in both", function() { assert.doesNotThrow(() => { checkDuplicateIncludeExcludes( ["transform-regenerator"], ["map"] ); }, Error); }); }); describe("validateModulesOption", () => { it("`undefined` option returns commonjs", () => { assert(validateModulesOption() === "commonjs"); }); it("`false` option returns commonjs", () => { assert(validateModulesOption(false) === false); }); it("commonjs option is valid", () => { assert(validateModulesOption("commonjs") === "commonjs"); }); it("systemjs option is valid", () => { assert(validateModulesOption("systemjs") === "systemjs"); }); it("amd option is valid", () => { assert(validateModulesOption("amd") === "amd"); }); it("umd option is valid", () => { assert(validateModulesOption("umd") === "umd"); }); it("`true` option is invalid", () => { assert.throws(() => { validateModulesOption(true); }, Error); }); it("array option is invalid", () => { assert.throws(() => { assert(validateModulesOption([])); }, Error); }); }); describe("validateIncludesAndExcludes", function() { it("should return empty arrays if undefined", function() { assert.deepEqual(validateIncludesAndExcludes(), []); }); it("should throw if not in features", function() { assert.throws(() => { validateIncludesAndExcludes(["asdf"]); }, Error); }); }); }); babel-preset-env-1.6.0/test/targets-parser.spec.js000066400000000000000000000043241312672652300220740ustar00rootroot00000000000000import assert from "assert"; import getTargets from "../src/targets-parser"; describe("getTargets", () => { it("parses", () => { assert.deepEqual( getTargets({ chrome: 49, firefox: "55", ie: "9", node: "6.10", electron: "1.6", }), { chrome: "49.0.0", electron: "1.6.0", firefox: "55.0.0", ie: "9.0.0", node: "6.10.0", }, ); }); describe("browser", () => { it("merges browser key targets", () => { assert.deepEqual( getTargets({ browsers: "chrome 56, ie 11, firefox 51, safari 9", chrome: "49", firefox: "55", ie: "9", }), { chrome: "49.0.0", firefox: "55.0.0", ie: "9.0.0", safari: "9.0.0", }, ); }); it("ignores invalid", () => { assert.deepEqual( getTargets({ browsers: 59, chrome: "49", firefox: "55", ie: "11", }), { chrome: "49.0.0", firefox: "55.0.0", ie: "11.0.0", }, ); }); }); describe("node", () => { it("should return the current node version with option 'current'", () => { assert.deepEqual( getTargets({ node: true, }), { node: process.versions.node, }, ); }); }); describe("electron", () => { it("should be its own target", () => { assert.deepEqual( getTargets({ chrome: "46", electron: "0.34", }), { chrome: "46.0.0", electron: "0.34.0", }, ); }); }); describe("uglify", () => { it("should work with `true`", function() { assert.deepEqual( getTargets({ uglify: true, }), { uglify: true, }, ); }); it("should ignore `false`", function() { assert.deepEqual( getTargets({ uglify: false, }), {}, ); }); it("should ignore `null`", function() { assert.deepEqual( getTargets({ uglify: null, }), {}, ); }); }); }); babel-preset-env-1.6.0/test/utils.spec.js000066400000000000000000000027021312672652300202670ustar00rootroot00000000000000"use strict"; const utils = require("../lib/utils"); const assert = require("assert"); const { prettifyTargets, prettifyVersion, semverify, } = utils; describe("utils", () => { describe("semverify", () => { it("returns", () => { assert.strictEqual(semverify("1"), "1.0.0"); assert.strictEqual(semverify("1.0"), "1.0.0"); assert.strictEqual(semverify("1.0.0"), "1.0.0"); assert.strictEqual(semverify(1), "1.0.0"); assert.strictEqual(semverify(1.2), "1.2.0"); }); }); describe("prettifyVersion", () => { it("returns", () => { assert.strictEqual(prettifyVersion(true), true); assert.strictEqual(prettifyVersion("0.16.0"), "0.16"); assert.strictEqual(prettifyVersion("1.0.0"), "1"); assert.strictEqual(prettifyVersion("1.1.0"), "1.1"); assert.strictEqual(prettifyVersion("1.0.2"), "1.0.2"); assert.strictEqual(prettifyVersion("1.2.3"), "1.2.3"); }); }); describe("prettifyTargets", () => { it("returns", () => { assert.deepEqual(prettifyTargets({}), {}); assert.deepEqual( prettifyTargets({ uglify: true, }), { uglify: true, }, ); assert.deepEqual( prettifyTargets({ chrome: "54.0.0", electron: "1.6.0", node: "0.12.0", }), { chrome: "54", electron: "1.6", node: "0.12", }, ); }); }); }); babel-preset-env-1.6.0/yarn.lock000066400000000000000000004200551312672652300165110ustar00rootroot00000000000000# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. # yarn lockfile v1 abab@^1.0.0: version "1.0.3" resolved "https://registry.yarnpkg.com/abab/-/abab-1.0.3.tgz#b81de5f7274ec4e756d797cd834f303642724e5d" abbrev@1: version "1.0.9" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" acorn-globals@^1.0.4: version "1.0.9" resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-1.0.9.tgz#55bb5e98691507b74579d0513413217c380c54cf" dependencies: acorn "^2.1.0" acorn-jsx@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-3.0.1.tgz#afdf9488fb1ecefc8348f6fb22f464e32a58b36b" dependencies: acorn "^3.0.4" acorn@^2.1.0, acorn@^2.4.0: version "2.7.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-2.7.0.tgz#ab6e7d9d886aaca8b085bc3312b79a198433f0e7" acorn@^3.0.4: version "3.3.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" acorn@^4.0.3: version "4.0.4" resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.4.tgz#17a8d6a7a6c4ef538b814ec9abac2779293bf30a" acorn@^5.0.1: version "5.0.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.0.2.tgz#dc1c8fb907f64db2ab573de2326b73527c24de36" ajv-keywords@^1.0.0: version "1.5.0" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.0.tgz#c11e6859eafff83e0dafc416929472eca946aa2c" ajv@^4.7.0: version "4.10.3" resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.10.3.tgz#3e4fea9675b157de7888b80dd0ed735b83f28e11" dependencies: co "^4.6.0" json-stable-stringify "^1.0.1" align-text@^0.1.1, align-text@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/align-text/-/align-text-0.1.4.tgz#0cd90a561093f35d0a99256c22b7069433fad117" dependencies: kind-of "^3.0.2" longest "^1.0.1" repeat-string "^1.5.2" amdefine@>=0.0.4: version "1.0.1" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" ansi-escapes@^1.1.0: version "1.4.0" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" ansi-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" ansi-styles@^2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" ansidiff@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/ansidiff/-/ansidiff-1.0.0.tgz#d4a3ed89ab1670f20c097def759f34d944478aab" dependencies: diff "1.0" anymatch@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-1.3.0.tgz#a3e52fa39168c825ff57b0248126ce5a8ff95507" dependencies: arrify "^1.0.0" micromatch "^2.1.5" append-transform@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-0.4.0.tgz#d76ebf8ca94d276e247a36bad44a4b74ab611991" dependencies: default-require-extensions "^1.0.0" aproba@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.0.4.tgz#2713680775e7614c8ba186c065d4e2e52d1072c0" archy@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" are-we-there-yet@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.2.tgz#80e470e95a084794fe1899262c5667c6e88de1b3" dependencies: delegates "^1.0.0" readable-stream "^2.0.0 || ^1.1.13" argparse@^1.0.7: version "1.0.9" resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.9.tgz#73d83bc263f86e97f8cc4f6bae1b0e90a7d22c86" dependencies: sprintf-js "~1.0.2" argv@>=0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/argv/-/argv-0.0.2.tgz#ecbd16f8949b157183711b1bda334f37840185ab" arr-diff@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" dependencies: arr-flatten "^1.0.1" arr-flatten@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b" array-includes@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.0.2.tgz#7c867b4d1235c2b5687c874f3344bff4e002beba" dependencies: define-properties "^1.1.2" es-abstract "^1.5.0" array-union@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" dependencies: array-uniq "^1.0.1" array-uniq@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" array-unique@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" arrify@^1.0.0, arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" asn1@~0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" assert-plus@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" assert-plus@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" assertion-error@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/assertion-error/-/assertion-error-1.0.2.tgz#13ca515d86206da0bac66e834dd397d87581094c" ast-types@0.9.6: version "0.9.6" resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" astquery@latest: version "0.0.11" resolved "https://registry.yarnpkg.com/astquery/-/astquery-0.0.11.tgz#1538c54d3f3a788c362942ef2bab139036fe9cdd" async-each@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" async@^1.4.0, async@^1.4.2: version "1.5.2" resolved "https://registry.yarnpkg.com/async/-/async-1.5.2.tgz#ec6a61ae56480c0c3cb241c95618e20892f9672a" asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" aws-sign2@~0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" aws4@^1.2.1: version "1.5.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" babel-cli@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-cli/-/babel-cli-6.23.0.tgz#52ff946a2b0f64645c35e7bd5eea267aa0948c0f" dependencies: babel-core "^6.23.0" babel-polyfill "^6.23.0" babel-register "^6.23.0" babel-runtime "^6.22.0" commander "^2.8.1" convert-source-map "^1.1.0" fs-readdir-recursive "^1.0.0" glob "^7.0.0" lodash "^4.2.0" output-file-sync "^1.1.0" path-is-absolute "^1.0.0" slash "^1.0.0" source-map "^0.5.0" v8flags "^2.0.10" optionalDependencies: chokidar "^1.6.1" babel-code-frame@^6.16.0: version "6.20.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.20.0.tgz#b968f839090f9a8bc6d41938fb96cb84f7387b26" dependencies: chalk "^1.1.0" esutils "^2.0.2" js-tokens "^2.0.0" babel-code-frame@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" dependencies: chalk "^1.1.0" esutils "^2.0.2" js-tokens "^3.0.0" babel-core@^6.23.0, babel-core@^6.24.0, babel-core@latest: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.24.0.tgz#8f36a0a77f5c155aed6f920b844d23ba56742a02" dependencies: babel-code-frame "^6.22.0" babel-generator "^6.24.0" babel-helpers "^6.23.0" babel-messages "^6.23.0" babel-register "^6.24.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.1" babel-types "^6.23.0" babylon "^6.11.0" convert-source-map "^1.1.0" debug "^2.1.1" json5 "^0.5.0" lodash "^4.2.0" minimatch "^3.0.2" path-is-absolute "^1.0.0" private "^0.1.6" slash "^1.0.0" source-map "^0.5.0" babel-eslint@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.1.1.tgz#8a6a884f085aa7060af69cfc77341c2f99370fb2" dependencies: babel-code-frame "^6.16.0" babel-traverse "^6.15.0" babel-types "^6.15.0" babylon "^6.13.0" lodash.pickby "^4.6.0" babel-generator@^6.18.0, babel-generator@^6.24.0: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.0.tgz#eba270a8cc4ce6e09a61be43465d7c62c1f87c56" dependencies: babel-messages "^6.23.0" babel-runtime "^6.22.0" babel-types "^6.23.0" detect-indent "^4.0.0" jsesc "^1.3.0" lodash "^4.2.0" source-map "^0.5.0" trim-right "^1.0.1" babel-helper-bindify-decorators@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.22.0.tgz#d7f5bc261275941ac62acfc4e20dacfb8a3fe952" dependencies: babel-runtime "^6.22.0" babel-traverse "^6.22.0" babel-types "^6.22.0" babel-helper-builder-binary-assignment-operator-visitor@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.22.0.tgz#29df56be144d81bdeac08262bfa41d2c5e91cdcd" dependencies: babel-helper-explode-assignable-expression "^6.22.0" babel-runtime "^6.22.0" babel-types "^6.22.0" babel-helper-call-delegate@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.22.0.tgz#119921b56120f17e9dae3f74b4f5cc7bcc1b37ef" dependencies: babel-helper-hoist-variables "^6.22.0" babel-runtime "^6.22.0" babel-traverse "^6.22.0" babel-types "^6.22.0" babel-helper-define-map@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.23.0.tgz#1444f960c9691d69a2ced6a205315f8fd00804e7" dependencies: babel-helper-function-name "^6.23.0" babel-runtime "^6.22.0" babel-types "^6.23.0" lodash "^4.2.0" babel-helper-explode-assignable-expression@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.22.0.tgz#c97bf76eed3e0bae4048121f2b9dae1a4e7d0478" dependencies: babel-runtime "^6.22.0" babel-traverse "^6.22.0" babel-types "^6.22.0" babel-helper-explode-class@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.22.0.tgz#646304924aa6388a516843ba7f1855ef8dfeb69b" dependencies: babel-helper-bindify-decorators "^6.22.0" babel-runtime "^6.22.0" babel-traverse "^6.22.0" babel-types "^6.22.0" babel-helper-fixtures@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-fixtures/-/babel-helper-fixtures-6.22.0.tgz#3cb9eaf5feae29f001d2754ab43b14a9dfa304ff" dependencies: babel-runtime "^6.22.0" lodash "^4.2.0" try-resolve "^1.0.0" babel-helper-function-name@^6.22.0, babel-helper-function-name@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.23.0.tgz#25742d67175c8903dbe4b6cb9d9e1fcb8dcf23a6" dependencies: babel-helper-get-function-arity "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.0" babel-types "^6.23.0" babel-helper-get-function-arity@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.22.0.tgz#0beb464ad69dc7347410ac6ade9f03a50634f5ce" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-helper-hoist-variables@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.22.0.tgz#3eacbf731d80705845dd2e9718f600cfb9b4ba72" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-helper-optimise-call-expression@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.23.0.tgz#f3ee7eed355b4282138b33d02b78369e470622f5" dependencies: babel-runtime "^6.22.0" babel-types "^6.23.0" babel-helper-plugin-test-runner@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-plugin-test-runner/-/babel-helper-plugin-test-runner-6.22.0.tgz#f9aff39bdc3c680a9af33cfeb018ab7b2b8dd465" dependencies: babel-helper-transform-fixture-test-runner "^6.22.0" babel-runtime "^6.22.0" babel-helper-regex@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.22.0.tgz#79f532be1647b1f0ee3474b5f5c3da58001d247d" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" lodash "^4.2.0" babel-helper-remap-async-to-generator@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.22.0.tgz#2186ae73278ed03b8b15ced089609da981053383" dependencies: babel-helper-function-name "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.22.0" babel-traverse "^6.22.0" babel-types "^6.22.0" babel-helper-replace-supers@^6.22.0, babel-helper-replace-supers@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.23.0.tgz#eeaf8ad9b58ec4337ca94223bacdca1f8d9b4bfd" dependencies: babel-helper-optimise-call-expression "^6.23.0" babel-messages "^6.23.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.0" babel-types "^6.23.0" babel-helper-transform-fixture-test-runner@^6.22.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helper-transform-fixture-test-runner/-/babel-helper-transform-fixture-test-runner-6.23.0.tgz#b92820678fd93dc88671011473f4d4e604394bd2" dependencies: babel-code-frame "^6.22.0" babel-core "^6.23.0" babel-helper-fixtures "^6.22.0" babel-polyfill "^6.23.0" babel-runtime "^6.22.0" chai "^3.0.0" lodash "^4.2.0" source-map "^0.5.0" babel-helpers@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.23.0.tgz#4f8f2e092d0b6a8808a4bde79c27f1e2ecf0d992" dependencies: babel-runtime "^6.22.0" babel-template "^6.23.0" babel-messages@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-messages/-/babel-messages-6.23.0.tgz#f3cdf4703858035b2a2951c6ec5edf6c62f2630e" dependencies: babel-runtime "^6.22.0" babel-plugin-check-es2015-constants@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz#35157b101426fd2ffd3da3f75c7d1e91835bbf8a" dependencies: babel-runtime "^6.22.0" babel-plugin-istanbul@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-3.1.2.tgz#11d5abde18425ec24b5d648c7e0b5d25cd354a22" dependencies: find-up "^1.1.2" istanbul-lib-instrument "^1.4.2" object-assign "^4.1.0" test-exclude "^3.3.0" babel-plugin-syntax-async-functions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz#cad9cad1191b5ad634bf30ae0872391e0647be95" babel-plugin-syntax-async-generators@^6.5.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz#6bc963ebb16eccbae6b92b596eb7f35c342a8b9a" babel-plugin-syntax-class-constructor-call@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz#9cb9d39fe43c8600bec8146456ddcbd4e1a76416" babel-plugin-syntax-class-properties@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz#d7eb23b79a317f8543962c505b827c7d6cac27de" babel-plugin-syntax-decorators@^6.13.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz#312563b4dbde3cc806cee3e416cceeaddd11ac0b" babel-plugin-syntax-do-expressions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz#5747756139aa26d390d09410b03744ba07e4796d" babel-plugin-syntax-dynamic-import@^6.18.0: version "6.18.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz#8d6a26229c83745a9982a441051572caa179b1da" babel-plugin-syntax-exponentiation-operator@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz#9ee7e8337290da95288201a6a57f4170317830de" babel-plugin-syntax-export-extensions@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz#70a1484f0f9089a4e84ad44bac353c95b9b12721" babel-plugin-syntax-function-bind@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz#48c495f177bdf31a981e732f55adc0bdd2601f46" babel-plugin-syntax-object-rest-spread@^6.8.0: version "6.13.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz#fd6536f2bce13836ffa3a5458c4903a597bb3bf5" babel-plugin-syntax-trailing-function-commas@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz#ba0360937f8d06e40180a43fe0d5616fff532cf3" babel-plugin-transform-async-generator-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.22.0.tgz#a720a98153a7596f204099cd5409f4b3c05bab46" dependencies: babel-helper-remap-async-to-generator "^6.22.0" babel-plugin-syntax-async-generators "^6.5.0" babel-runtime "^6.22.0" babel-plugin-transform-async-to-generator@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.22.0.tgz#194b6938ec195ad36efc4c33a971acf00d8cd35e" dependencies: babel-helper-remap-async-to-generator "^6.22.0" babel-plugin-syntax-async-functions "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-class-constructor-call@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.22.0.tgz#11a4d2216abb5b0eef298b493748f4f2f4869120" dependencies: babel-plugin-syntax-class-constructor-call "^6.18.0" babel-runtime "^6.22.0" babel-template "^6.22.0" babel-plugin-transform-class-properties@^6.22.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.23.0.tgz#187b747ee404399013563c993db038f34754ac3b" dependencies: babel-helper-function-name "^6.23.0" babel-plugin-syntax-class-properties "^6.8.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-plugin-transform-decorators@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.22.0.tgz#c03635b27a23b23b7224f49232c237a73988d27c" dependencies: babel-helper-explode-class "^6.22.0" babel-plugin-syntax-decorators "^6.13.0" babel-runtime "^6.22.0" babel-template "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-do-expressions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz#28ccaf92812d949c2cd1281f690c8fdc468ae9bb" dependencies: babel-plugin-syntax-do-expressions "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-es2015-arrow-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz#452692cb711d5f79dc7f85e440ce41b9f244d221" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz#bbc51b49f964d70cb8d8e0b94e820246ce3a6141" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-block-scoping@^6.22.0, babel-plugin-transform-es2015-block-scoping@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.23.0.tgz#e48895cf0b375be148cd7c8879b422707a053b51" dependencies: babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.0" babel-types "^6.23.0" lodash "^4.2.0" babel-plugin-transform-es2015-classes@^6.22.0, babel-plugin-transform-es2015-classes@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.23.0.tgz#49b53f326202a2fd1b3bbaa5e2edd8a4f78643c1" dependencies: babel-helper-define-map "^6.23.0" babel-helper-function-name "^6.23.0" babel-helper-optimise-call-expression "^6.23.0" babel-helper-replace-supers "^6.23.0" babel-messages "^6.23.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.0" babel-types "^6.23.0" babel-plugin-transform-es2015-computed-properties@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.22.0.tgz#7c383e9629bba4820c11b0425bdd6290f7f057e7" dependencies: babel-runtime "^6.22.0" babel-template "^6.22.0" babel-plugin-transform-es2015-destructuring@^6.22.0, babel-plugin-transform-es2015-destructuring@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz#997bb1f1ab967f682d2b0876fe358d60e765c56d" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-duplicate-keys@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.22.0.tgz#672397031c21610d72dd2bbb0ba9fb6277e1c36b" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-for-of@^6.22.0, babel-plugin-transform-es2015-for-of@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz#f47c95b2b613df1d3ecc2fdb7573623c75248691" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-function-name@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.22.0.tgz#f5fcc8b09093f9a23c76ac3d9e392c3ec4b77104" dependencies: babel-helper-function-name "^6.22.0" babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-literals@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz#4f54a02d6cd66cf915280019a31d31925377ca2e" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-modules-amd@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.22.0.tgz#bf69cd34889a41c33d90dfb740e0091ccff52f21" dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.22.0" babel-plugin-transform-es2015-modules-amd@^6.24.0: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.0.tgz#a1911fb9b7ec7e05a43a63c5995007557bcf6a2e" dependencies: babel-plugin-transform-es2015-modules-commonjs "^6.24.0" babel-runtime "^6.22.0" babel-template "^6.22.0" babel-plugin-transform-es2015-modules-commonjs@^6.22.0, babel-plugin-transform-es2015-modules-commonjs@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.23.0.tgz#cba7aa6379fb7ec99250e6d46de2973aaffa7b92" dependencies: babel-plugin-transform-strict-mode "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-types "^6.23.0" babel-plugin-transform-es2015-modules-commonjs@^6.24.0: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.0.tgz#e921aefb72c2cc26cb03d107626156413222134f" dependencies: babel-plugin-transform-strict-mode "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-types "^6.23.0" babel-plugin-transform-es2015-modules-systemjs@^6.22.0, babel-plugin-transform-es2015-modules-systemjs@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.23.0.tgz#ae3469227ffac39b0310d90fec73bfdc4f6317b0" dependencies: babel-helper-hoist-variables "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-plugin-transform-es2015-modules-umd@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.23.0.tgz#8d284ae2e19ed8fe21d2b1b26d6e7e0fcd94f0f1" dependencies: babel-plugin-transform-es2015-modules-amd "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-plugin-transform-es2015-modules-umd@^6.24.0: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.0.tgz#fd5fa63521cae8d273927c3958afd7c067733450" dependencies: babel-plugin-transform-es2015-modules-amd "^6.24.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-plugin-transform-es2015-object-super@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.22.0.tgz#daa60e114a042ea769dd53fe528fc82311eb98fc" dependencies: babel-helper-replace-supers "^6.22.0" babel-runtime "^6.22.0" babel-plugin-transform-es2015-parameters@^6.22.0, babel-plugin-transform-es2015-parameters@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.23.0.tgz#3a2aabb70c8af945d5ce386f1a4250625a83ae3b" dependencies: babel-helper-call-delegate "^6.22.0" babel-helper-get-function-arity "^6.22.0" babel-runtime "^6.22.0" babel-template "^6.23.0" babel-traverse "^6.23.0" babel-types "^6.23.0" babel-plugin-transform-es2015-shorthand-properties@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.22.0.tgz#8ba776e0affaa60bff21e921403b8a652a2ff723" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-spread@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz#d6d68a99f89aedc4536c81a542e8dd9f1746f8d1" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-sticky-regex@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.22.0.tgz#ab316829e866ee3f4b9eb96939757d19a5bc4593" dependencies: babel-helper-regex "^6.22.0" babel-runtime "^6.22.0" babel-types "^6.22.0" babel-plugin-transform-es2015-template-literals@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz#a84b3450f7e9f8f1f6839d6d687da84bb1236d8d" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-typeof-symbol@^6.22.0, babel-plugin-transform-es2015-typeof-symbol@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz#dec09f1cddff94b52ac73d505c84df59dcceb372" dependencies: babel-runtime "^6.22.0" babel-plugin-transform-es2015-unicode-regex@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.22.0.tgz#8d9cc27e7ee1decfe65454fb986452a04a613d20" dependencies: babel-helper-regex "^6.22.0" babel-runtime "^6.22.0" regexpu-core "^2.0.0" babel-plugin-transform-exponentiation-operator@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.22.0.tgz#d57c8335281918e54ef053118ce6eb108468084d" dependencies: babel-helper-builder-binary-assignment-operator-visitor "^6.22.0" babel-plugin-syntax-exponentiation-operator "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-export-extensions@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz#53738b47e75e8218589eea946cbbd39109bbe653" dependencies: babel-plugin-syntax-export-extensions "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-function-bind@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz#c6fb8e96ac296a310b8cf8ea401462407ddf6a97" dependencies: babel-plugin-syntax-function-bind "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-object-rest-spread@^6.22.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.23.0.tgz#875d6bc9be761c58a2ae3feee5dc4895d8c7f921" dependencies: babel-plugin-syntax-object-rest-spread "^6.8.0" babel-runtime "^6.22.0" babel-plugin-transform-regenerator@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.22.0.tgz#65740593a319c44522157538d690b84094617ea6" dependencies: regenerator-transform "0.9.8" babel-plugin-transform-strict-mode@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.22.0.tgz#e008df01340fdc87e959da65991b7e05970c8c7c" dependencies: babel-runtime "^6.22.0" babel-types "^6.22.0" babel-polyfill@^6.23.0, babel-polyfill@latest: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.23.0.tgz#8364ca62df8eafb830499f699177466c3b03499d" dependencies: babel-runtime "^6.22.0" core-js "^2.4.0" regenerator-runtime "^0.10.0" babel-preset-env@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/babel-preset-env/-/babel-preset-env-1.4.0.tgz#c8e02a3bcc7792f23cded68e0355b9d4c28f0f7a" dependencies: babel-plugin-check-es2015-constants "^6.22.0" babel-plugin-syntax-trailing-function-commas "^6.22.0" babel-plugin-transform-async-to-generator "^6.22.0" babel-plugin-transform-es2015-arrow-functions "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" babel-plugin-transform-es2015-block-scoping "^6.23.0" babel-plugin-transform-es2015-classes "^6.23.0" babel-plugin-transform-es2015-computed-properties "^6.22.0" babel-plugin-transform-es2015-destructuring "^6.23.0" babel-plugin-transform-es2015-duplicate-keys "^6.22.0" babel-plugin-transform-es2015-for-of "^6.23.0" babel-plugin-transform-es2015-function-name "^6.22.0" babel-plugin-transform-es2015-literals "^6.22.0" babel-plugin-transform-es2015-modules-amd "^6.22.0" babel-plugin-transform-es2015-modules-commonjs "^6.23.0" babel-plugin-transform-es2015-modules-systemjs "^6.23.0" babel-plugin-transform-es2015-modules-umd "^6.23.0" babel-plugin-transform-es2015-object-super "^6.22.0" babel-plugin-transform-es2015-parameters "^6.23.0" babel-plugin-transform-es2015-shorthand-properties "^6.22.0" babel-plugin-transform-es2015-spread "^6.22.0" babel-plugin-transform-es2015-sticky-regex "^6.22.0" babel-plugin-transform-es2015-template-literals "^6.22.0" babel-plugin-transform-es2015-typeof-symbol "^6.23.0" babel-plugin-transform-es2015-unicode-regex "^6.22.0" babel-plugin-transform-exponentiation-operator "^6.22.0" babel-plugin-transform-regenerator "^6.22.0" browserslist "^1.4.0" invariant "^2.2.2" babel-preset-es2015@latest: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.0.tgz#c162d68b1932696e036cd3110dc1ccd303d2673a" dependencies: babel-plugin-check-es2015-constants "^6.22.0" babel-plugin-transform-es2015-arrow-functions "^6.22.0" babel-plugin-transform-es2015-block-scoped-functions "^6.22.0" babel-plugin-transform-es2015-block-scoping "^6.22.0" babel-plugin-transform-es2015-classes "^6.22.0" babel-plugin-transform-es2015-computed-properties "^6.22.0" babel-plugin-transform-es2015-destructuring "^6.22.0" babel-plugin-transform-es2015-duplicate-keys "^6.22.0" babel-plugin-transform-es2015-for-of "^6.22.0" babel-plugin-transform-es2015-function-name "^6.22.0" babel-plugin-transform-es2015-literals "^6.22.0" babel-plugin-transform-es2015-modules-amd "^6.24.0" babel-plugin-transform-es2015-modules-commonjs "^6.24.0" babel-plugin-transform-es2015-modules-systemjs "^6.22.0" babel-plugin-transform-es2015-modules-umd "^6.24.0" babel-plugin-transform-es2015-object-super "^6.22.0" babel-plugin-transform-es2015-parameters "^6.22.0" babel-plugin-transform-es2015-shorthand-properties "^6.22.0" babel-plugin-transform-es2015-spread "^6.22.0" babel-plugin-transform-es2015-sticky-regex "^6.22.0" babel-plugin-transform-es2015-template-literals "^6.22.0" babel-plugin-transform-es2015-typeof-symbol "^6.22.0" babel-plugin-transform-es2015-unicode-regex "^6.22.0" babel-plugin-transform-regenerator "^6.22.0" babel-preset-es2016@latest: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-es2016/-/babel-preset-es2016-6.22.0.tgz#b061aaa3983d40c9fbacfa3743b5df37f336156c" dependencies: babel-plugin-transform-exponentiation-operator "^6.22.0" babel-preset-es2017@latest: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-es2017/-/babel-preset-es2017-6.22.0.tgz#de2f9da5a30c50d293fb54a0ba15d6ddc573f0f2" dependencies: babel-plugin-syntax-trailing-function-commas "^6.22.0" babel-plugin-transform-async-to-generator "^6.22.0" babel-preset-stage-0@latest: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-stage-0/-/babel-preset-stage-0-6.22.0.tgz#707eeb5b415da769eff9c42f4547f644f9296ef9" dependencies: babel-plugin-transform-do-expressions "^6.22.0" babel-plugin-transform-function-bind "^6.22.0" babel-preset-stage-1 "^6.22.0" babel-preset-stage-1@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-stage-1/-/babel-preset-stage-1-6.22.0.tgz#7da05bffea6ad5a10aef93e320cfc6dd465dbc1a" dependencies: babel-plugin-transform-class-constructor-call "^6.22.0" babel-plugin-transform-export-extensions "^6.22.0" babel-preset-stage-2 "^6.22.0" babel-preset-stage-2@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.22.0.tgz#ccd565f19c245cade394b21216df704a73b27c07" dependencies: babel-plugin-syntax-dynamic-import "^6.18.0" babel-plugin-transform-class-properties "^6.22.0" babel-plugin-transform-decorators "^6.22.0" babel-preset-stage-3 "^6.22.0" babel-preset-stage-3@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.22.0.tgz#a4e92bbace7456fafdf651d7a7657ee0bbca9c2e" dependencies: babel-plugin-syntax-trailing-function-commas "^6.22.0" babel-plugin-transform-async-generator-functions "^6.22.0" babel-plugin-transform-async-to-generator "^6.22.0" babel-plugin-transform-exponentiation-operator "^6.22.0" babel-plugin-transform-object-rest-spread "^6.22.0" babel-register@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.23.0.tgz#c9aa3d4cca94b51da34826c4a0f9e08145d74ff3" dependencies: babel-core "^6.23.0" babel-runtime "^6.22.0" core-js "^2.4.0" home-or-tmp "^2.0.0" lodash "^4.2.0" mkdirp "^0.5.1" source-map-support "^0.4.2" babel-register@^6.24.0: version "6.24.0" resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.0.tgz#5e89f8463ba9970356d02eb07dabe3308b080cfd" dependencies: babel-core "^6.24.0" babel-runtime "^6.22.0" core-js "^2.4.0" home-or-tmp "^2.0.0" lodash "^4.2.0" mkdirp "^0.5.1" source-map-support "^0.4.2" babel-runtime@^6.18.0, babel-runtime@^6.22.0: version "6.22.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.22.0.tgz#1cf8b4ac67c77a4ddb0db2ae1f74de52ac4ca611" dependencies: core-js "^2.4.0" regenerator-runtime "^0.10.0" babel-template@^6.16.0, babel-template@^6.22.0, babel-template@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.23.0.tgz#04d4f270adbb3aa704a8143ae26faa529238e638" dependencies: babel-runtime "^6.22.0" babel-traverse "^6.23.0" babel-types "^6.23.0" babylon "^6.11.0" lodash "^4.2.0" babel-traverse@^6.15.0, babel-traverse@^6.18.0, babel-traverse@^6.22.0, babel-traverse@^6.23.0, babel-traverse@^6.23.1: version "6.23.1" resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.23.1.tgz#d3cb59010ecd06a97d81310065f966b699e14f48" dependencies: babel-code-frame "^6.22.0" babel-messages "^6.23.0" babel-runtime "^6.22.0" babel-types "^6.23.0" babylon "^6.15.0" debug "^2.2.0" globals "^9.0.0" invariant "^2.2.0" lodash "^4.2.0" babel-types@^6.15.0, babel-types@^6.18.0, babel-types@^6.19.0, babel-types@^6.22.0, babel-types@^6.23.0: version "6.23.0" resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.23.0.tgz#bb17179d7538bad38cd0c9e115d340f77e7e9acf" dependencies: babel-runtime "^6.22.0" esutils "^2.0.2" lodash "^4.2.0" to-fast-properties "^1.0.1" babylon@^6.11.0, babylon@^6.13.0: version "6.14.1" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.14.1.tgz#956275fab72753ad9b3435d7afe58f8bf0a29815" babylon@^6.15.0: version "6.16.1" resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.16.1.tgz#30c5a22f481978a9e7f8cdfdf496b11d94b404d3" balanced-match@^0.4.1: version "0.4.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" base62@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/base62/-/base62-1.1.2.tgz#22ced6a49913565bc0b8d9a11563a465c084124c" bcrypt-pbkdf@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" dependencies: tweetnacl "^0.14.3" binary-extensions@^1.0.0: version "1.8.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" block-stream@*: version "0.0.9" resolved "https://registry.yarnpkg.com/block-stream/-/block-stream-0.0.9.tgz#13ebfe778a03205cfe03751481ebb4b3300c126a" dependencies: inherits "~2.0.0" boolbase@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" dependencies: hoek "2.x.x" brace-expansion@^1.0.0: version "1.1.6" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" dependencies: balanced-match "^0.4.1" concat-map "0.0.1" braces@^1.8.2: version "1.8.5" resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" dependencies: expand-range "^1.8.1" preserve "^0.2.0" repeat-element "^1.1.2" browser-stdout@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/browser-stdout/-/browser-stdout-1.3.0.tgz#f351d32969d32fa5d7a5567154263d928ae3bd1f" browserslist@^1.4.0: version "1.7.7" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-1.7.7.tgz#0bd76704258be829b2398bb50e4b62d1a166b0b9" dependencies: caniuse-db "^1.0.30000639" electron-to-chromium "^1.2.7" browserslist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-2.1.2.tgz#a9dd0791342dab019861c2dd1cd0fd5d83230d39" dependencies: caniuse-lite "^1.0.30000665" electron-to-chromium "^1.3.9" buffer-shims@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" builtin-modules@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" caching-transform@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/caching-transform/-/caching-transform-1.0.1.tgz#6dbdb2f20f8d8fbce79f3e94e9d1742dcdf5c0a1" dependencies: md5-hex "^1.2.0" mkdirp "^0.5.1" write-file-atomic "^1.1.4" caller-path@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-0.1.0.tgz#94085ef63581ecd3daa92444a8fe94e82577751f" dependencies: callsites "^0.2.0" callsites@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-0.2.0.tgz#afab96262910a7f33c19a5775825c69f34e350ca" camelcase@^1.0.2: version "1.2.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" camelcase@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" caniuse-db@^1.0.30000639: version "1.0.30000670" resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000670.tgz#90d33b79e3090e25829c311113c56d6b1788bf43" caniuse-lite@^1.0.30000665: version "1.0.30000666" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30000666.tgz#831b63247e24fa408e20c6c546c4173d27c5a1a5" caseless@~0.11.0: version "0.11.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" center-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/center-align/-/center-align-0.1.3.tgz#aa0d32629b6ee972200411cbd4461c907bc2b7ad" dependencies: align-text "^0.1.3" lazy-cache "^1.0.3" chai@^3.0.0, chai@^3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/chai/-/chai-3.5.0.tgz#4d02637b067fe958bdbfdd3a40ec56fef7373247" dependencies: assertion-error "^1.0.1" deep-eql "^0.1.3" type-detect "^1.0.0" chalk@^1.0.0, chalk@^1.1.0, chalk@^1.1.1, chalk@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" dependencies: ansi-styles "^2.2.1" escape-string-regexp "^1.0.2" has-ansi "^2.0.0" strip-ansi "^3.0.0" supports-color "^2.0.0" cheerio@^0.20.0: version "0.20.0" resolved "https://registry.yarnpkg.com/cheerio/-/cheerio-0.20.0.tgz#5c710f2bab95653272842ba01c6ea61b3545ec35" dependencies: css-select "~1.2.0" dom-serializer "~0.1.0" entities "~1.1.1" htmlparser2 "~3.8.1" lodash "^4.1.0" optionalDependencies: jsdom "^7.0.2" chokidar@^1.6.1: version "1.6.1" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.6.1.tgz#2f4447ab5e96e50fb3d789fd90d4c72e0e4c70c2" dependencies: anymatch "^1.3.0" async-each "^1.0.0" glob-parent "^2.0.0" inherits "^2.0.1" is-binary-path "^1.0.0" is-glob "^2.0.0" path-is-absolute "^1.0.0" readdirp "^2.0.0" optionalDependencies: fsevents "^1.0.0" circular-json@^0.3.1: version "0.3.1" resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" cli-cursor@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-1.0.2.tgz#64da3f7d56a54412e59794bd62dc35295e8f2987" dependencies: restore-cursor "^1.0.1" cli-width@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" cli@~1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/cli/-/cli-1.0.1.tgz#22817534f24bfa4950c34d532d48ecbc621b8c14" dependencies: exit "0.1.2" glob "^7.1.1" cliui@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-2.1.0.tgz#4b475760ff80264c762c3a1719032e91c7fea0d1" dependencies: center-align "^0.1.1" right-align "^0.1.1" wordwrap "0.0.2" cliui@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" wrap-ansi "^2.0.0" clone-buffer@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-buffer/-/clone-buffer-1.0.0.tgz#e3e25b207ac4e701af721e2cb5a16792cac3dc58" clone-stats@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-1.0.0.tgz#b3782dff8bb5474e18b9b6bf0fdfe782f8777680" clone@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.1.tgz#d217d1e961118e3ac9a4b8bba3285553bf647cdb" cloneable-readable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/cloneable-readable/-/cloneable-readable-1.0.0.tgz#a6290d413f217a61232f95e458ff38418cfb0117" dependencies: inherits "^2.0.1" process-nextick-args "^1.0.6" through2 "^2.0.1" co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" code-point-at@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" codecov@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/codecov/-/codecov-1.0.1.tgz#97260ceac0e96b8eda8d562006558a53a139dffd" dependencies: argv ">=0.0.2" execSync "1.0.2" request ">=2.42.0" urlgrey ">=0.4.0" combined-stream@^1.0.5, combined-stream@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" dependencies: delayed-stream "~1.0.0" commander@2.9.0, commander@2.9.x, commander@^2.5.0, commander@^2.8.1, commander@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" dependencies: graceful-readlink ">= 1.0.0" commondir@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" commoner@^0.10.1: version "0.10.8" resolved "https://registry.yarnpkg.com/commoner/-/commoner-0.10.8.tgz#34fc3672cd24393e8bb47e70caa0293811f4f2c5" dependencies: commander "^2.5.0" detective "^4.3.1" glob "^5.0.15" graceful-fs "^4.1.2" iconv-lite "^0.4.5" mkdirp "^0.5.0" private "^0.1.6" q "^1.1.2" recast "^0.11.17" compat-table@kangax/compat-table#d88c80ea6dcbc7064112eb46bb020718107892f7: version "0.0.0" resolved "https://codeload.github.com/kangax/compat-table/tar.gz/d88c80ea6dcbc7064112eb46bb020718107892f7" dependencies: babel-core latest babel-polyfill latest babel-preset-es2015 latest babel-preset-es2016 latest babel-preset-es2017 latest babel-preset-stage-0 latest chalk "^1.1.3" cheerio "^0.20.0" closurecompiler latest core-js latest es5-shim latest es6-shim latest es6-transpiler latest es7-shim latest esdown latest espree latest esprima latest jshint latest jstransform latest lodash.pickby "^4.6.0" object.assign "^4.0.4" traceur latest typescript latest concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" concat-stream@^1.4.6: version "1.6.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.0.tgz#0aac662fd52be78964d5532f694784e70110acf7" dependencies: inherits "^2.0.3" readable-stream "^2.2.2" typedarray "^0.0.6" console-browserify@1.1.x: version "1.1.0" resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.1.0.tgz#f0241c45730a9fc6323b206dbf38edc741d0bb10" dependencies: date-now "^0.1.4" console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" convert-source-map@^1.1.0, convert-source-map@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.3.0.tgz#e9f3e9c6e2728efc2676696a70eb382f73106a67" core-js@^2.4.0, core-js@latest: version "2.4.1" resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.4.1.tgz#4de911e667b0eae9124e34254b53aea6fc618d3e" core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" cross-spawn@^4: version "4.0.2" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-4.0.2.tgz#7b9247621c23adfdd3856004a823cbe397424d41" dependencies: lru-cache "^4.0.1" which "^1.2.9" cryptiles@2.x.x: version "2.0.5" resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" dependencies: boom "2.x.x" css-select@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/css-select/-/css-select-1.2.0.tgz#2b3a110539c5355f1cd8d314623e870b121ec858" dependencies: boolbase "~1.0.0" css-what "2.1" domutils "1.5.1" nth-check "~1.0.1" css-what@2.1: version "2.1.0" resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" cssom@0.3.x, "cssom@>= 0.3.0 < 0.4.0": version "0.3.2" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.2.tgz#b8036170c79f07a90ff2f16e22284027a243848b" "cssstyle@>= 0.2.29 < 0.3.0": version "0.2.37" resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-0.2.37.tgz#541097234cb2513c83ceed3acddc27ff27987d54" dependencies: cssom "0.3.x" d@^0.1.1, d@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/d/-/d-0.1.1.tgz#da184c535d18d8ee7ba2aa229b914009fae11309" dependencies: es5-ext "~0.10.2" dashdash@^1.12.0: version "1.14.1" resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" dependencies: assert-plus "^1.0.0" date-now@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/date-now/-/date-now-0.1.4.tgz#eaf439fd4d4848ad74e5cc7dbef200672b9e345b" debug-log@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debug-log/-/debug-log-1.0.1.tgz#2307632d4c04382b8df8a32f70b895046d52745f" debug@2.2.0, debug@^2.1.1, debug@^2.2.0, debug@~2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/debug/-/debug-2.2.0.tgz#f87057e995b1a1f6ae6a4960664137bc56f039da" dependencies: ms "0.7.1" decamelize@^1.0.0, decamelize@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" deep-eql@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-eql/-/deep-eql-0.1.3.tgz#ef558acab8de25206cd713906d74e56930eb69f2" dependencies: type-detect "0.1.1" deep-extend@~0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.1.tgz#efe4113d08085f4e6f9687759810f807469e2253" deep-is@~0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" default-require-extensions@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/default-require-extensions/-/default-require-extensions-1.0.0.tgz#f37ea15d3e13ffd9b437d33e1a75b5fb97874cb8" dependencies: strip-bom "^2.0.0" define-properties@^1.0.1, define-properties@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.2.tgz#83a73f2fea569898fb737193c8f873caf6d45c94" dependencies: foreach "^2.0.5" object-keys "^1.0.8" defined@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/defined/-/defined-1.0.0.tgz#c98d9bcef75674188e110969151199e39b1fa693" del@^2.0.2: version "2.2.2" resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" dependencies: globby "^5.0.0" is-path-cwd "^1.0.0" is-path-in-cwd "^1.0.0" object-assign "^4.0.1" pify "^2.0.0" pinkie-promise "^2.0.0" rimraf "^2.2.8" delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" detect-indent@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-4.0.0.tgz#f76d064352cdf43a1cb6ce619c4ee3a9475de208" dependencies: repeating "^2.0.0" detective@^4.3.1: version "4.5.0" resolved "https://registry.yarnpkg.com/detective/-/detective-4.5.0.tgz#6e5a8c6b26e6c7a254b1c6b6d7490d98ec91edd1" dependencies: acorn "^4.0.3" defined "^1.0.0" diff@1.0: version "1.0.8" resolved "https://registry.yarnpkg.com/diff/-/diff-1.0.8.tgz#343276308ec991b7bc82267ed55bc1411f971666" diff@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/diff/-/diff-1.4.0.tgz#7f28d2eb9ee7b15a97efd89ce63dcfdaa3ccbabf" doctrine@^1.2.2: version "1.5.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-1.5.0.tgz#379dce730f6166f76cefa4e6707a159b02c5a6fa" dependencies: esutils "^2.0.2" isarray "^1.0.0" dom-serializer@0, dom-serializer@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-0.1.0.tgz#073c697546ce0780ce23be4a28e293e40bc30c82" dependencies: domelementtype "~1.1.1" entities "~1.1.1" domelementtype@1, domelementtype@~1.1.1: version "1.1.3" resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" domhandler@2.3: version "2.3.0" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.3.0.tgz#2de59a0822d5027fabff6f032c2b25a2a8abe738" dependencies: domelementtype "1" domutils@1.5, domutils@1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.5.1.tgz#dcd8488a26f563d61079e48c9f7b7e32373682cf" dependencies: dom-serializer "0" domelementtype "1" ecc-jsbn@~0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" dependencies: jsbn "~0.1.0" electron-to-chromium@^1.2.7, electron-to-chromium@^1.3.11, electron-to-chromium@^1.3.9: version "1.3.11" resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.11.tgz#744761df1d67b492b322ce9aa0aba5393260eb61" entities@1.0: version "1.0.0" resolved "https://registry.yarnpkg.com/entities/-/entities-1.0.0.tgz#b2987aa3821347fcde642b24fdfc9e4fb712bf26" entities@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" error-ex@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.1.tgz#f855a86ce61adc4e8621c3cda21e7a7612c3a8dc" dependencies: is-arrayish "^0.2.1" es-abstract@^1.2.1, es-abstract@^1.4.3, es-abstract@^1.5.0, es-abstract@^1.5.1, es-abstract@^1.6.1: version "1.7.0" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.7.0.tgz#dfade774e01bfcd97f96180298c449c8623fb94c" dependencies: es-to-primitive "^1.1.1" function-bind "^1.1.0" is-callable "^1.1.3" is-regex "^1.0.3" es-to-primitive@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.1.1.tgz#45355248a88979034b6792e19bb81f2b7975dd0d" dependencies: is-callable "^1.1.1" is-date-object "^1.0.1" is-symbol "^1.0.1" es5-ext@^0.10.7, es5-ext@^0.10.8, es5-ext@~0.10.11, es5-ext@~0.10.2, es5-ext@~0.10.7: version "0.10.12" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.12.tgz#aa84641d4db76b62abba5e45fd805ecbab140047" dependencies: es6-iterator "2" es6-symbol "~3.1" es5-shim@latest: version "4.5.9" resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.5.9.tgz#2a1e2b9e583ff5fed0c20a3ee2cbf3f75230a5c0" es5-shim@~4.0.0: version "4.0.6" resolved "https://registry.yarnpkg.com/es5-shim/-/es5-shim-4.0.6.tgz#443bf1f0503cdeabceb01ec80a84af1b8f1ca9f7" es6-iterator@2: version "2.0.0" resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.0.tgz#bd968567d61635e33c0b80727613c9cb4b096bac" dependencies: d "^0.1.1" es5-ext "^0.10.7" es6-symbol "3" es6-map@^0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.4.tgz#a34b147be224773a4d7da8072794cefa3632b897" dependencies: d "~0.1.1" es5-ext "~0.10.11" es6-iterator "2" es6-set "~0.1.3" es6-symbol "~3.1.0" event-emitter "~0.3.4" es6-set@~0.1.3: version "0.1.4" resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.4.tgz#9516b6761c2964b92ff479456233a247dc707ce8" dependencies: d "~0.1.1" es5-ext "~0.10.11" es6-iterator "2" es6-symbol "3" event-emitter "~0.3.4" es6-shim@latest: version "0.35.3" resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.3.tgz#9bfb7363feffff87a6cdb6cd93e405ec3c4b6f26" es6-symbol@3, es6-symbol@~3.1, es6-symbol@~3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.0.tgz#94481c655e7a7cad82eba832d97d5433496d7ffa" dependencies: d "~0.1.1" es5-ext "~0.10.11" es6-transpiler@latest: version "0.7.18" resolved "https://registry.yarnpkg.com/es6-transpiler/-/es6-transpiler-0.7.18.tgz#de5209544d1bb2c282caed0acb7fdba731ed655f" dependencies: ansidiff "~1.0.0" astquery latest es5-shim "~4.0.0" es6-shim latest jsesc latest regenerate latest simple-fmt "~0.1.0" simple-is "~0.2.0" string-alter latest stringmap "~0.2.0" stringset "~0.2.0" es6-weak-map@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.1.tgz#0d2bbd8827eb5fb4ba8f97fbfea50d43db21ea81" dependencies: d "^0.1.1" es5-ext "^0.10.8" es6-iterator "2" es6-symbol "3" es7-shim@latest: version "6.0.0" resolved "https://registry.yarnpkg.com/es7-shim/-/es7-shim-6.0.0.tgz#0c430b40b8505ad15570721a8d8dd4eb0c553155" dependencies: array-includes "^3.0.2" object.entries "^1.0.3" object.getownpropertydescriptors "^2.0.2" object.values "^1.0.3" string-at "^1.0.1" string.prototype.padend "^3.0.0" string.prototype.padstart "^3.0.0" string.prototype.trimleft "^2.0.0" string.prototype.trimright "^2.0.0" escape-string-regexp@1.0.5, escape-string-regexp@^1.0.2, escape-string-regexp@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" escodegen@^1.6.1: version "1.8.1" resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018" dependencies: esprima "^2.7.1" estraverse "^1.9.1" esutils "^2.0.2" optionator "^0.8.1" optionalDependencies: source-map "~0.2.0" escope@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/escope/-/escope-3.6.0.tgz#e01975e812781a163a6dadfdd80398dc64c889c3" dependencies: es6-map "^0.1.3" es6-weak-map "^2.0.1" esrecurse "^4.1.0" estraverse "^4.1.1" esdown@latest: version "1.1.16" resolved "https://registry.yarnpkg.com/esdown/-/esdown-1.1.16.tgz#0ef0382fcabd14db10adfbeccf109257d2838d9e" eslint-config-babel@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/eslint-config-babel/-/eslint-config-babel-6.0.0.tgz#66feedf6ce6e04abe585cec1a65b5bcc96bed50a" eslint-plugin-flowtype@^2.29.1: version "2.33.0" resolved "https://registry.yarnpkg.com/eslint-plugin-flowtype/-/eslint-plugin-flowtype-2.33.0.tgz#b2783814ed2ddcf729953b8f65ff73c90cabee4b" dependencies: lodash "^4.15.0" eslint@^3.17.1: version "3.17.1" resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.17.1.tgz#b80ae12d9c406d858406fccda627afce33ea10ea" dependencies: babel-code-frame "^6.16.0" chalk "^1.1.3" concat-stream "^1.4.6" debug "^2.1.1" doctrine "^1.2.2" escope "^3.6.0" espree "^3.4.0" estraverse "^4.2.0" esutils "^2.0.2" file-entry-cache "^2.0.0" glob "^7.0.3" globals "^9.14.0" ignore "^3.2.0" imurmurhash "^0.1.4" inquirer "^0.12.0" is-my-json-valid "^2.10.0" is-resolvable "^1.0.0" js-yaml "^3.5.1" json-stable-stringify "^1.0.0" levn "^0.3.0" lodash "^4.0.0" mkdirp "^0.5.0" natural-compare "^1.4.0" optionator "^0.8.2" path-is-inside "^1.0.1" pluralize "^1.2.1" progress "^1.1.8" require-uncached "^1.0.2" shelljs "^0.7.5" strip-bom "^3.0.0" strip-json-comments "~2.0.1" table "^3.7.8" text-table "~0.2.0" user-home "^2.0.0" espree@^3.4.0, espree@latest: version "3.4.1" resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.1.tgz#28a83ab4aaed71ed8fe0f5efe61b76a05c13c4d2" dependencies: acorn "^5.0.1" acorn-jsx "^3.0.0" esprima-fb@^15001.1.0-dev-harmony-fb: version "15001.1.0-dev-harmony-fb" resolved "https://registry.yarnpkg.com/esprima-fb/-/esprima-fb-15001.1.0-dev-harmony-fb.tgz#30a947303c6b8d5e955bee2b99b1d233206a6901" esprima@^2.6.0, esprima@^2.7.1: version "2.7.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-2.7.3.tgz#96e3b70d5779f6ad49cd032673d1c312767ba581" esprima@latest, esprima@~3.1.0: version "3.1.3" resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" esrecurse@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.1.0.tgz#4713b6536adf7f2ac4f327d559e7756bff648220" dependencies: estraverse "~4.1.0" object-assign "^4.0.1" estraverse@^1.9.1: version "1.9.3" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.9.3.tgz#af67f2dc922582415950926091a4005d29c9bb44" estraverse@^4.1.1, estraverse@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.2.0.tgz#0dee3fed31fcd469618ce7342099fc1afa0bdb13" estraverse@~4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.1.1.tgz#f6caca728933a850ef90661d0e17982ba47111a2" esutils@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.2.tgz#0abf4f1caa5bcb1f7a9d8acc6dea4faaa04bac9b" event-emitter@~0.3.4: version "0.3.4" resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.4.tgz#8d63ddfb4cfe1fae3b32ca265c4c720222080bb5" dependencies: d "~0.1.1" es5-ext "~0.10.7" execSync@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/execSync/-/execSync-1.0.2.tgz#1f42eda582225180053224ecdd3fd1960fdb3139" dependencies: temp "~0.5.1" exit-hook@^1.0.0: version "1.1.1" resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" exit@0.1.2, exit@0.1.x: version "0.1.2" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" dependencies: is-posix-bracket "^0.1.0" expand-range@^1.8.1: version "1.8.2" resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" dependencies: fill-range "^2.1.0" extend@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" extglob@^0.3.1: version "0.3.2" resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" dependencies: is-extglob "^1.0.0" extsprintf@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" fast-levenshtein@~2.0.4: version "2.0.6" resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" figures@^1.3.5: version "1.7.0" resolved "https://registry.yarnpkg.com/figures/-/figures-1.7.0.tgz#cbe1e3affcf1cd44b80cadfed28dc793a9701d2e" dependencies: escape-string-regexp "^1.0.5" object-assign "^4.1.0" file-entry-cache@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-2.0.0.tgz#c392990c3e684783d838b8c84a45d8a048458361" dependencies: flat-cache "^1.2.1" object-assign "^4.0.1" filename-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" fill-range@^2.1.0: version "2.2.3" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" dependencies: is-number "^2.1.0" isobject "^2.0.0" randomatic "^1.1.3" repeat-element "^1.1.2" repeat-string "^1.5.2" find-cache-dir@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-0.1.1.tgz#c8defae57c8a52a8a784f9e31c57c742e993a0b9" dependencies: commondir "^1.0.1" mkdirp "^0.5.1" pkg-dir "^1.0.0" find-up@^1.0.0, find-up@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" dependencies: path-exists "^2.0.0" pinkie-promise "^2.0.0" flat-cache@^1.2.1: version "1.2.2" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-1.2.2.tgz#fa86714e72c21db88601761ecf2f555d1abc6b96" dependencies: circular-json "^0.3.1" del "^2.0.2" graceful-fs "^4.1.2" write "^0.2.1" for-in@^0.1.5: version "0.1.6" resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8" for-own@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072" dependencies: for-in "^0.1.5" foreach@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" foreground-child@^1.3.3, foreground-child@^1.5.3: version "1.5.6" resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-1.5.6.tgz#4fd71ad2dfde96789b980a5c0a295937cb2f5ce9" dependencies: cross-spawn "^4" signal-exit "^3.0.0" forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" form-data@~2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4" dependencies: asynckit "^0.4.0" combined-stream "^1.0.5" mime-types "^2.1.12" fs-extra@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-2.0.0.tgz#337352bded4a0b714f3eb84de8cea765e9d37600" dependencies: graceful-fs "^4.1.2" jsonfile "^2.1.0" fs-readdir-recursive@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz#8cd1745c8b4f8a29c8caec392476921ba195f560" fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" fsevents@^1.0.0: version "1.0.15" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.0.15.tgz#fa63f590f3c2ad91275e4972a6cea545fb0aae44" dependencies: nan "^2.3.0" node-pre-gyp "^0.6.29" fstream-ignore@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/fstream-ignore/-/fstream-ignore-1.0.5.tgz#9c31dae34767018fe1d249b24dada67d092da105" dependencies: fstream "^1.0.0" inherits "2" minimatch "^3.0.0" fstream@^1.0.0, fstream@^1.0.2, fstream@~1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.10.tgz#604e8a92fe26ffd9f6fae30399d4984e1ab22822" dependencies: graceful-fs "^4.1.2" inherits "~2.0.0" mkdirp ">=0.5 0" rimraf "2" function-bind@^1.0.2, function-bind@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" gauge@~2.7.1: version "2.7.2" resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.2.tgz#15cecc31b02d05345a5d6b0e171cdb3ad2307774" dependencies: aproba "^1.0.3" console-control-strings "^1.0.0" has-unicode "^2.0.0" object-assign "^4.1.0" signal-exit "^3.0.0" string-width "^1.0.1" strip-ansi "^3.0.1" supports-color "^0.2.0" wide-align "^1.1.0" generate-function@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" generate-object-property@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" dependencies: is-property "^1.0.0" get-caller-file@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.2.tgz#f702e63127e7e231c160a80c1554acb70d5047e5" getpass@^0.1.1: version "0.1.6" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" dependencies: assert-plus "^1.0.0" glob-base@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" dependencies: glob-parent "^2.0.0" is-glob "^2.0.0" glob-parent@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" dependencies: is-glob "^2.0.0" glob@5.0.x, glob@^5.0.15: version "5.0.15" resolved "https://registry.yarnpkg.com/glob/-/glob-5.0.15.tgz#1bc936b9e02f4a603fcc222ecf7633d30b8b93b1" dependencies: inflight "^1.0.4" inherits "2" minimatch "2 || 3" once "^1.3.0" path-is-absolute "^1.0.0" glob@7.0.5, glob@^7.0.0, glob@^7.0.3: version "7.0.5" resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.5.tgz#b4202a69099bbb4d292a7c1b95b6682b67ebdc95" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" minimatch "^3.0.2" once "^1.3.0" path-is-absolute "^1.0.0" glob@^7.0.5, glob@^7.0.6, glob@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" dependencies: fs.realpath "^1.0.0" inflight "^1.0.4" inherits "2" minimatch "^3.0.2" once "^1.3.0" path-is-absolute "^1.0.0" globals@^9.0.0, globals@^9.14.0: version "9.14.0" resolved "https://registry.yarnpkg.com/globals/-/globals-9.14.0.tgz#8859936af0038741263053b39d0e76ca241e4034" globby@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" dependencies: array-union "^1.0.1" arrify "^1.0.0" glob "^7.0.3" object-assign "^4.0.1" pify "^2.0.0" pinkie-promise "^2.0.0" google-closure-compiler-js@^20170521.0.0: version "20170521.0.0" resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20170521.0.0.tgz#9ac5fd6818aa500333a199ed0a9d0449e52120c9" dependencies: minimist "^1.2.0" vinyl "^2.0.1" webpack-core "^0.6.8" graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.4, graceful-fs@^4.1.6: version "4.1.11" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" graceful-fs@~1: version "1.2.3" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" "graceful-readlink@>= 1.0.0": version "1.0.1" resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" growl@1.9.2: version "1.9.2" resolved "https://registry.yarnpkg.com/growl/-/growl-1.9.2.tgz#0ea7743715db8d8de2c5ede1775e1b45ac85c02f" handlebars@^4.0.3: version "4.0.6" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.0.6.tgz#2ce4484850537f9c97a8026d5399b935c4ed4ed7" dependencies: async "^1.4.0" optimist "^0.6.1" source-map "^0.4.4" optionalDependencies: uglify-js "^2.6" har-validator@~2.0.6: version "2.0.6" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" dependencies: chalk "^1.1.1" commander "^2.9.0" is-my-json-valid "^2.12.4" pinkie-promise "^2.0.0" has-ansi@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" dependencies: ansi-regex "^2.0.0" has-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" has-unicode@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" has@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/has/-/has-1.0.1.tgz#8461733f538b0837c9361e39a9ab9e9704dc2f28" dependencies: function-bind "^1.0.2" hawk@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" dependencies: boom "2.x.x" cryptiles "2.x.x" hoek "2.x.x" sntp "1.x.x" hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" home-or-tmp@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/home-or-tmp/-/home-or-tmp-2.0.0.tgz#e36c3f2d2cae7d746a857e38d18d5f32a7882db8" dependencies: os-homedir "^1.0.0" os-tmpdir "^1.0.1" hosted-git-info@^2.1.4: version "2.2.0" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.2.0.tgz#7a0d097863d886c0fabbdcd37bf1758d8becf8a5" htmlparser2@3.8.x, htmlparser2@~3.8.1: version "3.8.3" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.8.3.tgz#996c28b191516a8be86501a7d79757e5c70c1068" dependencies: domelementtype "1" domhandler "2.3" domutils "1.5" entities "1.0" readable-stream "1.1" http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" dependencies: assert-plus "^0.2.0" jsprim "^1.2.2" sshpk "^1.7.0" iconv-lite@^0.4.5: version "0.4.15" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.15.tgz#fe265a218ac6a57cfe854927e9d04c19825eddeb" ignore@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.2.0.tgz#8d88f03c3002a0ac52114db25d2c673b0bf1e435" imurmurhash@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" dependencies: once "^1.3.0" wrappy "1" inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" ini@~1.3.0: version "1.3.4" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" inquirer@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-0.12.0.tgz#1ef2bfd63504df0bc75785fff8c2c41df12f077e" dependencies: ansi-escapes "^1.1.0" ansi-regex "^2.0.0" chalk "^1.0.0" cli-cursor "^1.0.1" cli-width "^2.0.0" figures "^1.3.5" lodash "^4.3.0" readline2 "^1.0.1" run-async "^0.1.0" rx-lite "^3.1.2" string-width "^1.0.1" strip-ansi "^3.0.0" through "^2.3.6" interpret@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c" invariant@^2.2.0, invariant@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.2.tgz#9e1f56ac0acdb6bf303306f338be3b204ae60360" dependencies: loose-envify "^1.0.0" invert-kv@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" is-arrayish@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" is-binary-path@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-1.0.1.tgz#75f16642b480f187a711c814161fd3a4a7655898" dependencies: binary-extensions "^1.0.0" is-buffer@^1.0.2: version "1.1.4" resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b" is-builtin-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" dependencies: builtin-modules "^1.0.0" is-callable@^1.1.1, is-callable@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.3.tgz#86eb75392805ddc33af71c92a0eedf74ee7604b2" is-date-object@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16" is-dotfile@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d" is-equal-shallow@^0.1.3: version "0.1.3" resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" dependencies: is-primitive "^2.0.0" is-extendable@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" is-extglob@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" is-finite@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" dependencies: number-is-nan "^1.0.0" is-fullwidth-code-point@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" is-glob@^2.0.0, is-glob@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" dependencies: is-extglob "^1.0.0" is-my-json-valid@^2.10.0, is-my-json-valid@^2.12.4: version "2.15.0" resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz#936edda3ca3c211fd98f3b2d3e08da43f7b2915b" dependencies: generate-function "^2.0.0" generate-object-property "^1.1.0" jsonpointer "^4.0.0" xtend "^4.0.0" is-number@^2.0.2, is-number@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" dependencies: kind-of "^3.0.2" is-path-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" is-path-in-cwd@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" dependencies: is-path-inside "^1.0.0" is-path-inside@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" dependencies: path-is-inside "^1.0.1" is-posix-bracket@^0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" is-primitive@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" is-property@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" is-regex@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491" dependencies: has "^1.0.1" is-resolvable@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-resolvable/-/is-resolvable-1.0.0.tgz#8df57c61ea2e3c501408d100fb013cf8d6e0cc62" dependencies: tryit "^1.0.1" is-symbol@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.1.tgz#3cc59f00025194b6ab2e38dbae6689256b660572" is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" is-utf8@^0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" isarray@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" isarray@1.0.0, isarray@^1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" isexe@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" isobject@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" dependencies: isarray "1.0.0" isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" istanbul-lib-coverage@^1.0.0, istanbul-lib-coverage@^1.0.0-alpha, istanbul-lib-coverage@^1.0.0-alpha.0, istanbul-lib-coverage@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-1.0.1.tgz#f263efb519c051c5f1f3343034fc40e7b43ff212" istanbul-lib-hook@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/istanbul-lib-hook/-/istanbul-lib-hook-1.0.0.tgz#fc5367ee27f59268e8f060b0c7aaf051d9c425c5" dependencies: append-transform "^0.4.0" istanbul-lib-instrument@^1.4.2: version "1.4.2" resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-1.4.2.tgz#0e2fdfac93c1dabf2e31578637dc78a19089f43e" dependencies: babel-generator "^6.18.0" babel-template "^6.16.0" babel-traverse "^6.18.0" babel-types "^6.18.0" babylon "^6.13.0" istanbul-lib-coverage "^1.0.0" semver "^5.3.0" istanbul-lib-report@^1.0.0-alpha.3: version "1.0.0-alpha.3" resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-1.0.0-alpha.3.tgz#32d5f6ec7f33ca3a602209e278b2e6ff143498af" dependencies: async "^1.4.2" istanbul-lib-coverage "^1.0.0-alpha" mkdirp "^0.5.1" path-parse "^1.0.5" rimraf "^2.4.3" supports-color "^3.1.2" istanbul-lib-source-maps@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.1.0.tgz#9d429218f35b823560ea300a96ff0c3bbdab785f" dependencies: istanbul-lib-coverage "^1.0.0-alpha.0" mkdirp "^0.5.1" rimraf "^2.4.4" source-map "^0.5.3" istanbul-reports@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-1.0.1.tgz#9a17176bc4a6cbebdae52b2f15961d52fa623fbc" dependencies: handlebars "^4.0.3" jodid25519@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967" dependencies: jsbn "~0.1.0" js-tokens@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-2.0.0.tgz#79903f5563ee778cc1162e6dcf1a0027c97f9cb5" js-tokens@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-3.0.1.tgz#08e9f132484a2c45a30907e9dc4d5567b7f114d7" js-yaml@^3.5.1: version "3.7.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.7.0.tgz#5c967ddd837a9bfdca5f2de84253abe8a1c03b80" dependencies: argparse "^1.0.7" esprima "^2.6.0" jsbn@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" jsdom@^7.0.2: version "7.2.2" resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-7.2.2.tgz#40b402770c2bda23469096bee91ab675e3b1fc6e" dependencies: abab "^1.0.0" acorn "^2.4.0" acorn-globals "^1.0.4" cssom ">= 0.3.0 < 0.4.0" cssstyle ">= 0.2.29 < 0.3.0" escodegen "^1.6.1" nwmatcher ">= 1.3.7 < 2.0.0" parse5 "^1.5.1" request "^2.55.0" sax "^1.1.4" symbol-tree ">= 3.1.0 < 4.0.0" tough-cookie "^2.2.0" webidl-conversions "^2.0.0" whatwg-url-compat "~0.6.5" xml-name-validator ">= 2.0.1 < 3.0.0" jsesc@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" jsesc@latest: version "2.4.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.4.0.tgz#8568d223ff69c0b5e081b4f8edf5a23d978c9867" jsesc@~0.5.0: version "0.5.0" resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" jshint@latest: version "2.9.4" resolved "https://registry.yarnpkg.com/jshint/-/jshint-2.9.4.tgz#5e3ba97848d5290273db514aee47fe24cf592934" dependencies: cli "~1.0.0" console-browserify "1.1.x" exit "0.1.x" htmlparser2 "3.8.x" lodash "3.7.x" minimatch "~3.0.2" shelljs "0.3.x" strip-json-comments "1.0.x" json-schema@0.2.3: version "0.2.3" resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" json-stable-stringify@^1.0.0, json-stable-stringify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" dependencies: jsonify "~0.0.0" json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" json3@3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/json3/-/json3-3.3.2.tgz#3c0434743df93e2f5c42aee7b19bcb483575f4e1" json5@^0.5.0: version "0.5.1" resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" jsonfile@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-2.4.0.tgz#3736a2b428b87bbda0cc83b53fa3d633a35c2ae8" optionalDependencies: graceful-fs "^4.1.6" jsonify@~0.0.0: version "0.0.0" resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" jsonpointer@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.1.tgz#4fd92cb34e0e9db3c89c8622ecf51f9b978c6cb9" jsprim@^1.2.2: version "1.3.1" resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252" dependencies: extsprintf "1.0.2" json-schema "0.2.3" verror "1.3.6" jstransform@latest: version "11.0.3" resolved "https://registry.yarnpkg.com/jstransform/-/jstransform-11.0.3.tgz#09a78993e0ae4d4ef4487f6155a91f6190cb4223" dependencies: base62 "^1.1.0" commoner "^0.10.1" esprima-fb "^15001.1.0-dev-harmony-fb" object-assign "^2.0.0" source-map "^0.4.2" kind-of@^3.0.2: version "3.1.0" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.1.0.tgz#475d698a5e49ff5e53d14e3e732429dc8bf4cf47" dependencies: is-buffer "^1.0.2" lazy-cache@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" lcid@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" dependencies: invert-kv "^1.0.0" levn@^0.3.0, levn@~0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" dependencies: prelude-ls "~1.1.2" type-check "~0.3.2" load-json-file@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" dependencies: graceful-fs "^4.1.2" parse-json "^2.2.0" pify "^2.0.0" pinkie-promise "^2.0.0" strip-bom "^2.0.0" lodash._baseassign@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz#8c38a099500f215ad09e59f1722fd0c52bfe0a4e" dependencies: lodash._basecopy "^3.0.0" lodash.keys "^3.0.0" lodash._basecopy@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" lodash._basecreate@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz#1bc661614daa7fc311b7d03bf16806a0213cf821" lodash._getnative@^3.0.0: version "3.9.1" resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" lodash._isiterateecall@^3.0.0: version "3.0.9" resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" lodash.create@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/lodash.create/-/lodash.create-3.1.1.tgz#d7f2849f0dbda7e04682bb8cd72ab022461debe7" dependencies: lodash._baseassign "^3.0.0" lodash._basecreate "^3.0.0" lodash._isiterateecall "^3.0.0" lodash.isarguments@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" lodash.isarray@^3.0.0: version "3.0.4" resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" lodash.keys@^3.0.0: version "3.1.2" resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" dependencies: lodash._getnative "^3.0.0" lodash.isarguments "^3.0.0" lodash.isarray "^3.0.0" lodash.pickby@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/lodash.pickby/-/lodash.pickby-4.6.0.tgz#7dea21d8c18d7703a27c704c15d3b84a67e33aff" lodash@3.7.x: version "3.7.0" resolved "https://registry.yarnpkg.com/lodash/-/lodash-3.7.0.tgz#3678bd8ab995057c07ade836ed2ef087da811d45" lodash@^4.0.0, lodash@^4.1.0, lodash@^4.15.0, lodash@^4.17.4, lodash@^4.2.0, lodash@^4.3.0: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" longest@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/longest/-/longest-1.0.1.tgz#30a0b2da38f73770e8294a0d22e6625ed77d0097" loose-envify@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.0.tgz#6b26248c42f6d4fa4b0d8542f78edfcde35642a8" dependencies: js-tokens "^2.0.0" lru-cache@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" dependencies: pseudomap "^1.0.1" yallist "^2.0.0" md5-hex@^1.2.0: version "1.3.0" resolved "https://registry.yarnpkg.com/md5-hex/-/md5-hex-1.3.0.tgz#d2c4afe983c4370662179b8cad145219135046c4" dependencies: md5-o-matic "^0.1.1" md5-o-matic@^0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/md5-o-matic/-/md5-o-matic-0.1.1.tgz#822bccd65e117c514fab176b25945d54100a03c3" merge-source-map@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/merge-source-map/-/merge-source-map-1.0.3.tgz#da1415f2722a5119db07b14c4f973410863a2abf" dependencies: source-map "^0.5.3" micromatch@^2.1.5, micromatch@^2.3.11: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" dependencies: arr-diff "^2.0.0" array-unique "^0.2.1" braces "^1.8.2" expand-brackets "^0.1.4" extglob "^0.3.1" filename-regex "^2.0.0" is-extglob "^1.0.0" is-glob "^2.0.1" kind-of "^3.0.2" normalize-path "^2.0.1" object.omit "^2.0.0" parse-glob "^3.0.4" regex-cache "^0.4.2" mime-db@~1.25.0: version "1.25.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.25.0.tgz#c18dbd7c73a5dbf6f44a024dc0d165a1e7b1c392" mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.13" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.13.tgz#e07aaa9c6c6b9a7ca3012c69003ad25a39e92a88" dependencies: mime-db "~1.25.0" "minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@~3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" dependencies: brace-expansion "^1.0.0" minimist@0.0.8, minimist@~0.0.1: version "0.0.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" minimist@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" mkdirp@0.5.1, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" dependencies: minimist "0.0.8" mocha@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/mocha/-/mocha-3.2.0.tgz#7dc4f45e5088075171a68896814e6ae9eb7a85e3" dependencies: browser-stdout "1.3.0" commander "2.9.0" debug "2.2.0" diff "1.4.0" escape-string-regexp "1.0.5" glob "7.0.5" growl "1.9.2" json3 "3.3.2" lodash.create "3.1.1" mkdirp "0.5.1" supports-color "3.1.2" ms@0.7.1: version "0.7.1" resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.1.tgz#9cd13c03adbff25b65effde7ce864ee952017098" mute-stream@0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.5.tgz#8fbfabb0a98a253d3184331f9e8deb7372fac6c0" nan@^2.3.0: version "2.5.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.5.0.tgz#aa8f1e34531d807e9e27755b234b4a6ec0c152a8" natural-compare@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" node-pre-gyp@^0.6.29: version "0.6.32" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.32.tgz#fc452b376e7319b3d255f5f34853ef6fd8fe1fd5" dependencies: mkdirp "~0.5.1" nopt "~3.0.6" npmlog "^4.0.1" rc "~1.1.6" request "^2.79.0" rimraf "~2.5.4" semver "~5.3.0" tar "~2.2.1" tar-pack "~3.3.0" nopt@~3.0.6: version "3.0.6" resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" dependencies: abbrev "1" normalize-package-data@^2.3.2: version "2.3.6" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.6.tgz#498fa420c96401f787402ba21e600def9f981fff" dependencies: hosted-git-info "^2.1.4" is-builtin-module "^1.0.0" semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" normalize-path@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a" npmlog@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" dependencies: are-we-there-yet "~1.1.2" console-control-strings "~1.1.0" gauge "~2.7.1" set-blocking "~2.0.0" nth-check@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-1.0.1.tgz#9929acdf628fc2c41098deab82ac580cf149aae4" dependencies: boolbase "~1.0.0" number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" "nwmatcher@>= 1.3.7 < 2.0.0": version "1.3.9" resolved "https://registry.yarnpkg.com/nwmatcher/-/nwmatcher-1.3.9.tgz#8bab486ff7fa3dfd086656bbe8b17116d3692d2a" nyc@^10.1.2: version "10.1.2" resolved "https://registry.yarnpkg.com/nyc/-/nyc-10.1.2.tgz#ea7acaa20a235210101604f4e7d56d28453b0274" dependencies: archy "^1.0.0" arrify "^1.0.1" caching-transform "^1.0.0" convert-source-map "^1.3.0" debug-log "^1.0.1" default-require-extensions "^1.0.0" find-cache-dir "^0.1.1" find-up "^1.1.2" foreground-child "^1.5.3" glob "^7.0.6" istanbul-lib-coverage "^1.0.1" istanbul-lib-hook "^1.0.0" istanbul-lib-instrument "^1.4.2" istanbul-lib-report "^1.0.0-alpha.3" istanbul-lib-source-maps "^1.1.0" istanbul-reports "^1.0.0" md5-hex "^1.2.0" merge-source-map "^1.0.2" micromatch "^2.3.11" mkdirp "^0.5.0" resolve-from "^2.0.0" rimraf "^2.5.4" signal-exit "^3.0.1" spawn-wrap "1.2.4" test-exclude "^3.3.0" yargs "^6.6.0" yargs-parser "^4.0.2" oauth-sign@~0.8.1: version "0.8.2" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" object-assign@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-2.1.1.tgz#43c36e5d569ff8e4816c4efa8be02d26967c18aa" object-assign@^4.0.1, object-assign@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" object-keys@^1.0.10, object-keys@^1.0.8: version "1.0.11" resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" object.assign@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.0.4.tgz#b1c9cc044ef1b9fe63606fc141abbb32e14730cc" dependencies: define-properties "^1.1.2" function-bind "^1.1.0" object-keys "^1.0.10" object.entries@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.0.4.tgz#1bf9a4dd2288f5b33f3a993d257661f05d161a5f" dependencies: define-properties "^1.1.2" es-abstract "^1.6.1" function-bind "^1.1.0" has "^1.0.1" object.getownpropertydescriptors@^2.0.2: version "2.0.3" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16" dependencies: define-properties "^1.1.2" es-abstract "^1.5.1" object.omit@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.1.tgz#1a9c744829f39dbb858c76ca3579ae2a54ebd1fa" dependencies: for-own "^0.1.4" is-extendable "^0.1.1" object.values@^1.0.3: version "1.0.4" resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.0.4.tgz#e524da09b4f66ff05df457546ec72ac99f13069a" dependencies: define-properties "^1.1.2" es-abstract "^1.6.1" function-bind "^1.1.0" has "^1.0.1" once@^1.3.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" dependencies: wrappy "1" once@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" dependencies: wrappy "1" onetime@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/onetime/-/onetime-1.1.0.tgz#a1f7838f8314c516f05ecefcbc4ccfe04b4ed789" optimist@^0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" dependencies: minimist "~0.0.1" wordwrap "~0.0.2" optionator@^0.8.1, optionator@^0.8.2: version "0.8.2" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.2.tgz#364c5e409d3f4d6301d6c0b4c05bba50180aeb64" dependencies: deep-is "~0.1.3" fast-levenshtein "~2.0.4" levn "~0.3.0" prelude-ls "~1.1.2" type-check "~0.3.2" wordwrap "~1.0.0" os-homedir@^1.0.0, os-homedir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" os-locale@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" dependencies: lcid "^1.0.0" os-tmpdir@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" output-file-sync@^1.1.0: version "1.1.2" resolved "https://registry.yarnpkg.com/output-file-sync/-/output-file-sync-1.1.2.tgz#d0a33eefe61a205facb90092e826598d5245ce76" dependencies: graceful-fs "^4.1.4" mkdirp "^0.5.1" object-assign "^4.1.0" parse-glob@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" dependencies: glob-base "^0.3.0" is-dotfile "^1.0.0" is-extglob "^1.0.0" is-glob "^2.0.0" parse-json@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" dependencies: error-ex "^1.2.0" parse5@^1.5.1: version "1.5.1" resolved "https://registry.yarnpkg.com/parse5/-/parse5-1.5.1.tgz#9b7f3b0de32be78dc2401b17573ccaf0f6f59d94" path-exists@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" dependencies: pinkie-promise "^2.0.0" path-is-absolute@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" path-is-inside@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" path-parse@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" path-type@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" dependencies: graceful-fs "^4.1.2" pify "^2.0.0" pinkie-promise "^2.0.0" pify@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" pinkie-promise@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" dependencies: pinkie "^2.0.0" pinkie@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" pkg-dir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-1.0.0.tgz#7a4b508a8d5bb2d629d447056ff4e9c9314cf3d4" dependencies: find-up "^1.0.0" pluralize@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" prelude-ls@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" preserve@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" private@^0.1.6, private@~0.1.5: version "0.1.6" resolved "https://registry.yarnpkg.com/private/-/private-0.1.6.tgz#55c6a976d0f9bafb9924851350fe47b9b5fbb7c1" process-nextick-args@^1.0.6, process-nextick-args@~1.0.6: version "1.0.7" resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" progress@^1.1.8: version "1.1.8" resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" pseudomap@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" q@^1.1.2: version "1.5.0" resolved "https://registry.yarnpkg.com/q/-/q-1.5.0.tgz#dd01bac9d06d30e6f219aecb8253ee9ebdc308f1" qs@~6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" randomatic@^1.1.3: version "1.1.6" resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.6.tgz#110dcabff397e9dcff7c0789ccc0a49adf1ec5bb" dependencies: is-number "^2.0.2" kind-of "^3.0.2" rc@~1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/rc/-/rc-1.1.6.tgz#43651b76b6ae53b5c802f1151fa3fc3b059969c9" dependencies: deep-extend "~0.4.0" ini "~1.3.0" minimist "^1.2.0" strip-json-comments "~1.0.4" read-pkg-up@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" dependencies: find-up "^1.0.0" read-pkg "^1.0.0" read-pkg@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" dependencies: load-json-file "^1.0.0" normalize-package-data "^2.3.2" path-type "^1.0.0" readable-stream@1.1: version "1.1.13" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.13.tgz#f6eef764f514c89e2b9e23146a75ba106756d23e" dependencies: core-util-is "~1.0.0" inherits "~2.0.1" isarray "0.0.1" string_decoder "~0.10.x" "readable-stream@^2.0.0 || ^1.1.13", readable-stream@^2.0.2, readable-stream@^2.1.5, readable-stream@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.2.tgz#a9e6fec3c7dda85f8bb1b3ba7028604556fc825e" dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" inherits "~2.0.1" isarray "~1.0.0" process-nextick-args "~1.0.6" string_decoder "~0.10.x" util-deprecate "~1.0.1" readable-stream@~2.1.4: version "2.1.5" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.1.5.tgz#66fa8b720e1438b364681f2ad1a63c618448c9d0" dependencies: buffer-shims "^1.0.0" core-util-is "~1.0.0" inherits "~2.0.1" isarray "~1.0.0" process-nextick-args "~1.0.6" string_decoder "~0.10.x" util-deprecate "~1.0.1" readdirp@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-2.1.0.tgz#4ed0ad060df3073300c48440373f72d1cc642d78" dependencies: graceful-fs "^4.1.2" minimatch "^3.0.2" readable-stream "^2.0.2" set-immediate-shim "^1.0.1" readline2@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/readline2/-/readline2-1.0.1.tgz#41059608ffc154757b715d9989d199ffbf372e35" dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" mute-stream "0.0.5" recast@^0.11.17: version "0.11.23" resolved "https://registry.yarnpkg.com/recast/-/recast-0.11.23.tgz#451fd3004ab1e4df9b4e4b66376b2a21912462d3" dependencies: ast-types "0.9.6" esprima "~3.1.0" private "~0.1.5" source-map "~0.5.0" rechoir@^0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" dependencies: resolve "^1.1.6" regenerate@^1.2.1, regenerate@latest: version "1.3.2" resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" regenerator-runtime@^0.10.0: version "0.10.1" resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.1.tgz#257f41961ce44558b18f7814af48c17559f9faeb" regenerator-transform@0.9.8: version "0.9.8" resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.8.tgz#0f88bb2bc03932ddb7b6b7312e68078f01026d6c" dependencies: babel-runtime "^6.18.0" babel-types "^6.19.0" private "^0.1.6" regex-cache@^0.4.2: version "0.4.3" resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" dependencies: is-equal-shallow "^0.1.3" is-primitive "^2.0.0" regexpu-core@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-2.0.0.tgz#49d038837b8dcf8bfa5b9a42139938e6ea2ae240" dependencies: regenerate "^1.2.1" regjsgen "^0.2.0" regjsparser "^0.1.4" regjsgen@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" regjsparser@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/regjsparser/-/regjsparser-0.1.5.tgz#7ee8f84dc6fa792d3fd0ae228d24bd949ead205c" dependencies: jsesc "~0.5.0" remove-trailing-separator@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz#69b062d978727ad14dc6b56ba4ab772fd8d70511" repeat-element@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" repeat-string@^1.5.2: version "1.6.1" resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" repeating@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" dependencies: is-finite "^1.0.0" replace-ext@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-1.0.0.tgz#de63128373fcbf7c3ccfa4de5a480c45a67958eb" request@>=2.42.0, request@^2.55.0, request@^2.79.0: version "2.79.0" resolved "https://registry.yarnpkg.com/request/-/request-2.79.0.tgz#4dfe5bf6be8b8cdc37fcf93e04b65577722710de" dependencies: aws-sign2 "~0.6.0" aws4 "^1.2.1" caseless "~0.11.0" combined-stream "~1.0.5" extend "~3.0.0" forever-agent "~0.6.1" form-data "~2.1.1" har-validator "~2.0.6" hawk "~3.1.3" http-signature "~1.1.0" is-typedarray "~1.0.0" isstream "~0.1.2" json-stringify-safe "~5.0.1" mime-types "~2.1.7" oauth-sign "~0.8.1" qs "~6.3.0" stringstream "~0.0.4" tough-cookie "~2.3.0" tunnel-agent "~0.4.1" uuid "^3.0.0" require-directory@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" require-main-filename@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" require-uncached@^1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/require-uncached/-/require-uncached-1.0.3.tgz#4e0d56d6c9662fd31e43011c4b95aa49955421d3" dependencies: caller-path "^0.1.0" resolve-from "^1.0.0" resolve-from@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" resolve-from@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-2.0.0.tgz#9480ab20e94ffa1d9e80a804c7ea147611966b57" resolve@^1.1.6: version "1.2.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.2.0.tgz#9589c3f2f6149d1417a40becc1663db6ec6bc26c" restore-cursor@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-1.0.1.tgz#34661f46886327fed2991479152252df92daa541" dependencies: exit-hook "^1.0.0" onetime "^1.0.0" right-align@^0.1.1: version "0.1.3" resolved "https://registry.yarnpkg.com/right-align/-/right-align-0.1.3.tgz#61339b722fe6a3515689210d24e14c96148613ef" dependencies: align-text "^0.1.1" rimraf@2, rimraf@^2.2.8, rimraf@^2.3.3, rimraf@^2.4.3, rimraf@^2.4.4, rimraf@^2.5.4, rimraf@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.6.1.tgz#c2338ec643df7a1b7fe5c54fa86f57428a55f33d" dependencies: glob "^7.0.5" rimraf@~2.1.4: version "2.1.4" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.1.4.tgz#5a6eb62eeda068f51ede50f29b3e5cd22f3d9bb2" optionalDependencies: graceful-fs "~1" rimraf@~2.5.1, rimraf@~2.5.4: version "2.5.4" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" dependencies: glob "^7.0.5" rsvp@^3.0.13: version "3.5.0" resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-3.5.0.tgz#a62c573a4ae4e1dfd0697ebc6242e79c681eaa34" run-async@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/run-async/-/run-async-0.1.0.tgz#c8ad4a5e110661e402a7d21b530e009f25f8e389" dependencies: once "^1.3.0" rx-lite@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" sax@^1.1.4: version "1.2.2" resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" "semver@2 || 3 || 4 || 5", semver@^5.3.0, semver@~5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" semver@^4.3.3: version "4.3.6" resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" shelljs@0.3.x: version "0.3.0" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.3.0.tgz#3596e6307a781544f591f37da618360f31db57b1" shelljs@^0.7.5: version "0.7.5" resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.5.tgz#2eef7a50a21e1ccf37da00df767ec69e30ad0675" dependencies: glob "^7.0.0" interpret "^1.0.0" rechoir "^0.6.2" signal-exit@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-2.1.2.tgz#375879b1f92ebc3b334480d038dc546a6d558564" signal-exit@^3.0.0, signal-exit@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" simple-fmt@~0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/simple-fmt/-/simple-fmt-0.1.0.tgz#191bf566a59e6530482cb25ab53b4a8dc85c3a6b" simple-is@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/simple-is/-/simple-is-0.2.0.tgz#2abb75aade39deb5cc815ce10e6191164850baf0" slash@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-1.0.0.tgz#c41f2f6c39fc16d1cd17ad4b5d896114ae470d55" slice-ansi@0.0.4: version "0.0.4" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-0.0.4.tgz#edbf8903f66f7ce2f8eafd6ceed65e264c831b35" slide@^1.1.5: version "1.1.6" resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" sntp@1.x.x: version "1.0.9" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" dependencies: hoek "2.x.x" source-list-map@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.8.tgz#c550b2ab5427f6b3f21f5afead88c4f5587b2106" source-map-support@^0.4.2: version "0.4.8" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.8.tgz#4871918d8a3af07289182e974e32844327b2e98b" dependencies: source-map "^0.5.3" source-map-support@~0.2.8: version "0.2.10" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.2.10.tgz#ea5a3900a1c1cb25096a0ae8cc5c2b4b10ded3dc" dependencies: source-map "0.1.32" source-map@0.1.32: version "0.1.32" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" dependencies: amdefine ">=0.0.4" source-map@^0.4.2, source-map@^0.4.4, source-map@~0.4.1: version "0.4.4" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" dependencies: amdefine ">=0.0.4" source-map@^0.5.0, source-map@^0.5.3, source-map@~0.5.0, source-map@~0.5.1: version "0.5.6" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" source-map@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.2.0.tgz#dab73fbcfc2ba819b4de03bd6f6eaa48164b3f9d" dependencies: amdefine ">=0.0.4" spawn-wrap@1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/spawn-wrap/-/spawn-wrap-1.2.4.tgz#920eb211a769c093eebfbd5b0e7a5d2e68ab2e40" dependencies: foreground-child "^1.3.3" mkdirp "^0.5.0" os-homedir "^1.0.1" rimraf "^2.3.3" signal-exit "^2.0.0" which "^1.2.4" spdx-correct@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" dependencies: spdx-license-ids "^1.0.2" spdx-expression-parse@~1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" spdx-license-ids@^1.0.2: version "1.2.2" resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" sprintf-js@~1.0.2: version "1.0.3" resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" sshpk@^1.7.0: version "1.10.1" resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0" dependencies: asn1 "~0.2.3" assert-plus "^1.0.0" dashdash "^1.12.0" getpass "^0.1.1" optionalDependencies: bcrypt-pbkdf "^1.0.0" ecc-jsbn "~0.1.1" jodid25519 "^1.0.0" jsbn "~0.1.0" tweetnacl "~0.14.0" string-alter@latest: version "0.7.3" resolved "https://registry.yarnpkg.com/string-alter/-/string-alter-0.7.3.tgz#a99f203d7293396348b49fc723dd7ab0a0b8d892" string-at@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/string-at/-/string-at-1.0.1.tgz#73b755adbaac3e178dabe7e4d7d79de56003fb37" dependencies: define-properties "^1.0.1" es-abstract "^1.2.1" function-bind "^1.0.2" string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" dependencies: code-point-at "^1.0.0" is-fullwidth-code-point "^1.0.0" strip-ansi "^3.0.0" string-width@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.0.0.tgz#635c5436cc72a6e0c387ceca278d4e2eec52687e" dependencies: is-fullwidth-code-point "^2.0.0" strip-ansi "^3.0.0" string.prototype.padend@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.0.0.tgz#f3aaef7c1719f170c5eab1c32bf780d96e21f2f0" dependencies: define-properties "^1.1.2" es-abstract "^1.4.3" function-bind "^1.0.2" string.prototype.padstart@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/string.prototype.padstart/-/string.prototype.padstart-3.0.0.tgz#5bcfad39f4649bb2d031292e19bcf0b510d4b242" dependencies: define-properties "^1.1.2" es-abstract "^1.4.3" function-bind "^1.0.2" string.prototype.trimleft@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.0.0.tgz#68b6aa8e162c6a80e76e3a8a0c2e747186e271ff" dependencies: define-properties "^1.1.2" function-bind "^1.0.2" string.prototype.trimright@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.0.0.tgz#ab4a56d802a01fbe7293e11e84f24dc8164661dd" dependencies: define-properties "^1.1.2" function-bind "^1.0.2" string_decoder@~0.10.x: version "0.10.31" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" stringmap@~0.2.0: version "0.2.2" resolved "https://registry.yarnpkg.com/stringmap/-/stringmap-0.2.2.tgz#556c137b258f942b8776f5b2ef582aa069d7d1b1" stringset@~0.2.0: version "0.2.1" resolved "https://registry.yarnpkg.com/stringset/-/stringset-0.2.1.tgz#ef259c4e349344377fcd1c913dd2e848c9c042b5" stringstream@~0.0.4: version "0.0.5" resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" dependencies: ansi-regex "^2.0.0" strip-bom@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" dependencies: is-utf8 "^0.2.0" strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" strip-json-comments@1.0.x, strip-json-comments@~1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-1.0.4.tgz#1e15fbcac97d3ee99bf2d73b4c656b082bbafb91" strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" supports-color@3.1.2, supports-color@^3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.1.2.tgz#72a262894d9d408b956ca05ff37b2ed8a6e2a2d5" dependencies: has-flag "^1.0.0" supports-color@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-0.2.0.tgz#d92de2694eb3f67323973d7ae3d8b55b4c22190a" supports-color@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" "symbol-tree@>= 3.1.0 < 4.0.0": version "3.2.2" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.2.tgz#ae27db38f660a7ae2e1c3b7d1bc290819b8519e6" table@^3.7.8: version "3.8.3" resolved "https://registry.yarnpkg.com/table/-/table-3.8.3.tgz#2bbc542f0fda9861a755d3947fefd8b3f513855f" dependencies: ajv "^4.7.0" ajv-keywords "^1.0.0" chalk "^1.1.1" lodash "^4.0.0" slice-ansi "0.0.4" string-width "^2.0.0" tar-pack@~3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.3.0.tgz#30931816418f55afc4d21775afdd6720cee45dae" dependencies: debug "~2.2.0" fstream "~1.0.10" fstream-ignore "~1.0.5" once "~1.3.3" readable-stream "~2.1.4" rimraf "~2.5.1" tar "~2.2.1" uid-number "~0.0.6" tar@~2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-2.2.1.tgz#8e4d2a256c0e2185c6b18ad694aec968b83cb1d1" dependencies: block-stream "*" fstream "^1.0.2" inherits "2" temp@~0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/temp/-/temp-0.5.1.tgz#77ab19c79aa7b593cbe4fac2441768cad987b8df" dependencies: rimraf "~2.1.4" test-exclude@^3.3.0: version "3.3.0" resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-3.3.0.tgz#7a17ca1239988c98367b0621456dbb7d4bc38977" dependencies: arrify "^1.0.1" micromatch "^2.3.11" object-assign "^4.1.0" read-pkg-up "^1.0.1" require-main-filename "^1.0.1" text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" through2@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.3.tgz#0004569b37c7c74ba39c43f3ced78d1ad94140be" dependencies: readable-stream "^2.1.5" xtend "~4.0.1" through@^2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" to-fast-properties@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.2.tgz#f3f5c0c3ba7299a7ef99427e44633257ade43320" tough-cookie@^2.2.0, tough-cookie@~2.3.0: version "2.3.2" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" dependencies: punycode "^1.4.1" tr46@~0.0.1: version "0.0.3" resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" traceur@latest: version "0.0.111" resolved "https://registry.yarnpkg.com/traceur/-/traceur-0.0.111.tgz#c04de74d14696c3373427de4fc08ecaf913fc3a1" dependencies: commander "2.9.x" glob "5.0.x" rsvp "^3.0.13" semver "^4.3.3" source-map-support "~0.2.8" trim-right@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" try-resolve@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/try-resolve/-/try-resolve-1.0.1.tgz#cfde6fabd72d63e5797cfaab873abbe8e700e912" tryit@^1.0.1: version "1.0.3" resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" tunnel-agent@~0.4.1: version "0.4.3" resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" type-check@~0.3.2: version "0.3.2" resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" dependencies: prelude-ls "~1.1.2" type-detect@0.1.1: version "0.1.1" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-0.1.1.tgz#0ba5ec2a885640e470ea4e8505971900dac58822" type-detect@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-1.0.0.tgz#762217cc06db258ec48908a1298e8b95121e8ea2" typedarray@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" typescript@latest: version "2.2.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.2.2.tgz#606022508479b55ffa368b58fee963a03dfd7b0c" uglify-js@^2.6: version "2.8.12" resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.12.tgz#8a50f5d482243650b7108f6080aa3a6afe2a6c55" dependencies: source-map "~0.5.1" uglify-to-browserify "~1.0.0" yargs "~3.10.0" uglify-to-browserify@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" uid-number@~0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" urlgrey@>=0.4.0: version "0.4.4" resolved "https://registry.yarnpkg.com/urlgrey/-/urlgrey-0.4.4.tgz#892fe95960805e85519f1cd4389f2cb4cbb7652f" user-home@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" user-home@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/user-home/-/user-home-2.0.0.tgz#9c70bfd8169bc1dcbf48604e0f04b8b49cde9e9f" dependencies: os-homedir "^1.0.0" util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" uuid@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" v8flags@^2.0.10: version "2.0.11" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881" dependencies: user-home "^1.1.1" validate-npm-package-license@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" dependencies: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" verror@1.3.6: version "1.3.6" resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" dependencies: extsprintf "1.0.2" vinyl@^2.0.1: version "2.1.0" resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-2.1.0.tgz#021f9c2cf951d6b939943c89eb5ee5add4fd924c" dependencies: clone "^2.1.1" clone-buffer "^1.0.0" clone-stats "^1.0.0" cloneable-readable "^1.0.0" remove-trailing-separator "^1.0.1" replace-ext "^1.0.0" webidl-conversions@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-2.0.1.tgz#3bf8258f7d318c7443c36f2e169402a1a6703506" webpack-core@^0.6.8: version "0.6.9" resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.9.tgz#fc571588c8558da77be9efb6debdc5a3b172bdc2" dependencies: source-list-map "~0.1.7" source-map "~0.4.1" whatwg-url-compat@~0.6.5: version "0.6.5" resolved "https://registry.yarnpkg.com/whatwg-url-compat/-/whatwg-url-compat-0.6.5.tgz#00898111af689bb097541cd5a45ca6c8798445bf" dependencies: tr46 "~0.0.1" which-module@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" which@^1.2.4, which@^1.2.9: version "1.2.12" resolved "https://registry.yarnpkg.com/which/-/which-1.2.12.tgz#de67b5e450269f194909ef23ece4ebe416fa1192" dependencies: isexe "^1.1.1" wide-align@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.0.tgz#40edde802a71fea1f070da3e62dcda2e7add96ad" dependencies: string-width "^1.0.1" window-size@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" wordwrap@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" wordwrap@~0.0.2: version "0.0.3" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" wordwrap@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" wrap-ansi@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" dependencies: string-width "^1.0.1" strip-ansi "^3.0.1" wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" write-file-atomic@^1.1.4: version "1.3.1" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.1.tgz#7d45ba32316328dd1ec7d90f60ebc0d845bb759a" dependencies: graceful-fs "^4.1.11" imurmurhash "^0.1.4" slide "^1.1.5" write@^0.2.1: version "0.2.1" resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" dependencies: mkdirp "^0.5.1" "xml-name-validator@>= 2.0.1 < 3.0.0": version "2.0.1" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-2.0.1.tgz#4d8b8f1eccd3419aa362061becef515e1e559635" xtend@^4.0.0, xtend@~4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" y18n@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" yallist@^2.0.0: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" yargs-parser@^4.0.2, yargs-parser@^4.2.0: version "4.2.1" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-4.2.1.tgz#29cceac0dc4f03c6c87b4a9f217dd18c9f74871c" dependencies: camelcase "^3.0.0" yargs@^6.6.0: version "6.6.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-6.6.0.tgz#782ec21ef403345f830a808ca3d513af56065208" dependencies: camelcase "^3.0.0" cliui "^3.2.0" decamelize "^1.1.1" get-caller-file "^1.0.1" os-locale "^1.4.0" read-pkg-up "^1.0.1" require-directory "^2.1.1" require-main-filename "^1.0.1" set-blocking "^2.0.0" string-width "^1.0.2" which-module "^1.0.0" y18n "^3.2.1" yargs-parser "^4.2.0" yargs@~3.10.0: version "3.10.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.10.0.tgz#f7ee7bd857dd7c1d2d38c0e74efbd681d1431fd1" dependencies: camelcase "^1.0.2" cliui "^2.1.0" decamelize "^1.0.0" window-size "0.1.0"