diff --git a/.eslintignore b/.eslintignore index 34af3774..381689ca 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,2 +1 @@ -build/*.js -config/*.js +build/build.js diff --git a/.gitignore b/.gitignore index be86a2b1..071eee12 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ node_modules/ dist/ npm-debug.log +yarn-error.log selenium-debug.log test/unit/coverage test/e2e/reports diff --git a/.travis.yml b/.travis.yml index 1ba79696..b22fb8d8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,7 +1,6 @@ sudo: false language: node_js node_js: - - "4" - "5" - "6" diff --git a/README.md b/README.md index e24855db..5d3b4814 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,36 @@ <div align="center"> -<p><img width="200" src="https://github.com/fundon/vue-admin/blob/master/client/assets/logo@2x.png"></p> +<p><img width="200" src="https://github.com/vue-bulma/vue-admin/blob/master/client/assets/logo@2x.png"></p> <h1>Vue Admin</h1> <p> <strong>Vue Admin Panel Framework</strong>, - <a href="https://vue-admin.fundon.me">Live Demo</a> + <a href="https://admin.vuebulma.com">Live Demo</a> </p> <p> <sub>Made with ❤︎ by <a href="https://twitter.com/_fundon">Fangdun Cai</a> and - <a href="https://github.com/fundon/vue-admin/graphs/contributors">contributors</a> + <a href="https://github.com/vue-bulma/vue-admin/graphs/contributors">contributors</a> </sub> </p> <p> <a href="https://npmjs.org/package/vue-admin"><img src="https://img.shields.io/npm/v/vue-admin.svg" alt="NPM version"></a> <a href="https://www.npmjs.com/package/vue-admin"><img src="https://img.shields.io/badge/license-MIT-green.svg" alt="MIT License"></a> -<a href="https://travis-ci.org/fundon/vue-admin"><img src="https://img.shields.io/travis/fundon/vue-admin.svg?label=linux" alt="Linux Build"></a> +<a href="https://travis-ci.org/vue-bulma/vue-admin"><img src="https://img.shields.io/travis/vue-bulma/vue-admin.svg?label=linux" alt="Linux Build"></a> <a href="https://ci.appveyor.com/project/fundon/vue-admin"><img src="https://img.shields.io/appveyor/ci/fundon/vue-admin/master.svg?label=windows" alt="Window Build"/></a> <a href="https://gitter.im/fundon/vue-admin?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge"><img src="https://badges.gitter.im/fundon/vue-admin.svg" alt="Gitter"></a> </p> </div> - + ## Features -* Powered by [Vue][] **2.0** & [Bulma][] **0.2** +* Powered by [Vue][] **2.0** & [Bulma][] **0.3** * Responsive and Flexible Box Layout * [Variety of Charts](doc/charts.md) * [Rich Components](doc/components.md) or See [vue-bulma][] @@ -39,7 +39,77 @@ ## [Backers](backers.md) -Its ongoing development is made possible thanks to the support by these awesome backers. If you'd like to join them, check out [Vue Admin & Vue Bulma](https://www.patreon.com/_fundon)'s Patreon campaign. +Its ongoing development is made possible thanks to the support by these awesome backers. If you'd like to join them, check out: + +* [Patreon campaign](https://www.patreon.com/_fundon) + +* [OpenCollective](https://opencollective.com/vue-admin#backer): Support us with a monthly donation and help us continue our activities + +<a href="https://opencollective.com/vue-admin/backer/0/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/0/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/1/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/1/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/2/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/2/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/3/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/3/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/4/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/4/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/5/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/5/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/6/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/6/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/7/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/7/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/8/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/8/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/9/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/9/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/10/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/10/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/11/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/11/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/12/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/12/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/13/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/13/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/14/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/14/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/15/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/15/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/16/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/16/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/17/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/17/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/18/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/18/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/19/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/19/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/20/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/20/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/21/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/21/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/22/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/22/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/23/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/23/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/24/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/24/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/25/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/25/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/26/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/26/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/27/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/27/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/28/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/28/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/backer/29/website" target="_blank"><img src="https://opencollective.com/vue-admin/backer/29/avatar.svg"></a> + +## Sponsors + +Become a sponsor and get your logo on our README on Github with a link to your site. [[Become a sponsor](https://opencollective.com/vue-admin#sponsor)] + +<a href="https://opencollective.com/vue-admin/sponsor/0/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/0/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/1/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/1/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/2/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/2/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/3/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/3/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/4/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/4/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/5/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/5/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/6/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/6/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/7/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/7/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/8/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/8/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/9/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/9/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/10/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/10/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/11/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/11/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/12/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/12/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/13/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/13/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/14/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/14/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/15/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/15/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/16/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/16/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/17/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/17/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/18/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/18/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/19/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/19/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/20/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/20/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/21/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/21/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/22/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/22/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/23/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/23/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/24/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/24/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/25/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/25/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/26/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/26/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/27/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/27/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/28/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/28/avatar.svg"></a> +<a href="https://opencollective.com/vue-admin/sponsor/29/website" target="_blank"><img src="https://opencollective.com/vue-admin/sponsor/29/avatar.svg"></a> ## [Development](doc/development.md) @@ -47,25 +117,28 @@ Its ongoing development is made possible thanks to the support by these awesome ### Requirements - * NPM v3 + * Node >= v5 + + * NPM >= v3 * Webpack v2 ## Notes - If you want to use Vue Admin with Vue 1.0 version, please checkout the [vue-v1](https://github.com/fundon/vue-admin/tree/vue-v1) branch. + If you want to use Vue Admin with Vue 1.0 version, please checkout the [vue-v1](https://github.com/vue-bulma/vue-admin/tree/vue-v1) branch. + Launch Vue Admin as a desktop application! Please check [Run Project with Electron](https://github.com/vue-bulma/vue-admin/wiki/Guide#run-project-with-electron) ---- -> [fundon.me](https://fundon.me) · -> GitHub [@fundon](https://github.com/fundon) · -> Twitter [@_fundon](https://twitter.com/_fundon) +## Maintainers ++ [fundon](https://github.com/fundon) · [fundon.me](https://fundon.me) · [Twitter@fundon](https://twitter.com/_fundon) ++ [luventa](https://github.com/luventa) -[Live Demo]: https://vue-admin.fundon.me/ +[Live Demo]: https://admin.vuebulma.com/ [Fangdun Cai]: https://twitter.com/_fundon [Vue]: http://vuejs.org [Bulma]: http://bulma.io [Vue-bulma]: https://github.com/vue-bulma + diff --git a/backers.md b/backers.md index e69de29b..02a9d55f 100644 --- a/backers.md +++ b/backers.md @@ -0,0 +1,15 @@ +# Backers + +Thank you for your supports! + +* [WerGimity](https://www.patreon.com/user/creators?u=5268464) + +* [Thomas_Leong](https://www.patreon.com/user/creators?u=5244543) + +* [wen](https://www.patreon.com/user/creators?u=5239734) + +* [Joris Vanhecke](https://www.patreon.com/user/creators?u=5145359) + +* [datastream](https://www.patreon.com/user/creators?u=4315833) + +* [Lê Chương](https://www.patreon.com/user/creators?u=3495305) diff --git a/build/build.js b/build/build.js index 0c104e4f..e9624269 100755 --- a/build/build.js +++ b/build/build.js @@ -1,32 +1,31 @@ // https://github.com/shelljs/shelljs +'use strict' + +require('./check-versions')() require('shelljs/global') -env.NODE_ENV = 'production' -var path = require('path') -var config = require('../config') -var ora = require('ora') -var webpack = require('webpack') -var webpackConfig = require('./webpack.prod.conf') +env.NODE_ENV = 'production' -console.log( - ' Tip:\n' + - ' Built files are meant to be served over an HTTP server.\n' + - ' Opening index.html over file:// won\'t work.\n' -) +const ora = require('ora') +const path = require('path') +const chalk = require('chalk') +const webpack = require('webpack') +const config = require('../config') +const webpackConfig = require('./webpack.prod.conf') -var spinner = ora('building for production...') +const spinner = ora('building for production...') spinner.start() -var assetsPath = path.join(config.build.assetsRoot, config.build.assetsSubDirectory) +const assetsPath = path.join(config.build.assetsRoot, config.build.assetsSubDirectory) rm('-rf', assetsPath) mkdir('-p', assetsPath) -cp('-R', 'assets/', assetsPath) +cp('-R', 'assets/*', assetsPath) const compiler = webpack(webpackConfig) -var ProgressPlugin = require('webpack/lib/ProgressPlugin') +const ProgressPlugin = require('webpack/lib/ProgressPlugin') compiler.apply(new ProgressPlugin()) -compiler.run(function (err, stats) { +compiler.run((err, stats) => { spinner.stop() if (err) throw err process.stdout.write(stats.toString({ @@ -35,5 +34,11 @@ compiler.run(function (err, stats) { children: false, chunks: false, chunkModules: false - }) + '\n') + }) + '\n\n') + + console.log(chalk.cyan(' Build complete.\n')) + console.log(chalk.yellow( + ' Tip: built files are meant to be served over an HTTP server.\n' + + ' Opening index.html over file:// won\'t work.\n' + )) }) diff --git a/build/check-versions.js b/build/check-versions.js new file mode 100644 index 00000000..348d8b72 --- /dev/null +++ b/build/check-versions.js @@ -0,0 +1,47 @@ +'use strict' + +const chalk = require('chalk') +const semver = require('semver') +const packageConfig = require('../package.json') + +const exec = (cmd) => { + return require('child_process').execSync(cmd).toString().trim() +} + +const versionRequirements = [ + { + name: 'node', + currentVersion: semver.clean(process.version), + versionRequirement: packageConfig.engines.node + }, + { + name: 'npm', + currentVersion: exec('npm --version'), + versionRequirement: packageConfig.engines.npm + } +] + +module.exports = () => { + const warnings = [] + for (let i = 0; i < versionRequirements.length; i++) { + const mod = versionRequirements[i] + if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) { + warnings.push(mod.name + ': ' + + chalk.red(mod.currentVersion) + ' should be ' + + chalk.green(mod.versionRequirement) + ) + } + } + + if (warnings.length) { + console.log('') + console.log(chalk.yellow('To use this template, you must update following to modules:')) + console.log() + for (let i = 0; i < warnings.length; i++) { + const warning = warnings[i] + console.log(' ' + warning) + } + console.log() + process.exit(1) + } +} diff --git a/build/dev-client.js b/build/dev-client.js index 18aa1e21..cdc79471 100755 --- a/build/dev-client.js +++ b/build/dev-client.js @@ -1,8 +1,10 @@ +'use strict' + /* eslint-disable */ require('eventsource-polyfill') -var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true') +const hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true') -hotClient.subscribe(function (event) { +hotClient.subscribe(event => { if (event.action === 'reload') { window.location.reload() } diff --git a/build/dev-server.js b/build/dev-server.js index ba4a50f9..cf2ab592 100755 --- a/build/dev-server.js +++ b/build/dev-server.js @@ -1,22 +1,29 @@ -var path = require('path') -var express = require('express') -var webpack = require('webpack') -var config = require('../config') -var proxyMiddleware = require('http-proxy-middleware') -var webpackConfig = process.env.NODE_ENV === 'testing' +'use strict' + +require('./check-versions')() + +const path = require('path') +const express = require('express') +const webpack = require('webpack') +const opn = require('opn') +const config = require('../config') +const proxyMiddleware = require('http-proxy-middleware') +const webpackConfig = process.env.NODE_ENV === 'testing' ? require('./webpack.prod.conf') : require('./webpack.dev.conf') // default port where dev server listens for incoming traffic -var port = process.env.PORT || config.dev.port +const port = process.env.PORT || config.dev.port +// automatically open browser, if not set will be false +const autoOpenBrowser = Boolean(config.dev.autoOpenBrowser) // Define HTTP proxies to your custom API backend // https://github.com/chimurai/http-proxy-middleware -var proxyTable = config.dev.proxyTable +const proxyTable = config.dev.proxyTable -var app = express() -var compiler = webpack(webpackConfig) +const app = express() +const compiler = webpack(webpackConfig) -var devMiddleware = require('webpack-dev-middleware')(compiler, { +const devMiddleware = require('webpack-dev-middleware')(compiler, { publicPath: webpackConfig.output.publicPath, stats: { colors: true, @@ -24,22 +31,22 @@ var devMiddleware = require('webpack-dev-middleware')(compiler, { } }) -var hotMiddleware = require('webpack-hot-middleware')(compiler) +const hotMiddleware = require('webpack-hot-middleware')(compiler) // force page reload when html-webpack-plugin template changes -compiler.plugin('compilation', function (compilation) { - compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) { +compiler.plugin('compilation', compilation => { + compilation.plugin('html-webpack-plugin-after-emit', (data, cb) => { hotMiddleware.publish({ action: 'reload' }) cb() }) }) // proxy api requests -Object.keys(proxyTable).forEach(function (context) { - var options = proxyTable[context] +Object.keys(proxyTable).forEach(context => { + let options = proxyTable[context] if (typeof options === 'string') { options = { target: options } } - app.use(proxyMiddleware(context, options)) + app.use(proxyMiddleware(options.filter || context, options)) }) // handle fallback for HTML5 history API @@ -53,13 +60,23 @@ app.use(devMiddleware) app.use(hotMiddleware) // serve pure static assets -var staticPath = path.posix.join(config.dev.assetsPublicPath, config.dev.assetsSubDirectory) +const staticPath = path.posix.join(config.dev.assetsPublicPath, config.dev.assetsSubDirectory) app.use(staticPath, express.static('./assets')) -module.exports = app.listen(port, function (err) { +const uri = 'http://localhost:' + port + +devMiddleware.waitUntilValid(() => { + console.log('> Listening at ' + uri + '\n') +}) + +module.exports = app.listen(port, err => { if (err) { console.log(err) return } - console.log('Listening at http://localhost:' + port + '\n') + + // when env is testing, don't need open it + if (autoOpenBrowser && process.env.NODE_ENV !== 'testing') { + opn(uri) + } }) diff --git a/build/utils.js b/build/utils.js index 93c70bc4..5afbde6a 100755 --- a/build/utils.js +++ b/build/utils.js @@ -1,20 +1,22 @@ -var path = require('path') -var config = require('../config') -var ExtractTextPlugin = require('extract-text-webpack-plugin') +'use strict' -exports.assetsPath = function (_path) { - var assetsSubDirectory = process.env.NODE_ENV === 'production' +const path = require('path') +const config = require('../config') +const ExtractTextPlugin = require('extract-text-webpack-plugin') + +exports.assetsPath = _path => { + const assetsSubDirectory = process.env.NODE_ENV === 'production' ? config.build.assetsSubDirectory : config.dev.assetsSubDirectory return path.posix.join(assetsSubDirectory, _path) } -exports.cssLoaders = function (options) { +exports.cssLoaders = options => { options = options || {} // generate loader string to be used with extract text plugin - function generateLoaders (loaders) { - var sourceLoader = loaders.map(function (loader) { - var extraParamChar + const generateLoaders = loaders => { + const sourceLoader = loaders.map(loader => { + let extraParamChar if (/\?/.test(loader)) { loader = loader.replace(/\?/, '-loader?') extraParamChar = '&' @@ -25,10 +27,12 @@ exports.cssLoaders = function (options) { return loader + (options.sourceMap ? extraParamChar + 'sourceMap' : '') }).join('!') + // Extract CSS when that option is specified + // (which is the case during production build) if (options.extract) { return ExtractTextPlugin.extract({ - fallbackLoader: 'style-loader', - loader: sourceLoader + use: sourceLoader, + fallback: 'vue-style-loader' }) } else { return ['vue-style-loader', sourceLoader].join('!') @@ -48,11 +52,11 @@ exports.cssLoaders = function (options) { } // Generate loaders for standalone style files (outside of .vue) -exports.styleLoaders = function (options) { - var output = [] - var loaders = exports.cssLoaders(options) - for (var extension in loaders) { - var loader = loaders[extension] +exports.styleLoaders = options => { + const output = [] + const loaders = exports.cssLoaders(options) + for (const extension of Object.keys(loaders)) { + const loader = loaders[extension] output.push({ test: new RegExp('\\.' + extension + '$'), loader: loader diff --git a/build/vue-loader.conf.js b/build/vue-loader.conf.js new file mode 100644 index 00000000..d52eafc9 --- /dev/null +++ b/build/vue-loader.conf.js @@ -0,0 +1,18 @@ +'use strict' + +const utils = require('./utils') +const config = require('../config') + +const isProduction = process.env.NODE_ENV === 'production' + +module.exports = { + loaders: utils.cssLoaders({ + sourceMap: isProduction ? config.build.productionSourceMap : config.dev.cssSourceMap, + extract: isProduction + }), + postcss: [ + require('autoprefixer')({ + browsers: ['last 3 versions'] + }) + ] +} diff --git a/build/webpack.base.conf.js b/build/webpack.base.conf.js index a730e847..c3ea97fc 100755 --- a/build/webpack.base.conf.js +++ b/build/webpack.base.conf.js @@ -1,68 +1,72 @@ +'use strict' + const path = require('path') -const webpack = require('webpack') const config = require('../config') const utils = require('./utils') const projectRoot = path.resolve(__dirname, '../') -const isProduction = process.env.NODE_ENV === 'production' - module.exports = { entry: { - app: './client/index.js', - vendor: ['vue', 'vue-router', 'vuex'] + app: ['./client/index.js'], + // If you want to support IE < 11, should add `babel-polyfill` to vendor. + // e.g. ['babel-polyfill', 'vue', 'vue-router', 'vuex'] + vendor: [ + 'vue', + 'vue-router', + 'vuex', + 'vuex-router-sync' + ] }, output: { path: config.build.assetsRoot, - publicPath: isProduction ? config.build.assetsPublicPath : config.dev.assetsPublicPath, + publicPath: process.env.NODE_ENV === 'production' + ? config.build.assetsPublicPath + : config.dev.assetsPublicPath, filename: '[name].js' }, resolve: { extensions: ['.js', '.vue', '.css', '.json'], alias: { // https://github.com/vuejs/vue/wiki/Vue-2.0-RC-Starter-Resources - // 'vue': 'vue/dist/vue', - 'src': path.resolve(__dirname, '../client'), - 'assets': path.resolve(__dirname, '../client/assets'), - 'components': path.resolve(__dirname, '../client/components'), - 'views': path.resolve(__dirname, '../client/views'), + // vue: 'vue/dist/vue', + package: path.resolve(__dirname, '../package.json'), + src: path.resolve(__dirname, '../client'), + assets: path.resolve(__dirname, '../client/assets'), + components: path.resolve(__dirname, '../client/components'), + views: path.resolve(__dirname, '../client/views'), // third-party - 'plotly.js': 'plotly.js/dist/plotly' + 'plotly.js': 'plotly.js/dist/plotly', + // vue-addon + 'vuex-store': path.resolve(__dirname, '../client/store') } }, module: { loaders: [ { - test: /\.vue$/, - loader: ['eslint'], - include: projectRoot, - exclude: /node_modules/, - enforce: 'pre' - }, - { - test: /\.js/, - loader: ['eslint'], + test: /\.(js|vue)$/, + loader: 'eslint-loader', include: projectRoot, exclude: /node_modules/, - enforce: 'pre' + enforce: 'pre', + options: { + formatter: require('eslint-friendly-formatter') + } }, { test: /\.vue$/, - loader: ['vue'] + loader: 'vue-loader', + options: require('./vue-loader.conf') }, { test: /\.js$/, - loader: ['babel'], + loader: 'babel-loader', include: projectRoot, // /node_modules\/(?!vue-bulma-.*)/ - exclude: [new RegExp(`node_modules\\${path.sep}\(\?\!vue-bulma-.*\)`)] - }, - { - test: /\.json$/, - loader: 'json' + exclude: [new RegExp(`node_modules\\${path.sep}(?!vue-bulma-.*)`)] }, { test: /\.(png|jpe?g|gif|svg)(\?.*)?$/, - loader: 'url', + loader: 'url-loader', query: { limit: 10000, name: utils.assetsPath('img/[name].[hash:7].[ext]') @@ -70,7 +74,7 @@ module.exports = { }, { test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/, - loader: 'url', + loader: 'url-loader', query: { limit: 10000, name: utils.assetsPath('fonts/[name].[hash:7].[ext]') @@ -78,19 +82,8 @@ module.exports = { } ] }, - plugins: [ - new webpack.LoaderOptionsPlugin({ - vue: { - loaders: utils.cssLoaders({ - sourceMap: isProduction, - extract: isProduction - }), - postcss: [ - require('autoprefixer')({ - browsers: ['last 3 versions'] - }) - ] - } - }) - ] + // See https://github.com/webpack/webpack/issues/3486 + performance: { + hints: false + } } diff --git a/build/webpack.dev.conf.js b/build/webpack.dev.conf.js index 60f465ed..65019c2b 100755 --- a/build/webpack.dev.conf.js +++ b/build/webpack.dev.conf.js @@ -1,3 +1,5 @@ +'use strict' + const webpack = require('webpack') const merge = require('webpack-merge') const HtmlWebpackPlugin = require('html-webpack-plugin') @@ -6,7 +8,7 @@ const config = require('../config') const utils = require('./utils') // add hot-reload related code to entry chunks -Object.keys(baseWebpackConfig.entry).forEach(function (name) { +Object.keys(baseWebpackConfig.entry).forEach(name => { baseWebpackConfig.entry[name] = ['./build/dev-client'].concat(baseWebpackConfig.entry[name]) }) @@ -21,9 +23,8 @@ module.exports = merge(baseWebpackConfig, { 'process.env': config.dev.env }), // https://github.com/glenjamin/webpack-hot-middleware#installation--usage - new webpack.optimize.OccurrenceOrderPlugin(), new webpack.HotModuleReplacementPlugin(), - new webpack.NoErrorsPlugin(), + new webpack.NoEmitOnErrorsPlugin(), // extract vendor chunks for better caching new webpack.optimize.CommonsChunkPlugin({ name: 'vendor', diff --git a/build/webpack.prod.conf.js b/build/webpack.prod.conf.js index e2b77cba..ea265af6 100755 --- a/build/webpack.prod.conf.js +++ b/build/webpack.prod.conf.js @@ -1,3 +1,5 @@ +'use strict' + const path = require('path') const webpack = require('webpack') const merge = require('webpack-merge') @@ -9,6 +11,7 @@ const utils = require('./utils') const env = process.env.NODE_ENV === 'testing' ? require('../config/test.env') : config.build.env +const isELECTRON = process.env.NODE_ELECTRON === 'true' const webpackConfig = merge(baseWebpackConfig, { module: { @@ -20,6 +23,7 @@ const webpackConfig = merge(baseWebpackConfig, { devtool: config.build.productionSourceMap ? '#source-map' : false, output: { path: config.build.assetsRoot, + publicPath: isELECTRON ? path.join(__dirname, '../dist/') : config.build.assetsPublicPath, filename: utils.assetsPath('js/[name].[chunkhash].js'), chunkFilename: utils.assetsPath('js/[id].[chunkhash].js') }, @@ -32,6 +36,7 @@ const webpackConfig = merge(baseWebpackConfig, { minimize: true }), new webpack.optimize.UglifyJsPlugin({ + 'screw-ie8': true, sourceMap: true, compress: { warnings: false @@ -40,7 +45,6 @@ const webpackConfig = merge(baseWebpackConfig, { comments: false } }), - new webpack.optimize.OccurrenceOrderPlugin(), // extract css into its own file new ExtractTextPlugin(utils.assetsPath('css/[name].[contenthash].css')), // generate dist index.html with correct asset hash for caching. @@ -67,7 +71,7 @@ const webpackConfig = merge(baseWebpackConfig, { // split vendor js into its own file new webpack.optimize.CommonsChunkPlugin({ name: 'vendor', - minChunks: function (module, count) { + minChunks (module, count) { // any required modules inside node_modules are extracted to vendor return ( module.resource && @@ -88,7 +92,7 @@ const webpackConfig = merge(baseWebpackConfig, { }) if (config.build.productionGzip) { - var CompressionWebpackPlugin = require('compression-webpack-plugin') + const CompressionWebpackPlugin = require('compression-webpack-plugin') webpackConfig.plugins.push( new CompressionWebpackPlugin({ diff --git a/client/App.vue b/client/App.vue index d555409e..2bf466ae 100755 --- a/client/App.vue +++ b/client/App.vue @@ -2,7 +2,7 @@ <div id="app"> <nprogress-container></nprogress-container> <navbar :show="true"></navbar> - <sidebar :show="config.sidebar"></sidebar> + <sidebar :show="sidebar.opened && !sidebar.hidden"></sidebar> <app-main></app-main> <footer-bar></footer-bar> </div> @@ -11,6 +11,7 @@ <script> import NprogressContainer from 'vue-nprogress/src/NprogressContainer' import { Navbar, Sidebar, AppMain, FooterBar } from 'components/layout/' +import { mapGetters, mapActions } from 'vuex' export default { components: { @@ -22,7 +23,6 @@ export default { }, beforeMount () { - const config = this.config const { body } = document const WIDTH = 768 const RATIO = 3 @@ -30,8 +30,9 @@ export default { const handler = () => { if (!document.hidden) { let rect = body.getBoundingClientRect() - config.mobile = rect.width - RATIO < WIDTH - config.sidebar = !config.mobile + let isMobile = rect.width - RATIO < WIDTH + this.toggleDevice(isMobile ? 'mobile' : 'other') + this.toggleSidebar(!isMobile) } } @@ -40,11 +41,14 @@ export default { window.addEventListener('resize', handler) }, - computed: { - config () { - return this.$store.state.config - } - } + computed: mapGetters({ + sidebar: 'sidebar' + }), + + methods: mapActions([ + 'toggleDevice', + 'toggleSidebar' + ]) } </script> @@ -53,7 +57,7 @@ export default { .animated { animation-duration: .377s; } - +@import '../scss/rtl.scss'; @import '~bulma'; @import '~wysiwyg.css/wysiwyg.sass'; @@ -61,6 +65,10 @@ export default { $fa-font-path: '~font-awesome/fonts/'; @import '~font-awesome/scss/font-awesome'; +html { + background-color: whitesmoke; +} + .nprogress-container { position: fixed !important; width: 100%; diff --git a/client/app.js b/client/app.js index 6678e2d0..9cc0f3fd 100755 --- a/client/app.js +++ b/client/app.js @@ -1,25 +1,47 @@ import Vue from 'vue' -import Resource from 'vue-resource' +import axios from 'axios' +import VueAxios from 'vue-axios' +import VueAuth from '@websanova/vue-auth' import NProgress from 'vue-nprogress' import { sync } from 'vuex-router-sync' import App from './App.vue' import router from './router' import store from './store' import * as filters from './filters' +import { TOGGLE_SIDEBAR } from 'vuex-store/mutation-types' + +Vue.router = router +Vue.use(VueAxios, axios) +Vue.use(VueAuth, { + auth: { + request: function (req, token) { + this.options.http._setHeaders.call(this, req, {Authorization: 'Bearer ' + token}) + }, + response: function (res) { + // Get Token from response body + return res.data + } + }, + http: require('@websanova/vue-auth/drivers/http/axios.1.x.js'), + router: require('@websanova/vue-auth/drivers/router/vue-router.2.x.js'), + loginData: { url: 'http://localhost:6789/login', fetchUser: false }, + refreshData: { enabled: false } +}) -Vue.use(Resource) Vue.use(NProgress) +// Enable devtools +Vue.config.devtools = true + sync(store, router) const nprogress = new NProgress({ parent: '.nprogress-container' }) const { state } = store -const { config } = state router.beforeEach((route, redirect, next) => { - if (config.mobile && config.sidebar) { - config.sidebar = false + if (state.app.device.isMobile && state.app.sidebar.opened) { + store.commit(TOGGLE_SIDEBAR, false) } next() }) diff --git a/client/components/layout/FooterBar.vue b/client/components/layout/FooterBar.vue index 870e9073..9a033b07 100644 --- a/client/components/layout/FooterBar.vue +++ b/client/components/layout/FooterBar.vue @@ -3,7 +3,7 @@ <div class="container"> <div class="content has-text-centered"> <p class="social"> - <a href="https://github.com/fundon/vue-admin"> + <a :href="'https://github.com/' + repository"> <span class="icon"> <i class="fa fa-github"></i> </span> @@ -15,7 +15,7 @@ </a> </p> <p><span class="icon"><i class="fa fa-code"></i></span> with <span class="icon"><i class="fa fa-heart"></i></span> by <a href="https://github.com/fundon">fundon</a>.</p> - <p>Code licensed under <a href="https://github.com/fundon/vue-admin/blob/master/LICENSE">MIT</a>.</p> + <p>Code licensed under <a :href="'https://github.com/' + repository + '/blob/master/LICENSE'">{{ license }}</a>.</p> </div> </div> </footer> @@ -23,11 +23,24 @@ <script> export default { + + data () { + return this.$store.state.pkg + } + } </script> <style lang="scss"> +@import '~bulma/sass/utilities/mixins'; + .footer { + margin-left: 180px; + + @include mobile() { + margin-left: 0; + } + .social a { border-bottom: none !important; } diff --git a/client/components/layout/Levelbar.vue b/client/components/layout/Levelbar.vue index 29aad341..80fb24af 100644 --- a/client/components/layout/Levelbar.vue +++ b/client/components/layout/Levelbar.vue @@ -6,20 +6,31 @@ <strong>{{ name }}</strong> </h3> </div> + <div class="level-item" v-if="!!codelink"> + <tooltip label="View code" placement="right" size="small" :rounded="true"> + <span class="icon"> + <a :href="codelink"> + <i class="fa fa-github"></i> + </a> + </span> + </tooltip> + </div> </div> <div class="level-right is-hidden-mobile"> - <breadcrumb :list="list"><breadcrumb> + <breadcrumb :list="list"></breadcrumb> </div> </nav> </template> <script> import Breadcrumb from 'vue-bulma-breadcrumb' +import Tooltip from 'vue-bulma-tooltip' export default { components: { - Breadcrumb + Breadcrumb, + Tooltip }, data () { @@ -33,6 +44,13 @@ export default { }, computed: { + codelink () { + if (this.$route.meta && this.$route.meta.link) { + return 'https://github.com/vue-bulma/vue-admin/blob/master/client/views/' + this.$route.meta.link + } else { + return null + } + }, name () { return this.$route.name } @@ -40,7 +58,7 @@ export default { methods: { getList () { - let matched = this.$route.matched + let matched = this.$route.matched.filter(item => item.name) let first = matched[0] if (first && (first.name !== 'Home' || first.path !== '')) { matched = [{ name: 'Home', path: '/' }].concat(matched) diff --git a/client/components/layout/Navbar.vue b/client/components/layout/Navbar.vue index d1fd8ce8..44e33dd1 100644 --- a/client/components/layout/Navbar.vue +++ b/client/components/layout/Navbar.vue @@ -3,31 +3,63 @@ <div class="hero-head"> <nav class="nav"> <div class="nav-left"> - <a class="nav-item is-hidden-tablet" @click="$store.dispatch('TOGGLE_SIDEBAR')"> + <a class="nav-item is-hidden-tablet" @click="toggleSidebar(!sidebar.opened)"> <i class="fa fa-bars" aria-hidden="true"></i> </a> </div> <div class="nav-center"> <a class="nav-item hero-brand" href="/"> - <img src="~assets/logo.svg" alt="Vue Admin Panel Framework"> - <div class="is-hidden-mobile"> - <span class="vue">Vue</span><strong class="admin">Admin</strong> - </div> + <img src="~assets/logo.svg" :alt="pkginfo.description"> + <tooltip :label="'v' + pkginfo.version" placement="right" type="success" size="small" :no-animate="true" :always="true" :rounded="true"> + <div class="is-hidden-mobile"> + <span class="vue">Vue</span><strong class="admin">Admin</strong> + </div> + </tooltip> </a> </div> - <div class="nav-right is-flex"></div> + <div class="nav-right is-flex"> + <router-link v-if="!$auth.check()" to="/login" class="nav-item">Login</router-link> + <a v-if="$auth.check()" @click="logout" class="nav-item">Logout</a> + </div> </nav> </div> </section> </template> <script> +import Tooltip from 'vue-bulma-tooltip' +import { mapGetters, mapActions } from 'vuex' + export default { + components: { + Tooltip + }, + props: { show: Boolean - } + }, + + computed: mapGetters({ + pkginfo: 'pkg', + sidebar: 'sidebar' + }), + methods: { + ...mapActions([ + 'toggleSidebar' + ]), + logout () { + this.$auth.logout({ + redirect: 'Home', + makeRequest: false + // params: {}, + // success: function () {}, + // error: function () {}, + // etc... + }) + } + } } </script> diff --git a/client/components/layout/Sidebar.vue b/client/components/layout/Sidebar.vue index 899497f0..43124846 100644 --- a/client/components/layout/Sidebar.vue +++ b/client/components/layout/Sidebar.vue @@ -4,15 +4,15 @@ General </p> <ul class="menu-list"> - <li v-for="item in menu"> - <router-link :to="item.path" :exact="true" :aria-expanded="isExpanded(item) ? 'true' : 'false'" v-if="item.path" @click.native="toggle(item)"> + <li v-for="(item, index) in menu"> + <router-link :to="item.path" :exact="true" :aria-expanded="isExpanded(item) ? 'true' : 'false'" v-if="item.path" @click.native="toggle(index, item)"> <span class="icon is-small"><i :class="['fa', item.meta.icon]"></i></span> {{ item.meta.label || item.name }} <span class="icon is-small is-angle" v-if="item.children && item.children.length"> <i class="fa fa-angle-down"></i> </span> </router-link> - <a :aria-expanded="isExpanded(item)" v-else @click="toggle(item)"> + <a :aria-expanded="isExpanded(item)" v-else @click="toggle(index, item)"> <span class="icon is-small"><i :class="['fa', item.meta.icon]"></i></span> {{ item.meta.label || item.name }} <span class="icon is-small is-angle" v-if="item.children && item.children.length"> @@ -36,6 +36,7 @@ <script> import Expanding from 'vue-bulma-expanding' +import { mapGetters, mapActions } from 'vuex' export default { components: { @@ -60,35 +61,44 @@ export default { } }, - computed: { - menu () { - return this.$store.state.menu - } - }, + computed: mapGetters({ + menu: 'menuitems' + }), methods: { + ...mapActions([ + 'expandMenu' + ]), + isExpanded (item) { return item.meta.expanded }, - toggle (item) { - item.meta.expanded = !item.meta.expanded + toggle (index, item) { + this.expandMenu({ + index: index, + expanded: !item.meta.expanded + }) }, shouldExpandMatchItem (route) { let matched = route.matched let lastMatched = matched[matched.length - 1] let parent = lastMatched.parent || lastMatched + const isParent = parent === lastMatched - if (parent === lastMatched) { + if (isParent) { const p = this.findParentFromMenu(route) if (p) { parent = p } } - if ('expanded' in parent.meta && parent !== lastMatched) { - parent.meta.expanded = true + if ('expanded' in parent.meta && !isParent) { + this.expandMenu({ + item: parent, + expanded: true + }) } }, diff --git a/client/router/index.js b/client/router/index.js index 3a9d1495..e877cbea 100755 --- a/client/router/index.js +++ b/client/router/index.js @@ -1,12 +1,10 @@ import Vue from 'vue' import Router from 'vue-router' - -import menu from './menu' - +import menuModule from 'vuex-store/modules/menu' Vue.use(Router) export default new Router({ - mode: 'history', + mode: 'hash', // Demo is living in GitHub.io, so required! linkActiveClass: 'is-active', scrollBehavior: () => ({ y: 0 }), routes: [ @@ -15,7 +13,12 @@ export default new Router({ path: '/', component: require('../views/Home') }, - ...generateRoutesFromMenu(menu), + { + name: 'Login', + path: '/login', + component: require('../views/auth/Login') + }, + ...generateRoutesFromMenu(menuModule.state.items), { path: '*', redirect: '/' diff --git a/client/router/menu.js b/client/router/menu.js deleted file mode 100644 index 2ece4cc1..00000000 --- a/client/router/menu.js +++ /dev/null @@ -1,259 +0,0 @@ -// show: meta.label -> name -// name: component name -// meta.label: display label - -// lazy loading Components -// https://github.com/vuejs/vue-router/blob/dev/examples/lazy-loading/app.js#L8 -const lazyLoading = (name, index = false) => () => System.import(`views/${name}${index ? '/index' : ''}.vue`) - -export default [ - { - name: 'Dashboard', - path: '/dashboard', - meta: { - icon: 'fa-tachometer' - }, - component: lazyLoading('dashboard', true) - }, - { - name: 'Charts', - path: '/charts', - meta: { - icon: 'fa-bar-chart-o', - expanded: false - }, - component: lazyLoading('charts', true), - - children: [ - { - name: 'CanvasGauges', - path: 'canvas-gauges', - component: lazyLoading('charts/CanvasGauges') - }, - { - name: 'Chartist', - path: 'chartist', - component: lazyLoading('charts/Chartist') - }, - { - name: 'Chartjs', - path: 'chartjs', - component: lazyLoading('charts/Chartjs') - }, - { - name: 'Peity', - path: 'peity', - component: lazyLoading('charts/Peity') - }, - { - name: 'Plotly', - path: 'plotly', - component: lazyLoading('charts/Plotly') - } - ] - }, - { - meta: { - label: 'UI Features', - icon: 'fa-laptop', - expanded: false - }, - - children: [ - { - name: 'Buttons', - path: '/buttons', - component: lazyLoading('ui/Buttons') - }, - { - name: 'Form', - path: '/form', - component: lazyLoading('ui/Form') - }, - { - name: 'Typography', - path: '/typography', - component: lazyLoading('ui/Typography') - }, - { - name: 'Icons', - path: '/icons', - component: lazyLoading('ui/Icons') - } - ] - }, - { - name: 'Components', - path: '/components', - meta: { - icon: 'fa-building-o', - expanded: false - }, - component: lazyLoading('components', true), - - children: [ - { - path: '', - component: lazyLoading('components/Default') - }, - { - name: 'BackToTop', - path: 'backToTop', - meta: { - description: 'Jump component is based on jump.js', - repository: 'https://github.com/vue-bulma/jump' - }, - component: lazyLoading('components/BackToTop') - }, - { - name: 'Collapse', - path: 'collapse', - meta: { - description: 'Collapse component', - repository: 'https://github.com/vue-bulma/collapse' - }, - component: lazyLoading('components/Collapse') - }, - { - name: 'Datepicker', - path: 'datepicker', - meta: { - description: 'Datepicker component is based on flatpickr', - repository: 'https://github.com/vue-bulma/datepicker' - }, - component: lazyLoading('components/Datepicker') - }, - { - name: 'Emoji', - path: 'emoji', - meta: { - description: 'Emoji Component is based on emojione.com', - repository: 'https://github.com/vue-bulma/emoji' - }, - component: lazyLoading('components/Emoji') - }, - { - name: 'Message', - path: 'message', - meta: { - description: 'Message component', - repository: 'https://github.com/vue-bulma/message' - }, - component: lazyLoading('components/Message') - }, - { - name: 'Modal', - path: 'modal', - meta: { - description: 'Modal component', - repository: 'https://github.com/vue-bulma/modal' - }, - component: lazyLoading('components/Modal') - }, - { - name: 'Notification', - path: 'notification', - meta: { - description: 'Notification component', - repository: 'https://github.com/vue-bulma/notification' - }, - component: lazyLoading('components/Notification') - }, - { - name: 'ProgressBar', - path: 'progress-bar', - meta: { - description: 'ProgressBar component', - repository: 'https://github.com/vue-bulma/progress-bar' - }, - component: lazyLoading('components/ProgressBar') - }, - { - name: 'ProgressTracker', - path: 'progress-tracker', - meta: { - description: 'ProgressTracker component is based on progress-tracker', - repository: 'https://github.com/vue-bulma/progress-tracker' - }, - component: lazyLoading('components/ProgressTracker') - }, - { - name: 'Quill', - path: 'quill', - meta: { - description: 'Your powerful, rich text editor', - repository: 'https://github.com/vue-bulma/quill' - }, - component: lazyLoading('components/Quill') - }, - { - name: 'Rating', - path: 'rating', - meta: { - description: 'Rating component is based on starability.css', - repository: 'https://github.com/vue-bulma/rating' - }, - component: lazyLoading('components/Rating') - }, - { - name: 'Slider', - path: 'slider', - meta: { - description: 'Slider component', - repository: 'https://github.com/vue-bulma/slider' - }, - component: lazyLoading('components/Slider') - }, - { - name: 'Switch', - path: 'switch', - meta: { - description: 'Switch component', - repository: 'https://github.com/vue-bulma/switch' - }, - component: lazyLoading('components/Switch') - }, - { - name: 'Tabs', - path: 'tabs', - meta: { - description: 'Tabs component', - repository: 'https://github.com/vue-bulma/tabs' - }, - component: lazyLoading('components/Tabs') - }, - { - name: 'Tooltip', - path: 'tooltip', - meta: { - description: 'Tooltip component is based on hint.css', - repository: 'https://github.com/vue-bulma/tooltip' - }, - component: lazyLoading('components/Tooltip') - } - ] - }, - { - name: 'Tables', - meta: { - icon: 'fa-table', - expanded: false - }, - - children: [ - { - name: 'BasicTables', - path: '/tables/basic', - meta: { - label: 'Basic Tables' - }, - component: lazyLoading('tables/Basic') - }, - { - name: 'Handsontable', - path: '/tables/handsontable', - component: lazyLoading('tables/Handsontable') - } - ] - } -] diff --git a/client/store/actions.js b/client/store/actions.js new file mode 100644 index 00000000..d447b688 --- /dev/null +++ b/client/store/actions.js @@ -0,0 +1,18 @@ +import * as types from './mutation-types' + +export const toggleSidebar = ({ commit }, opened) => commit(types.TOGGLE_SIDEBAR, opened) + +export const toggleDevice = ({ commit }, device) => commit(types.TOGGLE_DEVICE, device) + +export const expandMenu = ({ commit }, menuItem) => { + if (menuItem) { + menuItem.expanded = menuItem.expanded || false + commit(types.EXPAND_MENU, menuItem) + } +} + +export const switchEffect = ({ commit }, effectItem) => { + if (effectItem) { + commit(types.SWITCH_EFFECT, effectItem) + } +} diff --git a/client/store/config.js b/client/store/config.js deleted file mode 100644 index 43ca4478..00000000 --- a/client/store/config.js +++ /dev/null @@ -1,4 +0,0 @@ -export default { - mobile: false, - sidebar: true -} diff --git a/client/store/getters.js b/client/store/getters.js new file mode 100644 index 00000000..5ae513af --- /dev/null +++ b/client/store/getters.js @@ -0,0 +1,19 @@ +const pkg = state => state.pkg +const app = state => state.app +const device = state => state.app.device +const sidebar = state => state.app.sidebar +const effect = state => state.app.effect +const menuitems = state => state.menu.items +const componententry = state => { + return state.menu.items.filter(c => c.meta && c.meta.label === 'Components')[0] +} + +export { + pkg, + app, + device, + sidebar, + effect, + menuitems, + componententry +} diff --git a/client/store/index.js b/client/store/index.js index c764f32f..07e8e60a 100755 --- a/client/store/index.js +++ b/client/store/index.js @@ -1,52 +1,27 @@ import Vue from 'vue' import Vuex from 'vuex' +import pkg from 'package' +import * as actions from './actions' +import * as getters from './getters' -import config from './config' -import menu from '../router/menu' +import app from './modules/app' +import menu from './modules/menu' Vue.use(Vuex) -const state = { - config, - menu, - count: 0 -} - -const mutations = { - INCREMENT (state) { - state.count++ - }, - SIDEBAR (state, status = true) { - state.config.sidebar = status - } -} - -const actions = { - INCREMENT ({ commit }) { - commit('INCREMENT') - }, - INCREMENT_ASYNC ({ commit }) { - setTimeout(() => { - commit('INCREMENT') - }, 1000) - }, - - // Sidebar: show, hide, toggle - SHOW_SIDEBAR ({ commit }) { - commit('SIDEBAR', true) +const store = new Vuex.Store({ + strict: true, // process.env.NODE_ENV !== 'production', + actions, + getters, + modules: { + app, + menu }, - HIDE_SIDEBAR ({ commit }) { - commit('SIDEBAR', false) + state: { + pkg }, - TOGGLE_SIDEBAR ({ commit, state }) { - commit('SIDEBAR', !state.config.sidebar) + mutations: { } -} - -const store = new Vuex.Store({ - state, - mutations, - actions }) export default store diff --git a/client/store/modules/app.js b/client/store/modules/app.js new file mode 100644 index 00000000..9c014519 --- /dev/null +++ b/client/store/modules/app.js @@ -0,0 +1,41 @@ +import * as types from '../mutation-types' + +const state = { + device: { + isMobile: false, + isTablet: false + }, + sidebar: { + opened: false, + hidden: false + }, + effect: { + translate3d: true + } +} + +const mutations = { + [types.TOGGLE_DEVICE] (state, device) { + state.device.isMobile = device === 'mobile' + state.device.isTablet = device === 'tablet' + }, + + [types.TOGGLE_SIDEBAR] (state, opened) { + if (state.device.isMobile) { + state.sidebar.opened = opened + } else { + state.sidebar.opened = true + } + }, + + [types.SWITCH_EFFECT] (state, effectItem) { + for (let name in effectItem) { + state.effect[name] = effectItem[name] + } + } +} + +export default { + state, + mutations +} diff --git a/client/store/modules/menu/charts.js b/client/store/modules/menu/charts.js new file mode 100644 index 00000000..08924a6e --- /dev/null +++ b/client/store/modules/menu/charts.js @@ -0,0 +1,47 @@ +import lazyLoading from './lazyLoading' + +export default { + name: 'Charts', + path: '/charts', + meta: { + icon: 'fa-bar-chart-o', + expanded: false, + link: 'charts/index.vue' + }, + component: lazyLoading('charts', true), + + children: [ + { + name: 'Chartist', + path: 'chartist', + component: lazyLoading('charts/Chartist'), + meta: { + link: 'charts/Chartist.vue' + } + }, + { + name: 'Chartjs', + path: 'chartjs', + component: lazyLoading('charts/Chartjs'), + meta: { + link: 'charts/Chartjs.vue' + } + }, + { + name: 'Peity', + path: 'peity', + component: lazyLoading('charts/Peity'), + meta: { + link: 'charts/Peity.vue' + } + }, + { + name: 'Plotly', + path: 'plotly', + component: lazyLoading('charts/Plotly'), + meta: { + link: 'charts/Plotly.vue' + } + } + ] +} diff --git a/client/store/modules/menu/components.js b/client/store/modules/menu/components.js new file mode 100644 index 00000000..df29d4fc --- /dev/null +++ b/client/store/modules/menu/components.js @@ -0,0 +1,192 @@ +import lazyLoading from './lazyLoading' + +export default { + path: '/components', + meta: { + icon: 'fa-building-o', + expanded: false, + label: 'Components' + }, + component: lazyLoading('components', true), + + children: [ + { + name: 'Components', + path: '', + component: lazyLoading('components/Default'), + meta: { + link: 'components/Default.vue' + } + }, + { + name: 'BackToTop', + path: 'backToTop', + meta: { + description: 'Jump component is based on jump.js', + repository: 'https://github.com/vue-bulma/jump', + link: 'components/BackToTop.vue' + }, + component: lazyLoading('components/BackToTop') + }, + { + name: 'Brace', + path: 'brace', + meta: { + description: 'Code editor component that based on brace', + repository: 'https://github.com/vue-bulma/brace', + link: 'components/Brace.vue' + }, + component: lazyLoading('components/Brace') + }, + { + name: 'Collapse', + path: 'collapse', + meta: { + description: 'Collapse component', + repository: 'https://github.com/vue-bulma/collapse', + link: 'components/Collapse.vue' + }, + component: lazyLoading('components/Collapse') + }, + { + name: 'Datepicker', + path: 'datepicker', + meta: { + description: 'Datepicker component is based on flatpickr', + repository: 'https://github.com/vue-bulma/datepicker', + link: 'components/Datepicker.vue' + }, + component: lazyLoading('components/Datepicker') + }, + { + name: 'Emoji', + path: 'emoji', + meta: { + description: 'Emoji Component is based on emojione.com', + repository: 'https://github.com/vue-bulma/emoji', + link: 'components/Emoji.vue' + }, + component: lazyLoading('components/Emoji') + }, + { + name: 'Message', + path: 'message', + meta: { + description: 'Message component', + repository: 'https://github.com/vue-bulma/message', + link: 'components/Message.vue' + }, + component: lazyLoading('components/Message') + }, + { + name: 'Modal', + path: 'modal', + meta: { + description: 'Modal component', + repository: 'https://github.com/vue-bulma/modal', + link: 'components/Modal.vue' + }, + component: lazyLoading('components/Modal') + }, + { + name: 'Notification', + path: 'notification', + meta: { + description: 'Notification component', + repository: 'https://github.com/vue-bulma/notification', + link: 'components/Notification.vue' + }, + component: lazyLoading('components/Notification') + }, + { + name: 'ProgressBar', + path: 'progress-bar', + meta: { + description: 'ProgressBar component', + repository: 'https://github.com/vue-bulma/progress-bar', + link: 'components/ProgressBar.vue' + }, + component: lazyLoading('components/ProgressBar') + }, + { + name: 'ProgressTracker', + path: 'progress-tracker', + meta: { + description: 'ProgressTracker component is based on progress-tracker', + repository: 'https://github.com/vue-bulma/progress-tracker', + link: 'components/ProgressTracker.vue' + }, + component: lazyLoading('components/ProgressTracker') + }, + { + name: 'Quill', + path: 'quill', + meta: { + description: 'Your powerful, rich text editor', + repository: 'https://github.com/vue-bulma/quill', + link: 'components/Quill.vue' + }, + component: lazyLoading('components/Quill') + }, + { + name: 'Rating', + path: 'rating', + meta: { + description: 'Rating component is based on starability.css', + repository: 'https://github.com/vue-bulma/rating', + link: 'components/Rating.vue' + }, + component: lazyLoading('components/Rating') + }, + { + name: 'Slider', + path: 'slider', + meta: { + description: 'Slider component', + repository: 'https://github.com/vue-bulma/slider', + link: 'components/Slider.vue' + }, + component: lazyLoading('components/Slider') + }, + { + name: 'Switch', + path: 'switch', + meta: { + description: 'Switch component', + repository: 'https://github.com/vue-bulma/switch', + link: 'components/Switch.vue' + }, + component: lazyLoading('components/Switch') + }, + { + name: 'Tabs', + path: 'tabs', + meta: { + description: 'Tabs component', + repository: 'https://github.com/vue-bulma/tabs', + link: 'components/Tabs.vue' + }, + component: lazyLoading('components/Tabs') + }, + { + name: 'Tooltip', + path: 'tooltip', + meta: { + description: 'Tooltip component is based on hint.css', + repository: 'https://github.com/vue-bulma/tooltip', + link: 'components/Tooltip.vue' + }, + component: lazyLoading('components/Tooltip') + }, + { + name: 'Lory', + path: 'lory', + meta: { + description: 'Slider component is based on lory, lory: ☀ Touch enabled minimalistic slider', + repository: 'https://github.com/vue-bulma/lory', + link: 'components/Lory.vue' + }, + component: lazyLoading('components/Lory') + } + ] +} diff --git a/client/store/modules/menu/index.js b/client/store/modules/menu/index.js new file mode 100644 index 00000000..1c8ae6cc --- /dev/null +++ b/client/store/modules/menu/index.js @@ -0,0 +1,55 @@ +import * as types from '../../mutation-types' +import lazyLoading from './lazyLoading' +import charts from './charts' +import uifeatures from './uifeatures' +import components from './components' +import tables from './tables' + +// show: meta.label -> name +// name: component name +// meta.label: display label + +const state = { + items: [ + { + name: 'Dashboard', + path: '/dashboard', + meta: { + icon: 'fa-tachometer', + link: 'dashboard/index.vue' + }, + component: lazyLoading('dashboard', true) + }, + { + name: 'Axios', + path: '/axiosDemo', + meta: { + auth: true, + icon: 'fa-rocket', + link: 'axios/index.vue' + }, + component: lazyLoading('axios', true) + }, + charts, + uifeatures, + components, + tables + ] +} + +const mutations = { + [types.EXPAND_MENU] (state, menuItem) { + if (menuItem.index > -1) { + if (state.items[menuItem.index] && state.items[menuItem.index].meta) { + state.items[menuItem.index].meta.expanded = menuItem.expanded + } + } else if (menuItem.item && 'expanded' in menuItem.item.meta) { + menuItem.item.meta.expanded = menuItem.expanded + } + } +} + +export default { + state, + mutations +} diff --git a/client/store/modules/menu/lazyLoading.js b/client/store/modules/menu/lazyLoading.js new file mode 100644 index 00000000..4561e1d9 --- /dev/null +++ b/client/store/modules/menu/lazyLoading.js @@ -0,0 +1,3 @@ +// lazy loading Components +// https://github.com/vuejs/vue-router/blob/dev/examples/lazy-loading/app.js#L8 +export default (name, index = false) => () => import(`views/${name}${index ? '/index' : ''}.vue`) diff --git a/client/store/modules/menu/tables.js b/client/store/modules/menu/tables.js new file mode 100644 index 00000000..1f57fe6e --- /dev/null +++ b/client/store/modules/menu/tables.js @@ -0,0 +1,21 @@ +import lazyLoading from './lazyLoading' + +export default { + name: 'Tables', + meta: { + icon: 'fa-table', + expanded: false + }, + + children: [ + { + name: 'BasicTables', + path: '/tables/basic', + meta: { + label: 'Basic Tables', + link: 'tables/Basic.vue' + }, + component: lazyLoading('tables/Basic') + } + ] +} diff --git a/client/store/modules/menu/uifeatures.js b/client/store/modules/menu/uifeatures.js new file mode 100644 index 00000000..467a3157 --- /dev/null +++ b/client/store/modules/menu/uifeatures.js @@ -0,0 +1,44 @@ +import lazyLoading from './lazyLoading' + +export default { + meta: { + label: 'UI Features', + icon: 'fa-laptop', + expanded: false + }, + + children: [ + { + name: 'Buttons', + path: '/buttons', + meta: { + link: 'ui/Buttons.vue' + }, + component: lazyLoading('ui/Buttons') + }, + { + name: 'Form', + path: '/form', + meta: { + link: 'ui/Form.vue' + }, + component: lazyLoading('ui/Form') + }, + { + name: 'Typography', + path: '/typography', + meta: { + link: 'ui/Typography.vue' + }, + component: lazyLoading('ui/Typography') + }, + { + name: 'Icons', + path: '/icons', + meta: { + link: 'ui/Icons.vue' + }, + component: lazyLoading('ui/Icons') + } + ] +} diff --git a/client/store/mutation-types.js b/client/store/mutation-types.js new file mode 100644 index 00000000..88d08299 --- /dev/null +++ b/client/store/mutation-types.js @@ -0,0 +1,7 @@ +export const TOGGLE_DEVICE = 'TOGGLE_DEVICE' + +export const TOGGLE_SIDEBAR = 'TOGGLE_SIDEBAR' + +export const EXPAND_MENU = 'EXPAND_MENU' + +export const SWITCH_EFFECT = 'SWITCH_EFFECT' diff --git a/client/views/Home.vue b/client/views/Home.vue index 313fa956..d607aaa4 100755 --- a/client/views/Home.vue +++ b/client/views/Home.vue @@ -1,16 +1,32 @@ <template> <div class="content has-text-centered"> <p> - <img width="200" src="~assets/logo.svg" alt="Vue Admin Panel Framework"> + <img width="200" src="~assets/logo.svg" :alt="description"> </p> - <h1 class="is-title is-bold">Vue Admin</h1> + <h1 class="is-title is-bold">{{ name.replace('-', ' ') }}</h1> <p> - <strong>Vue Admin Panel Framework</strong>, - <a href="https://vue-admin.fundon.me">Live Demo</a> + <strong>{{ description }}</strong>, + <a :href="homepage">Live Demo</a> </p> - <p>Supports Vue 2.0 and Bulma 0.2!</p> + <p>Supports Vue 2.0 and Bulma 0.3!</p> </div> </template> + +<script> +export default { + + data () { + return this.$store.state.pkg + } + +} +</script> + +<style lang="scss" scoped> +.is-title { + text-transform: capitalize; +} +</style> diff --git a/client/views/auth/Login.vue b/client/views/auth/Login.vue new file mode 100644 index 00000000..615b0762 --- /dev/null +++ b/client/views/auth/Login.vue @@ -0,0 +1,105 @@ +<template> +<div class="content has-text-centered"> + <h1 class="is-title is-bold">Login</h1> + + <div class="columns is-vcentered"> + <div class="column is-6 is-offset-3"> + <div class="box"> + <div v-show="error" style="color:red; word-wrap:break-word;">{{ error }}</div> + <form v-on:submit.prevent="login"> + <label class="label">Email</label> + <p class="control"> + <input v-model="data.body.username" class="input" type="text" placeholder="email@example.org"> + </p> + <label class="label">Password</label> + <p class="control"> + <input v-model="data.body.password" class="input" type="password" placeholder="password"> + </p> + + <p class="control"> + <label class="checkbox"> + <input type="checkbox" v-model="data.rememberMe"> + Remember me + </label> + </p> + + <hr> + <p class="control"> + <button type="submit" class="button is-primary">Login</button> + <button class="button is-default">Cancel</button> + </p> + </form> + </div> + </div> + </div> +</div> +</template> + +<script> +export default { + + data () { + return { + data: { + body: { + username: null, + password: null + }, + rememberMe: false + }, + error: null + } + }, + mounted () { + if (this.$auth.redirect()) { + console.log('Redirect from: ' + this.$auth.redirect().from.name) + } + // Can set query parameter here for auth redirect or just do it silently in login redirect. + }, + methods: { + login () { + var redirect = this.$auth.redirect() + this.$auth.login({ + headers: { + 'Content-Type': 'application/json' + }, + data: this.data.body, + rememberMe: this.data.rememberMe, + redirect: {name: redirect ? redirect.from.name : 'Home'}, + success (res) { + console.log('Auth Success') + // console.log('Token: ' + this.$auth.token()) + // console.log(res) + }, + error (err) { + if (err.response) { + // The request was made, but the server responded with a status code + // that falls out of the range of 2xx + // console.log(err.response.status) + // console.log(err.response.data) + // console.log(err.response.headers) + this.error = err.response.data + } else { + // Something happened in setting up the request that triggered an Error + console.log('Error', err.message) + } + console.log(err.config) + } + }) + } + } + // filters: { + // json: function (value) { + // console.log(value) + // return value + // } + // } + +} +</script> + +<style lang="scss" scoped> +.is-title { + text-transform: capitalize; +} +</style> diff --git a/client/views/axios/index.vue b/client/views/axios/index.vue new file mode 100644 index 00000000..e4c1608a --- /dev/null +++ b/client/views/axios/index.vue @@ -0,0 +1,155 @@ +<template> + <div> + <div class="tile is-ancestor"> + <div class="tile is-parent is-8"> + <article class="tile is-child box"> + <p class="title control" :class="{'is-loading': isloading}"> + Price History of {{params.symbol}} + <span class="subtitle help is-danger is-5"> + This demo only works under Development env + </span> + </p> + <chart :type="'line'" :data="stockData" :options="options"></chart> + </article> + </div> + <div class="tile is-parent is-4"> + <article class="tile is-child box"> + <div class="block"> + <p class="title is-5">Request Params</p> + <a href="https://github.com/markitondemand/DataApis" class="link">Markit On Demand - Market Data APIs</a> + </div> + <div class="block"> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Symbol</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="params.symbol"> + <option v-for="s in symbols" :value="s">{{s}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Days</label> + </div> + <div class="control is-fullwidth"> + <input class="input" min="0" max="720" type="number" v-model="params.numberOfDays"> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Period</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="params.dataPeriod"> + <option v-for="p in periods" :value="p">{{p}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label"></label> + </div> + <div class="control"> + <button class="button is-primary" :class="{'is-loading': isloading}" @click="loadData">Refresh</button> + </div> + </div> + </div> + </article> + </div> + </div> + </div> +</template> + +<script> +import Chart from 'vue-bulma-chartjs' + +const api = '/MODApis/Api/v2/InteractiveChart/json' + +export default { + components: { + Chart + }, + + data () { + return { + params: { + symbol: 'AAPL', + numberOfDays: 450, + dataPeriod: 'Month' + }, + symbols: ['AAPL', 'MSFT', 'JNJ', 'GOOG'], + periods: ['Day', 'Week', 'Month', 'Quarter', 'Year'], + data: [], + labels: [], + isloading: false, + options: { + legend: { display: false }, + animation: { duration: 0 }, + scales: { + xAxes: [{ + type: 'time', + time: { + unit: 'month' + } + }] + } + } + } + }, + + computed: { + stockData () { + return { + labels: this.labels, + datasets: [{ + fill: false, + lineTension: 0.25, + data: this.data, + label: 'Close price', + pointBackgroundColor: '#1fc8db', + pointBorderWidth: 1 + }] + } + } + }, + + methods: { + loadData () { + this.isloading = true + this.labels.length = 0 + this.data.length = 0 + this.$http({ + url: api, + transformResponse: [(data) => { + return JSON.parse(data.replace(/T00:00:00/g, '')) + }], + params: { + parameters: { + Normalized: false, + NumberOfDays: parseInt(this.params.numberOfDays), + DataPeriod: this.params.dataPeriod, + Elements: [{'Symbol': this.params.symbol, 'Type': 'price', 'Params': ['c']}] + } + } + }).then((response) => { + let dates = response.data.Dates + let price = response.data.Elements[0].DataSeries.close.values + this.data.push(...price) + this.labels.push(...dates) + this.isloading = false + }).catch((error) => { + console.log(error) + }) + } + } +} +</script> + +<style scoped> +</style> diff --git a/client/views/charts/CanvasGauges.vue b/client/views/charts/CanvasGauges.vue deleted file mode 100644 index a28d38b4..00000000 --- a/client/views/charts/CanvasGauges.vue +++ /dev/null @@ -1,54 +0,0 @@ -<template> - <div> - <div class="tile is-ancestor"> - <div class="tile is-parent"> - <article class="tile is-child box"> - <h4 class="title">Gauges</h4> - <div class="content"> - <div class="columns"> - <div class="column"> - <radial-gauge :value="value"></radial-gauge> - </div> - <div class="column"> - <linear-gauge :value="value"></linear-gauge> - </div> - <div class="column"> - <linear-gauge :value="value" :options="{ width: 100 }"></linear-gauge> - </div> - </div> - </div> - </article> - </div> - </div> - </div> -</template> - -<script> -import { LinearGauge, RadialGauge } from 'vue-canvas-gauges' - -export default { - components: { - LinearGauge, - RadialGauge - }, - - data () { - return { - value: 75 - } - }, - - computed: { - }, - - created () { - // has bug! - // setInterval(() => { - // this.value = Math.floor(Math.random() * 100) - // }, 2048) - } -} -</script> - -<style> -</style> diff --git a/client/views/charts/Chartjs.vue b/client/views/charts/Chartjs.vue index 8215bf78..74e0668c 100644 --- a/client/views/charts/Chartjs.vue +++ b/client/views/charts/Chartjs.vue @@ -84,7 +84,7 @@ export default { ], labels_2: ['April', 'May', 'June', 'Jule', 'August', 'September', 'October', 'November', 'December'], - data_2: [1, 9, 3, 4, 5, 6, 7, 8, 2].map(e => Math.sin(e) * 25 + 25), + data_2: [1, 9, 3, 4, 5, 6, 7, 8, 2].map(e => (Math.sin(e) * 25) + 25), labels_3: ['May', 'June', 'Jule', 'August', 'September', 'October', 'November'], data_3: [ diff --git a/client/views/components/Brace.vue b/client/views/components/Brace.vue new file mode 100644 index 00000000..f71c343b --- /dev/null +++ b/client/views/components/Brace.vue @@ -0,0 +1,165 @@ +<template> + <div class="tile is-ancestor"> + <div class="tile is-parent is-4"> + <article class="tile is-child box"> + <h1 class="title is-5">Options Panel</h1> + <div class="block"> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Modes</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.mode"> + <option v-for="mode in modes" :value="mode.name">{{mode.caption}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Themes</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.theme"> + <option v-for="theme in themes" :value="theme.name">{{theme.caption}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Font Size</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.fontsize"> + <option v-for="fsize in fontsize" :value="fsize">{{fsize}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Code Folding</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.codefolding"> + <option v-for="cfolding in codefolding" :value="cfolding">{{cfolding}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Soft Wrap</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.softwrap"> + <option v-for="swrap in softwrap" :value="swrap">{{swrap}}</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Select Style</label> + </div> + <div class="control"> + <div class="select is-fullwidth"> + <select v-model="selected.selectionstyle"> + <option value="text">text</option> + <option value="line">line</option> + </select> + </div> + </div> + </div> + <div class="control is-horizontal"> + <div class="control-label"> + <label class="label">Highlight Line</label> + </div> + <div class="control" style="margin-top: 10px;"> + <label class="radio"> + <input type="radio" value="true" v-model="selected.highlightline"> + Yes + </label> + <label class="radio"> + <input type="radio" value="false" v-model="selected.highlightline"> + No + </label> + </div> + </div> + </div> + </article> + </div> + <div class="tile is-parent"> + <article class="tile is-child box brace-container"> + <brace + style="min-height: 100%; min-width: 100%" + :fontsize="this.selected.fontsize" + :theme="this.selected.theme" + :mode="this.selected.mode" + :codefolding="this.selected.codefolding" + :softwrap="this.selected.softwrap" + :selectionstyle="this.selected.selectionstyle" + :highlightline="this.selected.highlightline === 'true'" + @code-change="oncodeChange"> + </brace> + </article> + </div> + </div> +</template> + +<script> +import Brace from 'vue-bulma-brace' +// this is just an example. you don't want to import those things. +import * as brace from 'brace' +import 'brace/ext/modelist' +import 'brace/ext/themelist' +const modelist = brace.acequire('ace/ext/modelist') +const themelist = brace.acequire('ace/ext/themelist') + +export default { + components: { + Brace + }, + + data () { + return { + code: '', + modes: modelist.modes, + themes: themelist.themes, + fontsize: ['12px', '13px', '14px', '16px', '18px', '20px', '22px', '24px'], + codefolding: ['manual', 'markbegin', 'markbeginend'], + softwrap: ['off', '50', 'free'], + selected: { + mode: 'json', + theme: 'github', + fontsize: '12px', + codefolding: 'markbegin', + softwrap: 'free', + selectionstyle: 'text', + highlightline: 'true' + } + } + }, + + methods: { + oncodeChange (code) { + this.code = code + } + } +} +</script> + +<style lang="scss" scoped> +.control-label { + min-width: 100px; +} +.brace-container { + display: flex; +} +</style> diff --git a/client/views/components/Datepicker.vue b/client/views/components/Datepicker.vue index 8d47751a..be74b9f3 100644 --- a/client/views/components/Datepicker.vue +++ b/client/views/components/Datepicker.vue @@ -5,7 +5,7 @@ <article class="tile is-child box"> <h1 class="title">Basics</h1> <p class="control"> - <datepicker :value.sync="value"></datepicker> + <datepicker :inputClass="{ test: true }" v-model="value"></datepicker> </p> <p class="control"> <datepicker placeholder="European Format ('d-m-Y')" :config="{ dateFormat: 'd-m-Y', static: true }"></datepicker> @@ -30,68 +30,87 @@ </p> </article> </div> - <div class="tile is-parent"> + <div class="tile is-parent is-vertical"> <article class="tile is-child box"> <h1 class="title">Form addons</h1> - <datepicker :config="{ wrap: true }" readonly> + <datepicker :inputClass="{ test: true }" :config="{ wrap: true }" readonly> <a class="button" data-toggle><i class="fa fa-calendar"></i></a> <a class="button" data-clear><i class="fa fa-close"></i></a> </datepicker> - <h1 class="title">Inline or embedded calendar</h1> - <p class="control"> - <datepicker placeholder="Pick date and time" :config="{ inline: true }"></datepicker> - </p> + </article> + <article class="tile is-child box"> <h1 class="title">Display week numbers</h1> <p class="control"> <datepicker placeholder="Enabled week numbers" :config="{ weekNumbers: true }"></datepicker> </p> </article> + <article class="tile is-child box"> + <h1 class="title">Date Range</h1> + <p class="control"> + <datepicker placeholder="Select a range" :config="{ mode: 'range' }"></datepicker> + </p> + </article> </div> </div> <div class="tile is-ancestor"> - <div class="tile is-parent"> + <div class="tile is-parent is-vertical"> <article class="tile is-child box"> - <h1 class="title">DateTime or Time Picker</h1> + <h1 class="title">Preload date and time</h1> <p class="control"> - <datepicker placeholder="Pick date and time" :config="{ enableTime: true }"></datepicker> + <!-- TODO: click out side cannot handle hidden input yet. Will fix this later. --> + <datepicker placeholder="The real input is hidden :^)" :config="{ altInput: false, altFormat: 'F j, Y' }"></datepicker> + <!-- <datepicker placeholder="The real input is hidden :^)" :config="{ altInput: true, altFormat: 'F j, Y' }"></datepicker> --> </p> <p class="control"> - <datepicker placeholder="24 hour time" :config="{ enableTime: true, time_24hr: true, dateFormat: 'Y-m-d H:i' }"></datepicker> + <datepicker :config="{ defaultDate: '2016-03-01 03:30:00 -0300', enableTime: true }"></datepicker> </p> <p class="control"> - <datepicker placeholder="Pick date and time" :config="{ enableTime: true, enableSeconds: true, dateFormat: 'Y-m-d h:i:S K' }"></datepicker> + <datepicker :config="{ defaultDate: '2016-12-27T16:16:22.585Z', enableTime: true }"></datepicker> + </p> + </article> + <article class="tile is-child box"> + <h1 class="title">UTC mode</h1> + <p class="control"> + <datepicker :config="{ utc: true, defaultDate: '2016-03-01 03:30:00 -0300', enableTime: true }"></datepicker> </p> <p class="control"> - <datepicker placeholder="Pick date and time" :config="{ enableTime: true, enableSeconds: true, noCalendar: true }" value="09:00:00"></datepicker> + <datepicker :config="{ utc: true, defaultDate: '2016-12-27T16:16:22.585Z', enableTime: true }"></datepicker> </p> </article> </div> <div class="tile is-parent"> <article class="tile is-child box"> - <h1 class="title">Preload date and time</h1> + <h1 class="title">Inline or embedded calendar</h1> <p class="control"> - <datepicker placeholder="The real input is hidden :^)" :config="{ altInput: true, altFormat: 'F j, Y' }"></datepicker> + <datepicker placeholder="Pick date and time" :config="{ inline: true }"></datepicker> </p> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent is-vertical"> + <article class="tile is-child box"> + <h1 class="title">DateTime Picker</h1> <p class="control"> - <datepicker :config="{ defaultDate: '2016-03-01 03:30:00 -0300', enableTime: true }"></datepicker> + <datepicker placeholder="Pick date and time" :config="{ enableTime: true }"></datepicker> </p> <p class="control"> - <datepicker :config="{ defaultDate: '2016-12-27T16:16:22.585Z', enableTime: true }"></datepicker> + <datepicker placeholder="24 hour time" :config="{ enableTime: true, time_24hr: true, dateFormat: 'Y-m-d H:i' }"></datepicker> </p> - <h1 class="title">UTC mode</h1> <p class="control"> - <datepicker :config="{ utc: true, defaultDate: '2016-03-01 03:30:00 -0300', enableTime: true }"></datepicker> + <datepicker placeholder="Pick date and time" :config="{ enableTime: true, enableSeconds: true, dateFormat: 'Y-m-d h:i:S K' }"></datepicker> </p> + </article> + <article class="tile is-child box"> + <h1 class="title">Time Picker</h1> <p class="control"> - <datepicker :config="{ utc: true, defaultDate: '2016-12-27T16:16:22.585Z', enableTime: true }"></datepicker> + <datepicker placeholder="Pick time" :config="{ enableTime: true, enableSeconds: true, noCalendar: true }" value="09:00:00"></datepicker> </p> </article> </div> - </div> - - <div class="tile is-ancestor"> - <div class="tile is-parent"> + <div class="tile is-parent is-vertical"> <article class="tile is-child box"> <h1 class="title">Disable specific dates or date intervals</h1> <p class="control"> @@ -101,10 +120,8 @@ <datepicker placeholder="disabled September 6-9 & August 25-31 2016" :config="{ disable: [ { from : '2016-09-06', to : '2016-09-09' }, { from : '2016-08-25', to : '2016-08-31' } ], minDate: 'today', dateFormat: 'Y-m-d' }"></datepicker> </p> </article> - </div> - <div class="tile is-parent"> <article class="tile is-child box"> - <h1 class="title">Setting options on the fly</h1> + <h1 class="title">Setting options dynamically</h1> <p class="control"> <datepicker ref="checkIn" placeholder="Check-In Date" :config="{ minDate: new Date() }"></datepicker> </p> @@ -128,7 +145,7 @@ <article class="tile is-child box"> <h1 class="title">Localization</h1> <p class="control"> - <datepicker :l10n="l10n"></datepicker> + <datepicker :config="{ locale: l10n }"></datepicker> </p> </article> </div> @@ -152,12 +169,12 @@ export default { mounted () { const { checkIn, checkOut } = this.$refs - checkIn.datepicker.set('onChange', (d) => { - checkOut.datepicker.set('minDate', d.fp_incr(1)) + checkIn.datepicker.set('onChange', (selectedDates, dateStr, instance) => { + checkOut.datepicker.set('minDate', selectedDates[0].fp_incr(1)) }) - checkOut.datepicker.set('onChange', (d) => { - checkIn.datepicker.set('maxDate', d) + checkOut.datepicker.set('onChange', (selectedDates, dateStr, instance) => { + checkIn.datepicker.set('maxDate', dateStr) }) }, diff --git a/client/views/components/Default.vue b/client/views/components/Default.vue index 2f75c484..276375b9 100644 --- a/client/views/components/Default.vue +++ b/client/views/components/Default.vue @@ -2,63 +2,66 @@ <div class="columns is-multiline is-mobile"> <div class="column is-half-mobile is-one-third-tablet is-one-third-desktop" v-for="item in items" v-if="item.name"> - <div class="card is-fullwidth"> - <header class="card-header"> - <p class="card-header-title">{{ item.name }}</p> - </header> - <div class="card-content"> - <div class="content">{{ getDescription(item) }}</div> - </div> - <footer class="card-footer"> - <a class="card-footer-item" :href="getRepository(item)"> - <span class="icon is-small"> - <i class="fa fa-github" aria-hidden="true"></i> - </span> - Repository - </a> - <router-link :to="{ name: item.name }" class="card-footer-item"> - <span class="icon is-small"> - <i class="fa fa-link" aria-hidden="true"></i> - </span> - Demo - </router-link> - </footer> - </div> + <base-card + :title="item.name" + :content="getDescription(item)"> + <card-footer-item slot="footer" :href="item.meta && item.meta.repository"> + <span class="icon is-small"> + <i aria-hidden="true" class="fa fa-github"></i> + </span> + Repository + </card-footer-item> + <card-footer-item slot="footer" element='link' :to="{name: item.name}"> + <span class="icon is-small"> + <i aria-hidden="true" class="fa fa-link"></i> + </span> + Demo + </card-footer-item> + </base-card> </div> - + </div> </template> <script> +import { mapGetters } from 'vuex' +import { BaseCard, CardFooterItem } from 'vue-bulma-card' + export default { + components: { + BaseCard, + CardFooterItem + }, computed: { - parent () { - return this.$store.state.menu.filter(c => c.name === 'Components')[0] - }, + ...mapGetters({ + parent: 'componententry' + }), parentPath () { - const parent = this.parent - return parent ? parent.path : '' + return this.parent ? this.parent.path : '' }, items () { - const parent = this.parent - return parent ? parent.children : [] + return (this.parent ? this.parent.children : []).filter(item => item.path) } }, methods: { - getPath (item) { - return this.parentPath + '/' + item.path + getActions (item) { + return [{ + text: 'Repository', + icon: 'github', + href: item.meta && item.meta.repository + }, { + text: 'Demo', + icon: 'link', + name: item.name + }] }, getDescription (item) { return item.meta && item.meta.description - }, - - getRepository (item) { - return item.meta && item.meta.repository } } diff --git a/client/views/components/Lory.vue b/client/views/components/Lory.vue new file mode 100644 index 00000000..8c9dae3b --- /dev/null +++ b/client/views/components/Lory.vue @@ -0,0 +1,169 @@ +<template> + <div> + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-primary"> + <h1 class="title">Defaults: handle the touch</h1> + <lory> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>6</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-warning"> + <h1 class="title">Enable mouse events</h1> + <lory :options="{ enableMouseEvents: true }"> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>6</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-info"> + <h1 class="title">Infinite</h1> + <lory :options="{ enableMouseEvents: true, infinite: 1 }"> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>6</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-danger"> + <h1 class="title">Rewind</h1> + <lory class="js_rewind" :options="{ enableMouseEvents: true, infinite: 1, rewind: true }"> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>6</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-primary"> + <h1 class="title">Width</h1> + <lory class="js_rewind" :options="{ enableMouseEvents: true, infinite: 1, rewind: true }"> + <item style="width: 220px;">220</item> + <item style="width: 190px;">190</item> + <item style="width: 150px;">150</item> + <item style="width: 130px;">130</item> + <item style="width: 250px;">250</item> + <item style="width: 180px;">180</item> + <item style="width: 200px;">200</item> + <item style="width: 140px;">140</item> + <item style="width: 120px;">120</item> + <item style="width: 240px;">240</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-warning"> + <h1 class="title">Multiple slides to scroll</h1> + <lory class="columns is-mobile" :options="{ enableMouseEvents: true, infinite: 4, slidesToScroll: 4 }"> + <item class="column is-one-quarter-mobile is-3">1</item> + <item class="column is-one-quarter-mobile is-3">2</item> + <item class="column is-one-quarter-mobile is-3">3</item> + <item class="column is-one-quarter-mobile is-3">4</item> + <item class="column is-one-quarter-mobile is-3">5</item> + <item class="column is-one-quarter-mobile is-3">6</item> + <item class="column is-one-quarter-mobile is-3">7</item> + <item class="column is-one-quarter-mobile is-3">8</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-info"> + <h1 class="title">Custom easings</h1> + <lory class="columns is-mobile js_rewind" :options="{ enableMouseEvents: true, infinite: 4, slidesToScroll: 4, slideSpeed: 1000, ease: 'cubic-bezier(0.455, 0.03, 0.515, 0.955)', rewind: true }"> + <item class="column is-one-quarter-mobile is-3">1</item> + <item class="column is-one-quarter-mobile is-3">2</item> + <item class="column is-one-quarter-mobile is-3">3</item> + <item class="column is-one-quarter-mobile is-3">4</item> + <item class="column is-one-quarter-mobile is-3">5</item> + <item class="column is-one-quarter-mobile is-3">6</item> + <item class="column is-one-quarter-mobile is-3">7</item> + <item class="column is-one-quarter-mobile is-3">8</item> + </lory> + </article> + </div> + </div> + + <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box notification is-danger"> + <h1 class="title">Prev & Next</h1> + <lory class="js_rewind" :options="{ enableMouseEvents: true, infinite: 1, rewind: true }"> + <item>1</item> + <item>2</item> + <item>3</item> + <item>4</item> + <item>5</item> + <item>6</item> + <prev slot="actions" color="#dbdbdb"></prev> + <next slot="actions" color="#dbdbdb"></next> + </lory> + </article> + </div> + </div> + </div> +</template> + +<script> +import { Lory, Item, Prev, Next } from 'vue-lory' + +export default { + components: { + Lory, + Item, + Prev, + Next + } +} +</script> + +<style lang="scss" scoped> +.slider { + .frame li { + height: 130px; + } + + &.js_rewind { + .frame li { + color: #000; + background: whitesmoke; + } + } +} +</style> diff --git a/client/views/components/Modal.vue b/client/views/components/Modal.vue index a61ed41d..c4aed3d9 100644 --- a/client/views/components/Modal.vue +++ b/client/views/components/Modal.vue @@ -1,6 +1,5 @@ <template> <div> - <modal></modal> <div class="tile is-ancestor"> <div class="tile is-parent is-4"> <article class="tile is-child box"> @@ -23,6 +22,7 @@ </article> </div> </div> + <modal :visible="showModal" @close="closeModalBasic"></modal> </div> </template> @@ -32,25 +32,21 @@ import Modal from './modals/Modal' import ImageModal from './modals/ImageModal' import CardModal from './modals/CardModal' -const ModalComponent = Vue.extend(Modal) const ImageModalComponent = Vue.extend(ImageModal) const CardModalComponent = Vue.extend(CardModal) -const openModal = (propsData = {}) => { - return new ModalComponent({ - el: document.createElement('div'), - propsData - }) -} - -const openImageModal = (propsData = {}) => { +const openImageModal = (propsData = { + visible: true +}) => { return new ImageModalComponent({ el: document.createElement('div'), propsData }) } -const openCardModal = (propsData = {}) => { +const openCardModal = (propsData = { + visible: true +}) => { return new CardModalComponent({ el: document.createElement('div'), propsData @@ -62,19 +58,34 @@ export default { Modal }, + data () { + return { + showModal: true, + cardModal: null, + imageModal: null + } + }, + methods: { openModalBasic () { - openModal() + this.showModal = true + }, + + closeModalBasic () { + this.showModal = false }, openModalImage () { - openImageModal() + const imageModal = this.imageModal || (this.imageModal = openImageModal()) + imageModal.$children[0].active() }, openModalCard () { - openCardModal({ - title: 'Modal title' - }) + const cardModal = this.cardModal || (this.cardModal = openCardModal({ + title: 'Modal title', + url: this.$store.state.pkg.homepage + })) + cardModal.$children[0].active() } } } diff --git a/client/views/components/ProgressTracker.vue b/client/views/components/ProgressTracker.vue index ff755c19..8250b994 100644 --- a/client/views/components/ProgressTracker.vue +++ b/client/views/components/ProgressTracker.vue @@ -6,19 +6,19 @@ <h1 class="title">Tracker Styles</h1> <div class="block styles-box"> <progress-tracker> - <step-item v-for="n in [1, 2, 3, 4, 5]" :is-complete="n < 3" :is-active="n === 3"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 4, 5]" :key="index" :is-complete="item < 3" :is-active="item === 3"></step-item> </progress-tracker> <progress-tracker> - <step-item v-for="n in [1, 2, 3, 4, 5]" :marker="n + ''"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 4, 5]" :key="index" :marker="item + ''"></step-item> </progress-tracker> <progress-tracker> - <step-item v-for="n in [1, 2, 3, 'A', 'B']" :marker="n + ''"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 'A', 'B']" :key="index" :marker="item + ''"></step-item> </progress-tracker> <progress-tracker border> - <step-item v-for="n in [1, 2, 3, 'A', 'B']" :marker="n + ''"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 'A', 'B']" :key="index" :marker="item + ''"></step-item> </progress-tracker> <progress-tracker spaced> - <step-item v-for="n in [1, 2, 3, 'A', 'B']" :marker="n + ''"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 'A', 'B']" :key="key" :marker="item + ''"></step-item> </progress-tracker> </div> </article> @@ -39,31 +39,31 @@ <h1 class="title">Tracker Alignments</h1> <div class="block"> <progress-tracker> - <step-item v-for="n in [1, 2, 3, 4, 5]"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 4, 5]" :key="index"></step-item> </progress-tracker> <progress-tracker alignment="center"> - <step-item v-for="n in [1, 2, 3, 4, 5]"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 4, 5]" :key="index"></step-item> </progress-tracker> <progress-tracker alignment="right"> - <step-item v-for="n in [1, 2, 3, 4, 5]"></step-item> + <step-item v-for="(item, index) in [1, 2, 3, 4, 5]" :key="index"></step-item> </progress-tracker> <progress-tracker word> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> <progress-tracker word word-align="center"> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> <progress-tracker word text-align="right"> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> <progress-tracker text> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> <progress-tracker text alignment="center"> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> <progress-tracker text alignment="right"> - <step-item v-for="item in stepItems" :marker="item.marker" :title="item.title"></step-item> + <step-item v-for="item in stepItems" :key="item.title" :marker="item.marker" :title="item.title"></step-item> </progress-tracker> </div> </article> diff --git a/client/views/components/Quill.vue b/client/views/components/Quill.vue index 9a2ab40c..481c070e 100644 --- a/client/views/components/Quill.vue +++ b/client/views/components/Quill.vue @@ -1,19 +1,17 @@ <template> <div class="box"> - <h3 class="title"> - Your powerful, rich text editor. - <a href="http://quilljs.com">http://quilljs.com</a> - </h3> + <h1 class="title">Your powerful, rich text editor.</h1> + <h2 class="subtitle"><a href="http://quilljs.com">http://quilljs.com</a></h2> <quill :options="{ theme: 'snow' }"> <h2>One Ring to Rule Them All</h2> <p><a href="http://en.wikipedia.org/wiki/One_Ring">http://en.wikipedia.org/wiki/One_Ring</a></p> <p><br/></p> <p>Three Rings for the <em>Elven-kings</em> under the sky,</p> - <p>Seven for the <u>Dwarf-lords</u><span> in halls of stone,</p> + <p>Seven for the <u>Dwarf-lords</u><span> in halls of stone</span>,</p> <p>Nine for <u>Mortal Men</u>, doomed to die,</p> <p>One for the <u>Dark Lord</u> on his dark throne.</p> <p><br/></p> - <p>In the Land of Mordor where the Shadows lie.</span></p> + <p>In the Land of Mordor where the Shadows lie.</p> <p>One Ring to <strong>rule</strong> them all, One Ring to <strong>find</strong> them,</p> <p>One Ring to <strong>bring</strong> them all and in the darkness <strong>bind</strong> them.</p> <p>In the Land of Mordor where the Shadows lie.</p> diff --git a/client/views/components/Switch.vue b/client/views/components/Switch.vue index ae67049d..1fad156c 100644 --- a/client/views/components/Switch.vue +++ b/client/views/components/Switch.vue @@ -52,10 +52,10 @@ <h1 class="title">Dynamics</h1> <div class="block"> <p> - <vb-switch type="success" size="large" :checked="value" @change="updateValue"></vb-switch> + <vb-switch type="success" size="large" :checked="value" v-model="value"></vb-switch> </p> <p> - {{ value }} + {{ switchStat }} </p> </div> </article> @@ -80,9 +80,9 @@ export default { } }, - methods: { - updateValue (val) { - this.value = val + computed: { + switchStat () { + return this.value ? 'On' : 'Off' } } } diff --git a/client/views/components/Tabs.vue b/client/views/components/Tabs.vue index 5504fb2d..47abe064 100644 --- a/client/views/components/Tabs.vue +++ b/client/views/components/Tabs.vue @@ -111,7 +111,7 @@ <tab-pane label="Documents">Document Tab</tab-pane> </tabs> <tabs layout="right" animation="fade" :only-fade="false"> - <tab-pane v-for="item in items" :label="item.label" :icon="'fa fa-' + item.icon"> + <tab-pane v-for="item in items" :key="item.label" :label="item.label" :icon="'fa fa-' + item.icon"> {{ item.desc }} </tab-pane> </tabs> diff --git a/client/views/components/modals/CardModal.vue b/client/views/components/modals/CardModal.vue index 96eebf6c..4c982130 100644 --- a/client/views/components/modals/CardModal.vue +++ b/client/views/components/modals/CardModal.vue @@ -1,6 +1,7 @@ <template> - <card-modal :visible="true" :title="title" transition="zoom"> + <card-modal :visible="visible" @close="close" :title="title" transition="zoom"> <div class="content has-text-centered"><img :src="src" height="120" alt="Vue Admin"></div> + <a @click="open(url)">Vue Admin on GitHub</a> </card-modal> </template> @@ -13,13 +14,25 @@ export default { }, props: { - title: String + visible: Boolean, + title: String, + url: String }, data () { return { src: require('assets/logo.svg') } + }, + + methods: { + open (url) { + window.open(url) + }, + + close () { + this.$emit('close') + } } } </script> diff --git a/client/views/components/modals/ImageModal.vue b/client/views/components/modals/ImageModal.vue index 839fca4b..ec276cc5 100644 --- a/client/views/components/modals/ImageModal.vue +++ b/client/views/components/modals/ImageModal.vue @@ -1,5 +1,5 @@ <template> - <image-modal :visible="true" transition="roll"> + <image-modal :visible="visible" @close="close" transition="roll"> <p class="image is-4by3"><img src="http://placehold.it/1280x960"></p> </image-modal> </template> @@ -10,6 +10,17 @@ import { ImageModal } from 'vue-bulma-modal' export default { components: { ImageModal + }, + + props: { + visible: Boolean + }, + + methods: { + close () { + this.$emit('close') + } } + } </script> diff --git a/client/views/components/modals/Modal.vue b/client/views/components/modals/Modal.vue index 6f53d5fc..0f880eec 100644 --- a/client/views/components/modals/Modal.vue +++ b/client/views/components/modals/Modal.vue @@ -1,5 +1,5 @@ <template> - <modal :visible="true"> + <modal :visible="visible" @close="close"> <div class="box"> <article class="media"> <div class="media-left"> @@ -40,6 +40,16 @@ import { Modal } from 'vue-bulma-modal' export default { components: { Modal + }, + + props: { + visible: Boolean + }, + + methods: { + close () { + this.$emit('close') + } } } </script> diff --git a/client/views/tables/Handsontable.vue b/client/views/tables/Handsontable.vue deleted file mode 100644 index 1610ae98..00000000 --- a/client/views/tables/Handsontable.vue +++ /dev/null @@ -1,33 +0,0 @@ -<template> - <div> - <div class="tile is-ancestor"> - <div class="tile is-parent"> - <article class="tile is-child box"> - <h1>Data grid</h1> - <handsontable :data="rawData" :settings="{ }"></handsontable> - </article> - </div> - </div> - </div> -</template> - -<script> -import Handsontable from 'vue-handsontable' - -export default { - components: { - Handsontable - }, - - data () { - return { - rawData: [ - ['', 'Kia', 'Nissan', 'Toyota', 'Honda'], - ['2008', 10, 11, 12, 13], - ['2009', 20, 11, 14, 13], - ['2010', 30, 15, 12, 13] - ] - } - } -} -</script> diff --git a/client/views/ui/Form.vue b/client/views/ui/Form.vue index f4b54d8a..4b3ac00e 100644 --- a/client/views/ui/Form.vue +++ b/client/views/ui/Form.vue @@ -1,7 +1,7 @@ <template> <div> <div class="tile is-ancestor"> - <div class="tile is-parent is-2"> + <div class="tile is-parent is-4"> <article class="tile is-child box"> <h1 class="title">Controls</h1> <div class="block"> @@ -12,13 +12,17 @@ <label class="label">Username</label> <p class="control has-icon has-icon-right"> <input class="input is-success" type="text" placeholder="Text input" value="bulma"> - <i class="fa fa-check"></i> + <span class="icon is-small"> + <i class="fa fa-check"></i> + </span> <span class="help is-success">This username is available</span> </p> <label class="label">Email</label> <p class="control has-icon has-icon-right"> <input class="input is-danger" type="text" placeholder="Email input" value="hello@"> - <i class="fa fa-warning"></i> + <span class="icon is-small"> + <i class="fa fa-warning"></i> + </span> <span class="help is-danger">This email is invalid</span> </p> <label class="label">Subject</label> @@ -58,7 +62,7 @@ </article> </div> - <div class="tile is-parent is-2"> + <div class="tile is-parent is-5 is-vertical"> <article class="tile is-child box"> <h1 class="title">Colors</h1> <div class="block"> @@ -79,9 +83,6 @@ </p> </div> </article> - </div> - - <div class="tile is-parent is-2"> <article class="tile is-child box"> <h1 class="title">Sizes</h1> <div class="block"> @@ -101,7 +102,7 @@ </article> </div> - <div class="tile is-parent is-3"> + <div class="tile is-parent"> <article class="tile is-child box"> <h1 class="title">States</h1> <div class="block"> @@ -144,18 +145,26 @@ </div> </article> </div> + </div> + + <div class="tile is-ancestor"> <div class="tile is-parent is-3"> <article class="tile is-child box"> - <h1 class="title">With Font Awesome icons</h1> + <h1 class="title">With Icon</h1> + <h2 class="subtitle"><a href="http://fontawesome.io/">Font Awesome Icons</a></h2> <div class="block"> <p class="control has-icon"> <input class="input" type="email" placeholder="Email"> - <i class="fa fa-envelope"></i> + <span class="icon is-small"> + <i class="fa fa-envelope"></i> + </span> </p> <p class="control has-icon"> <input class="input" type="password" placeholder="Password"> - <i class="fa fa-lock"></i> + <span class="icon is-small"> + <i class="fa fa-lock"></i> + </span> </p> <p class="control"> <button class="button is-success"> @@ -165,82 +174,124 @@ </div> </article> </div> - </div> - <div class="tile is-ancestor"> <div class="tile is-parent"> <article class="tile is-child box"> - <h1 class="title">Addons</h1> + <h1 class="title">Cleave.js</h1> + <h2 class="subtitle">Format your <input/> content when you are typing</h2> <div class="columns"> <div class="column"> - <p class="control has-addons"> - <input class="input" type="text" placeholder="Find a repository"> - <a class="button is-info">Search</a> - </p> - </div> - <div class="column"> - <p class="control has-addons"> - <span class="select"> - <select> - <option>$</option> - <option>£</option> - <option>€</option> - </select> - </span> - <input class="input is-expanded" type="text" placeholder="Amount of money"> - <a class="button is-success"> - Transfer - </a> - </p> - </div> - <div class="column"> - <p class="control has-addons has-addons-centered"> - <span class="select"> - <select> - <option>$</option> - <option>£</option> - <option>€</option> - </select> - </span> - <input class="input" type="text" placeholder="Amount of money"> - <a class="button is-success"> - Transfer - </a> - </p> + <div class="control"> + <label class="label">Credit card number</label> + <cleave class="input" placeholder="Enter credit card number" :options="{ creditCard: true }"></cleave> + </div> + <div class="control"> + <label class="label">Phone number</label> + <cleave class="input" type="tel" placeholder="Enter phone number" :options="{ phone: true, phoneRegionCode: 'cn' }"></cleave> + </div> + <div class="control"> + <label class="label">Numeral</label> + <cleave class="input" placeholder="Enter numeral" :options="{ numeral: true, numeralThousandsGroupStyle: 'thousand' }"></cleave> + </div> </div> <div class="column"> - <p class="control has-addons has-addons-right"> - <span class="select"> - <select> - <option>$</option> - <option>£</option> - <option>€</option> - </select> - </span> - <input class="input" type="text" placeholder="Amount of money"> - <a class="button is-success"> - Transfer - </a> - </p> + <div class="control"> + <label class="label">Date</label> + <cleave class="input" placeholder="YYYY/MM/DD" :value="'20160901'" :options="{ date: true, datePattern: ['Y', 'm', 'd'] }"></cleave> + </div> + <div class="control"> + <cleave class="input" placeholder="MM/YY" :options="{ date: true, datePattern: ['m', 'y'] }"></cleave> + </div> + <div class="control"> + <label class="label">Raw Value</label> + <cleave + class="input" + v-model="demo.value" + @rawValueChanged="onRawValueChanged" + placeholder="Enter phone number" + :options="{ blocks: [0, 3, 3, 4], numericOnly: true, delimiters: ['(', ') ', '-'], maxLength: 14 }"> + </cleave> + </div> </div> <div class="column"> - <div class="control is-grouped"> - <p class="control is-expanded"> - <input class="input" type="text" placeholder="Find a repository"> - </p> - <p class="control"> - <a class="button is-info"> - Search - </a> - </p> + <div class="control"> + <label class="label">Custom options</label> + <cleave class="input" placeholder="Blocks: [4, 3, 3, 4]" :options="{ blocks: [4, 3, 3, 4], uppercase: true }"></cleave> + </div> + <div class="control"> + <cleave class="input" placeholder="Delimiter: '·'" :options="{ delimiter: '·', blocks: [3, 3, 3, 3], uppercase: true }"></cleave> + </div> + <div class="control"> + <cleave class="input" :options="{ prefix: 'PREFIX', delimiter: '-', blocks: [6, 4, 4, 4], uppercase: true }"></cleave> </div> </div> </div> </article> </div> + </div> <div class="tile is-ancestor"> + <div class="tile is-parent"> + <article class="tile is-child box"> + <h1 class="title">Addons</h1> + <div class="block"> + <p class="control has-addons"> + <input class="input" type="text" placeholder="Find a repository"> + <a class="button is-info">Search</a> + </p> + <p class="control has-addons"> + <span class="select"> + <select> + <option>$</option> + <option>£</option> + <option>€</option> + </select> + </span> + <input class="input is-expanded" type="text" placeholder="Expanded"> + <a class="button is-success"> + Transfer + </a> + </p> + <p class="control has-addons has-addons-centered"> + <span class="select"> + <select> + <option>$</option> + <option>£</option> + <option>€</option> + </select> + </span> + <input class="input" type="text" placeholder="Centered"> + <a class="button is-success"> + Transfer + </a> + </p> + <p class="control has-addons has-addons-right"> + <span class="select"> + <select> + <option>$</option> + <option>£</option> + <option>€</option> + </select> + </span> + <input class="input" type="text" placeholder="Pull right"> + <a class="button is-success"> + Transfer + </a> + </p> + <div class="control is-grouped"> + <p class="control is-expanded"> + <input class="input" type="text" placeholder="Expanded and Grouped"> + </p> + <p class="control"> + <a class="button is-info"> + Search + </a> + </p> + </div> + </div> + </article> + </div> <div class="tile is-parent"> <article class="tile is-child box"> <h1 class="title">Horizontal form</h1> @@ -291,45 +342,6 @@ </article> </div> </div> - - <div class="tile is-ancestor"> - <div class="tile is-parent"> - <article class="tile is-child box"> - <h1 class="title">Cleave.js - Format your <input/> content when you are typing</h1> - <div class="block"> - <div class="control"> - <label class="label">Credit card number formatting</label> - <cleave class="input" placeholder="Enter credit card number" :options="{ creditCard: true }"></cleave> - </div> - <div class="control"> - <label class="label">Phone number formatting</label> - <cleave class="input" type="tel" placeholder="Enter phone number" :options="{ phone: true, phoneRegionCode: 'cn' }"></cleave> - </div> - <div class="control"> - <label class="label">Date formatting</label> - <cleave class="input" placeholder="YYYY/MM/DD" :value="'20160901'" :options="{ date: true, datePattern: ['Y', 'm', 'd'] }"></cleave> - </div> - <div class="control"> - <cleave class="input" placeholder="MM/YY" :options="{ date: true, datePattern: ['m', 'y'] }"></cleave> - </div> - <div class="control"> - <label class="label">Numeral formatting</label> - <cleave class="input" placeholder="Enter numeral" :options="{ numeral: true, numeralThousandsGroupStyle: 'thousand' }"></cleave> - </div> - <div class="control"> - <label class="label">Custom options</label> - <cleave class="input" placeholder="Blocks: [4, 3, 3, 4]" :options="{ blocks: [4, 3, 3, 4], uppercase: true }"></cleave> - </div> - <div class="control"> - <cleave class="input" placeholder="Delimiter: '·'" :options="{ delimiter: '·', blocks: [3, 3, 3, 3], uppercase: true }"></cleave> - </div> - <div class="control"> - <cleave class="input" :options="{ prefix: 'PREFIX', delimiter: '-', blocks: [6, 4, 4, 4], uppercase: true }"></cleave> - </div> - </div> - </article> - </div> - </div> </div> </template> @@ -340,11 +352,37 @@ import 'cleave.js/dist/addons/cleave-phone.cn' export default { components: { Cleave + }, + + data () { + return { + demo: { + value: '', + rawValue: '' + } + } + }, + + methods: { + onRawValueChanged (newVal) { + this.demo.rawValue = newVal + } + }, + + watch: { + 'demo.value' (newVal, oldVal) { + console.log('value: new ->', newVal, 'old ->', oldVal) + }, + 'demo.rawValue' (newVal, oldVal) { + console.log('rawValue: new ->', newVal, 'old ->', oldVal) + } } } </script> -<style scoped> +<style lang="scss" scoped> +@import '~bulma/sass/utilities/mixins'; + .button { margin: 5px 0 0; } @@ -352,4 +390,16 @@ export default { .control .button { margin: inherit; } + +.control.has-addons { + @include mobile() { + input { + width: 100%; + } + + input.is-expanded { + flex-shrink: 1; + } + } +} </style> diff --git a/config/dev.env.js b/config/dev.env.js index efead7c8..9423fde3 100755 --- a/config/dev.env.js +++ b/config/dev.env.js @@ -1,5 +1,7 @@ -var merge = require('webpack-merge') -var prodEnv = require('./prod.env') +'use strict' + +const merge = require('webpack-merge') +const prodEnv = require('./prod.env') module.exports = merge(prodEnv, { NODE_ENV: '"development"' diff --git a/config/index.js b/config/index.js index a013c938..c43ec8c6 100755 --- a/config/index.js +++ b/config/index.js @@ -1,5 +1,7 @@ +'use strict' + // see http://vuejs-templates.github.io/webpack for documentation. -var path = require('path') +const path = require('path') module.exports = { build: { @@ -18,10 +20,16 @@ module.exports = { }, dev: { env: require('./dev.env'), - port: 8080, + port: process.env.DEV_PORT || 8080, + autoOpenBrowser: true, assetsSubDirectory: 'assets', assetsPublicPath: '/', - proxyTable: {}, + proxyTable: { + '/MODApis': { + target: 'http://dev.markitondemand.com', + changeOrigin: true + } + }, // CSS Sourcemaps off by default because relative paths are "buggy" // with this option, according to the CSS-Loader README // (https://github.com/webpack/css-loader#sourcemaps) diff --git a/config/prod.env.js b/config/prod.env.js index 773d263d..a11f3a8e 100755 --- a/config/prod.env.js +++ b/config/prod.env.js @@ -1,3 +1,5 @@ +'use strict' + module.exports = { NODE_ENV: '"production"' } diff --git a/config/test.env.js b/config/test.env.js index 89f90deb..e2ca1709 100755 --- a/config/test.env.js +++ b/config/test.env.js @@ -1,5 +1,7 @@ -var merge = require('webpack-merge') -var devEnv = require('./dev.env') +'use strict' + +const merge = require('webpack-merge') +const devEnv = require('./dev.env') module.exports = merge(devEnv, { NODE_ENV: '"testing"' diff --git a/doc/components.md b/doc/components.md index c3e2b6e8..35864932 100644 --- a/doc/components.md +++ b/doc/components.md @@ -1,22 +1,22 @@ -# Components +j Components [Vue Bulma UI Components](https://github.com/vue-bulma) | Component | Demo | Source | | --- | --- | --- | -| BackToTop | http://vue-admin.fundon.me/#!/components/backtotop | https://github.com/vue-bulma/jump | -| Breadcrumb | http://vue-admin.fundon.me/#!/components/breadcrumb | https://github.com/vue-bulma/breadcrumb | -| Cleave | http://vue-admin.fundon.me/#!/ui/form | https://github.com/vue-bulma/cleave | -| Collapse | http://vue-admin.fundon.me/#!/components/collapse | https://github.com/vue-bulma/collapse | -| Datepicker | http://vue-admin.fundon.me/#!/components/datepicker | https://github.com/vue-bulma/datepicker | -| Message | http://vue-admin.fundon.me/#!/components/message | https://github.com/vue-bulma/message | -| Modal | http://vue-admin.fundon.me/#!/components/modal | https://github.com/vue-bulma/modal | -| Notification | http://vue-admin.fundon.me/#!/components/notification | https://github.com/vue-bulma/notification | -| ProgressBar | http://vue-admin.fundon.me/#!/components/progress | https://github.com/vue-bulma/progress-bar | -| ProgressTracker | http://vue-admin.fundon.me/#!/components/progress | https://github.com/vue-bulma/progress-tracker | -| Rating | http://vue-admin.fundon.me/#!/components/rating | https://github.com/vue-bulma/rating | -| Slider | http://vue-admin.fundon.me/#!/components/slider | https://github.com/vue-bulma/slider | -| Switch | http://vue-admin.fundon.me/#!/components/switch | https://github.com/vue-bulma/switch | -| Tabs | http://vue-admin.fundon.me/#!/components/tabs | https://github.com/vue-bulma/tabs | -| Tooltip | http://vue-admin.fundon.me/#!/components/tooltip | https://github.com/vue-bulma/tooltip | +| BackToTop | http://admin.vuebulma.com/#!/components/backtotop | https://github.com/vue-bulma/jump | +| Breadcrumb | http://admin.vuebulma.com/#!/components/breadcrumb | https://github.com/vue-bulma/breadcrumb | +| Cleave | http://admin.vuebulma.com/#!/ui/form | https://github.com/vue-bulma/cleave | +| Collapse | http://admin.vuebulma.com/#!/components/collapse | https://github.com/vue-bulma/collapse | +| Datepicker | http://admin.vuebulma.com/#!/components/datepicker | https://github.com/vue-bulma/datepicker | +| Message | http://admin.vuebulma.com/#!/components/message | https://github.com/vue-bulma/message | +| Modal | http://admin.vuebulma.com/#!/components/modal | https://github.com/vue-bulma/modal | +| Notification | http://admin.vuebulma.com/#!/components/notification | https://github.com/vue-bulma/notification | +| ProgressBar | http://admin.vuebulma.com/#!/components/progress | https://github.com/vue-bulma/progress-bar | +| ProgressTracker | http://admin.vuebulma.com/#!/components/progress | https://github.com/vue-bulma/progress-tracker | +| Rating | http://admin.vuebulma.com/#!/components/rating | https://github.com/vue-bulma/rating | +| Slider | http://admin.vuebulma.com/#!/components/slider | https://github.com/vue-bulma/slider | +| Switch | http://admin.vuebulma.com/#!/components/switch | https://github.com/vue-bulma/switch | +| Tabs | http://admin.vuebulma.com/#!/components/tabs | https://github.com/vue-bulma/tabs | +| Tooltip | http://admin.vuebulma.com/#!/components/tooltip | https://github.com/vue-bulma/tooltip | | ... | ... | diff --git a/doc/dependencies.md b/doc/dependencies.md index 4ce63340..930f4a5e 100644 --- a/doc/dependencies.md +++ b/doc/dependencies.md @@ -11,7 +11,7 @@ ## UI Components | Component | Library | -| --- | --- | --- | +| --- | --- | | Animations & Transitions | [animate.css][] & [animejs][] | | BackToTop | [jump.js][] | | Cleave | [cleave.js][] | @@ -20,7 +20,6 @@ | Fonts | [font-awesome][], [Material Design icons][] | | Progress | [progress-tracker][] | | Rating | [Starability.css][] | -| Tables | [Handsontable][] | | Tooltip | [hint.css][] | | ... | ... | @@ -57,8 +56,6 @@ [peity]: https://github.com/benpickles/peity [plotly.js]: https://github.com/plotly/plotly.js -[Handsontable]: https://handsontable.com - [font-awesome]: http://fontawesome.io [Material Design icons]: http://google.github.io/material-design-icons/ diff --git a/electronIndex.js b/electronIndex.js new file mode 100644 index 00000000..142c178e --- /dev/null +++ b/electronIndex.js @@ -0,0 +1,63 @@ +'use strict' + +const { app, BrowserWindow } = require('electron') + +// Keep a global reference of the window object, if you don't, the window will +// be closed automatically when the JavaScript object is garbage collected. +let mainWindow + +const isDev = process.env.NODE_ENV === 'development' + +function createWindow () { + // Create the browser window. + mainWindow = new BrowserWindow({ + width: 800, + height: 600 + }) + + // and load the index.html of the app. + mainWindow.loadURL(`file://${__dirname}/dist/index.html`) + + // Open the DevTools. + if (isDev) { + mainWindow.webContents.openDevTools() + + const installExtension = require('electron-devtools-installer') + installExtension.default(installExtension.VUEJS_DEVTOOLS) + .then(name => console.log(`Added Extension: ${name}`)) + .catch(err => console.log('An error occurred: ', err)) + } + + // Emitted when the window is closed. + mainWindow.on('closed', () => { + // Dereference the window object, usually you would store windows + // in an array if your app supports multi windows, this is the time + // when you should delete the corresponding element. + mainWindow = null + }) +} + +// This method will be called when Electron has finished +// initialization and is ready to create browser windows. +// Some APIs can only be used after this event occurs. +app.on('ready', createWindow) + +// Quit when all windows are closed. +app.on('window-all-closed', () => { + // On OS X it is common for applications and their menu bar + // to stay active until the user quits explicitly with Cmd + Q + if (process.platform !== 'darwin') { + app.quit() + } +}) + +app.on('activate', () => { + // On OS X it's common to re-create a window in the app when the + // dock icon is clicked and there are no other windows open. + if (mainWindow === null) { + createWindow() + } +}) + +// In this file you can include the rest of your app's specific main process +// code. You can also put them in separate files and require them here. diff --git a/package.json b/package.json index 28e409b3..fb613c2f 100644 --- a/package.json +++ b/package.json @@ -1,8 +1,9 @@ { "name": "vue-admin", - "version": "0.1.6", + "version": "0.1.12", "description": "Vue Admin Panel Framework", - "repository": "fundon/vue-admin", + "repository": "vue-bulma/vue-admin", + "homepage": "https://admin.vuebulma.com", "license": "MIT", "author": { "name": "Fangdun Cai", @@ -18,95 +19,103 @@ "vue" ], "engines": { - "node": ">= 4", - "npm": ">= 3" + "node": ">=4", + "npm": ">=3" }, "scripts": { - "clean": "rm -rf dist", "build": "cross-env NODE_ENV=production node build/build.js", + "clean": "rm -rf dist", "dev": "cross-env NODE_ENV=development node build/dev-server.js", + "electron": "cross-env NODE_ELECTRON=true npm run build && electron electronIndex.js", "gh": "npm run build && gh-pages -d dist", "lint": "eslint --ext .js .vue client/*", + "lint:fix": "eslint --fix --ext .js .vue electron.js client/* build/* config/*", "test": "echo lol" }, "dependencies": { + "@websanova/vue-auth": "^2.8.2-beta", "animate.css": "3.5.2", - "animejs": "1.1.1", - "bulma": "0.2.3", - "font-awesome": "4.6.3", - "mdi": "1.7.22", - "plotly": "1.0.6", - "plotly.js": "1.18.0", - "vue": "2.0.3", - "vue-bulma-breadcrumb": "github:vue-bulma/breadcrumb", - "vue-bulma-chartist": "github:vue-bulma/chartist", - "vue-bulma-chartjs": "github:vue-bulma/chartjs", - "vue-bulma-collapse": "github:vue-bulma/collapse", - "vue-bulma-datepicker": "github:vue-bulma/datepicker", - "vue-bulma-emoji": "github:vue-bulma/emoji", - "vue-bulma-expanding": "github:vue-bulma/expanding", - "vue-bulma-jump": "github:vue-bulma/jump", - "vue-bulma-message": "1.1.0", - "vue-bulma-modal": "github:vue-bulma/modal", - "vue-bulma-notification": "1.1.0", - "vue-bulma-progress-bar": "github:vue-bulma/progress-bar", - "vue-bulma-progress-tracker": "github:vue-bulma/progress-tracker", - "vue-bulma-quill": "github:vue-bulma/quill", - "vue-bulma-rating": "github:vue-bulma/rating", - "vue-bulma-slider": "github:vue-bulma/slider", - "vue-bulma-switch": "github:vue-bulma/switch", - "vue-bulma-tabs": "github:vue-bulma/tabs", - "vue-bulma-tooltip": "github:vue-bulma/tooltip", - "vue-canvas-gauges": "github:vue-bulma/canvas-gauges", - "vue-cleave": "1.1.0", - "vue-handsontable": "github:vue-bulma/handsontable", - "vue-nprogress": "0.1.0", - "vue-peity": "0.4.0", - "vue-resource": "1.0.3", - "vue-router": "2.0.1", - "vuex": "2.0.0", - "vuex-router-sync": "3.0.0", + "animejs": "^2.0.1", + "axios": "^0.15.3", + "bulma": "^0.3.2", + "font-awesome": "4.7.0", + "mdi": "^1.8.36", + "plotly.js": "^1.24.2", + "vue": "^2.2.2", + "vue-axios": "^2.0.1", + "vue-bulma-brace": "^0.1.0", + "vue-bulma-breadcrumb": "^1.0.1", + "vue-bulma-card": "^1.0.2", + "vue-bulma-chartist": "^1.1.0", + "vue-bulma-chartjs": "^1.0.4", + "vue-bulma-collapse": "1.0.3", + "vue-bulma-datepicker": "^1.3.0", + "vue-bulma-emoji": "^0.0.2", + "vue-bulma-expanding": "^0.0.1", + "vue-bulma-jump": "^0.0.2", + "vue-bulma-message": "^1.1.1", + "vue-bulma-modal": "1.0.1", + "vue-bulma-notification": "^1.1.1", + "vue-bulma-progress-bar": "^1.0.2", + "vue-bulma-progress-tracker": "0.0.4", + "vue-bulma-quill": "0.0.1", + "vue-bulma-rating": "^1.0.1", + "vue-bulma-slider": "^1.0.2", + "vue-bulma-switch": "^1.0.4", + "vue-bulma-tabs": "^1.1.2", + "vue-bulma-tooltip": "^1.0.3", + "vue-cleave": "1.1.1", + "vue-lory": "0.0.4", + "vue-nprogress": "0.1.5", + "vue-peity": "0.5.0", + "vue-router": "^2.3.0", + "vuex": "^2.2.1", + "vuex-router-sync": "^4.1.2", "wysiwyg.css": "0.0.2" }, "devDependencies": { - "autoprefixer": "^6.5.1", - "babel-core": "^6.17.0", - "babel-eslint": "^7.0.0", - "babel-loader": "^6.2.4", + "autoprefixer": "^6.7.7", + "babel-core": "^6.21.0", + "babel-eslint": "^7.1.1", + "babel-loader": "^6.4.0", "babel-plugin-transform-export-extensions": "^6.8.0", "babel-preset-es2015": "^6.14.0", "babel-preset-stage-2": "^6.17.0", "connect-history-api-fallback": "^1.3.0", "cross-env": "^3.1.3", - "css-loader": "^0.25.0", - "eslint": "^3.8.0", - "eslint-config-standard": "^6.1.0", - "eslint-loader": "^1.6.0", - "eslint-plugin-html": "^1.5.3", - "eslint-plugin-promise": "^3.0.0", - "eslint-plugin-standard": "^2.0.1", + "css-loader": "^0.27.1", + "electron-devtools-installer": "^2.0.1", + "eslint": "^3.17.1", + "eslint-config-standard": "^7.0.1", + "eslint-friendly-formatter": "^2.0.7", + "eslint-loader": "^1.6.1", + "eslint-plugin-html": "^2.0.1", + "eslint-plugin-promise": "^3.5.0", + "eslint-plugin-standard": "^2.1.1", "eventsource-polyfill": "^0.9.6", - "express": "^4.14.0", + "express": "^4.15.2", "extract-text-webpack-plugin": "^2.0.0-beta.4", - "file-loader": "^0.9.0", - "html-webpack-plugin": "^2.22.0", - "http-proxy-middleware": "^0.17.1", - "node-sass": "^3.10.0", - "ora": "^0.3.0", - "postcss-loader": "^1.0.0", - "progress-bar-webpack-plugin": "^1.9.0", - "sass-loader": "^4.0.2", - "serve-favicon": "^2.3.0", + "file-loader": "^0.10.1", + "html-webpack-plugin": "^2.25.0", + "http-proxy-middleware": "^0.17.4", + "imports-loader": "^0.7.0", + "node-sass": "^4.1.1", + "opn": "^4.0.2", + "ora": "^1.1.0", + "postcss-loader": "^1.3.3", + "progress-bar-webpack-plugin": "^1.9.1", + "sass-loader": "^6.0.3", + "serve-favicon": "^2.4.1", "style-loader": "^0.13.1", "stylus": "^0.54.5", - "stylus-loader": "^2.3.1", + "stylus-loader": "^3.0.1", "url-loader": "^0.5.7", "vue-html-loader": "^1.2.3", - "vue-loader": "^9.7.0", - "vue-template-compiler": "^2.0.3", - "webpack": "^2.1.0-beta.25", - "webpack-dev-middleware": "^1.8.4", - "webpack-hot-middleware": "^2.13.0", - "webpack-merge": "^0.14.1" + "vue-loader": "^11.1.4", + "vue-template-compiler": "^2.2.2", + "webpack": "^2.2.1", + "webpack-dev-middleware": "^1.9.0", + "webpack-hot-middleware": "^2.14.0", + "webpack-merge": "^4.0.0" } } diff --git a/screenshots/preview.jpg b/screenshots/preview.jpg new file mode 100644 index 00000000..31aad6a5 Binary files /dev/null and b/screenshots/preview.jpg differ diff --git a/scss/rtl.scss b/scss/rtl.scss new file mode 100644 index 00000000..ee16ab3a --- /dev/null +++ b/scss/rtl.scss @@ -0,0 +1,71 @@ +// +// RTL Support +// + +*[dir="rtl"] { + $left: right; + + html { + direction: rtl; + } + + .app-sidebar { + right: 0; + left: auto; + } + + .app-main, .footer { + margin-left: 0; + margin-right: 180px; + } + + .control.has-addons .button:last-child, .control.has-addons .input:last-child, .control.has-addons .select:last-child { + border-radius: 3px 0 0 3px; + } + + .notifications { + left: 0; + right: auto; + } + + .notifications .delete { + left: 0.5em; + right: auto; + } + + .media .media-content { + text-align: right; + } + + .level-left .level-item:not(:last-child), + .level-right .level-item:not(:last-child) { + margin-left: 0.75em; + } + + .progress-step:not(:last-child)::after { + left: -14px; + right: auto; + } + + .progress-tracker--center .progress-step::after { + left: -50%; + } + + table td, table th { + text-align: right; + vertical-align: middle; + } + + @media screen and (max-width: 768px) { + .app-main { + margin: 3px; + } + } + + @media screen and (min-width: 769px) { + .column.is-offset-3, .column.is-offset-3-tablet { + margin-right: 26%; + } + } + +} diff --git a/yarn.lock b/yarn.lock new file mode 100644 index 00000000..54565bcb --- /dev/null +++ b/yarn.lock @@ -0,0 +1,7858 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"3d-view-controls@^2.2.0": + version "2.2.0" + resolved "https://registry.yarnpkg.com/3d-view-controls/-/3d-view-controls-2.2.0.tgz#44aec9c448c27be34b3dd511ff9202ab6150dca5" + dependencies: + "3d-view" "^2.0.0" + mouse-change "^1.1.1" + mouse-event-offset "^3.0.2" + mouse-wheel "^1.0.2" + right-now "^1.0.0" + +"3d-view@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/3d-view/-/3d-view-2.0.0.tgz#831ae942d7508c50801e3e06fafe1e8c574e17be" + dependencies: + matrix-camera-controller "^2.1.1" + orbit-camera-controller "^4.0.0" + turntable-camera-controller "^3.0.0" + +"7zip@0.0.6": + version "0.0.6" + resolved "https://registry.yarnpkg.com/7zip/-/7zip-0.0.6.tgz#9cafb171af82329490353b4816f03347aa150a30" + +"@plotly/d3-sankey@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@plotly/d3-sankey/-/d3-sankey-0.5.0.tgz#b22faea742e58251335ee5d9fba248772607800f" + dependencies: + d3-array "1" + d3-collection "1" + d3-interpolate "1" + +"@websanova/vue-auth@^2.8.2-beta": + version "2.8.2-beta" + resolved "https://registry.yarnpkg.com/@websanova/vue-auth/-/vue-auth-2.8.2-beta.tgz#4edcd80a366ad6c550d28a2b7f39a274e763ba4e" + +"JSV@>= 4.0.x": + version "4.0.2" + resolved "https://registry.yarnpkg.com/JSV/-/JSV-4.0.2.tgz#d077f6825571f82132f9dffaed587b4029feff57" + +a-big-triangle@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/a-big-triangle/-/a-big-triangle-1.0.3.tgz#eefd30b02a8f525e8b1f72bb6bb1b0c16751c794" + dependencies: + gl-buffer "^2.1.1" + gl-vao "^1.2.0" + weak-map "^1.0.5" + +abbrev@1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.0.tgz#d0554c2256636e2f56e7c2e5ad183f859428d81f" + +accepts@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.3.tgz#c3ca7434938648c3e0d9c1e328dd68b622c284ca" + dependencies: + mime-types "~2.1.11" + negotiator "0.6.1" + +acorn-dynamic-import@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/acorn-dynamic-import/-/acorn-dynamic-import-2.0.2.tgz#c752bd210bef679501b6c6cb7fc84f8f47158cc4" + dependencies: + acorn "^4.0.3" + +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@^1.0.3: + version "1.2.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-1.2.2.tgz#c8ce27de0acc76d896d2b1fad3df588d9e82f014" + +acorn@^3.0.4: + version "3.3.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-3.3.0.tgz#45e37fb39e8da3f25baee3ff5369e2bb5f22017a" + +acorn@^4.0.0, acorn@^4.0.3: + version "4.0.13" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.13.tgz#105495ae5361d697bd195c825192e1ad7f253787" + +acorn@^5.0.0, acorn@^5.0.1: + version "5.0.3" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-5.0.3.tgz#c460df08491463f028ccb82eab3730bf01087b3d" + +add-line-numbers@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/add-line-numbers/-/add-line-numbers-1.0.1.tgz#48dbbdea47dbd234deafeac6c93cea6f70b4b7e3" + dependencies: + pad-left "^1.0.2" + +affine-hull@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/affine-hull/-/affine-hull-1.0.0.tgz#763ff1d38d063ceb7e272f17ee4d7bbcaf905c5d" + dependencies: + robust-orientation "^1.1.3" + +ajv-keywords@^1.0.0, ajv-keywords@^1.1.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-1.5.1.tgz#314dd0a4b3368fad3dfcdc54ede6171b886daf3c" + +ajv@^4.11.2, ajv@^4.7.0, ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + 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" + +almost-equal@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/almost-equal/-/almost-equal-1.1.0.tgz#f851c631138757994276aa2efbe8dfa3066cccdd" + +alpha-complex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/alpha-complex/-/alpha-complex-1.0.0.tgz#90865870d6b0542ae73c0c131d4ef989669b72d2" + dependencies: + circumradius "^1.0.0" + delaunay-triangulate "^1.1.6" + +alpha-shape@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/alpha-shape/-/alpha-shape-1.0.0.tgz#c83109923ecfda667d2163fe4f26fe24726f64a9" + dependencies: + alpha-complex "^1.0.0" + simplicial-complex-boundary "^1.0.0" + +alphanum-sort@^1.0.1, alphanum-sort@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3" + +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + +animate.css@3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/animate.css/-/animate.css-3.5.2.tgz#91e668dc069a808e5e499514867b97aae0166c36" + +animejs@1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/animejs/-/animejs-1.1.3.tgz#685ea5e837981d98bdab2ab168aa8530955e970d" + +animejs@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/animejs/-/animejs-2.0.2.tgz#6c80ee92253d9429b58b4c0be597772cd7c82d7a" + dependencies: + google-closure-compiler-js "^20170124.0.0" + +ansi-escapes@^1.1.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" + +ansi-html@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + +ansi-styles@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-1.0.0.tgz#cb102df1c56f5123eab8b67cd7b98027a0279178" + +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" + +aproba@^1.0.3: + version "1.1.1" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.1.1.tgz#95d3600f07710aa0e9298c726ad5ecf2eacbabab" + +are-we-there-yet@~1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz#bb5dca382bb94f05e15194373d16fd3ba1ca110d" + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +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" + +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.3" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.3.tgz#a274ed85ac08849b6bd7847c4580745dc51adfb1" + +array-differ@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" + +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + +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, array-uniq@^1.0.2: + 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" + +arraytools@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/arraytools/-/arraytools-1.1.2.tgz#410f8e8137b67475e53c1918572e78d893f11fbf" + +arrify@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + +asn1.js@^4.0.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-4.9.1.tgz#48ba240b45a9280e94748990ba597d216617fd40" + dependencies: + bn.js "^4.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +asn1@~0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + +assert@^1.1.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/assert/-/assert-1.4.1.tgz#99912d591836b5a6f5b345c0f07eefc08fc65d91" + dependencies: + util "0.10.3" + +ast-types@0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/ast-types/-/ast-types-0.9.6.tgz#102c9e9e9005d3e7e3829bf0c4fa24ee862ee9b9" + +async-each@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-each/-/async-each-1.0.1.tgz#19d386a1d9edc6e7c1c85d388aedbcc56d33602d" + +async-foreach@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" + +async@^2.1.2, async@^2.1.5: + version "2.4.1" + resolved "https://registry.yarnpkg.com/async/-/async-2.4.1.tgz#62a56b279c98a11d0987096a01cc3eeb8eb7bbd7" + dependencies: + lodash "^4.14.0" + +async@~0.2.6: + version "0.2.10" + resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + +atob-lite@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-1.0.0.tgz#b88dca6006922b962094f7556826bab31c4a296b" + +autoprefixer@^6.3.1, autoprefixer@^6.4.1, autoprefixer@^6.7.7: + version "6.7.7" + resolved "https://registry.yarnpkg.com/autoprefixer/-/autoprefixer-6.7.7.tgz#1dbd1c835658e35ce3f9984099db00585c782014" + dependencies: + browserslist "^1.7.6" + caniuse-db "^1.0.30000634" + normalize-range "^0.1.2" + num2fraction "^1.2.2" + postcss "^5.2.16" + postcss-value-parser "^3.2.3" + +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.6.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" + +axios@^0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.15.3.tgz#2c9d638b2e191a08ea1d6cc988eadd6ba5bdc053" + dependencies: + follow-redirects "1.0.0" + +babel-code-frame@^6.11.0, babel-code-frame@^6.16.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.21.0, babel-core@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-core/-/babel-core-6.24.1.tgz#8c428564dce1e1f41fb337ec34f4c3b022b5ad83" + dependencies: + babel-code-frame "^6.22.0" + babel-generator "^6.24.1" + babel-helpers "^6.24.1" + babel-messages "^6.23.0" + babel-register "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + 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.2.3" + resolved "https://registry.yarnpkg.com/babel-eslint/-/babel-eslint-7.2.3.tgz#b2fe2d80126470f5c19442dc757253a897710827" + dependencies: + babel-code-frame "^6.22.0" + babel-traverse "^6.23.1" + babel-types "^6.23.0" + babylon "^6.17.0" + +babel-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-generator/-/babel-generator-6.24.1.tgz#e715f486c58ded25649d888944d52aa07c5d9497" + dependencies: + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + 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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz#14c19e5f142d7b47f19a52431e52b1ccbc40a330" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-builder-binary-assignment-operator-visitor@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz#cce4517ada356f4220bcae8a02c2b346f9a56664" + dependencies: + babel-helper-explode-assignable-expression "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-call-delegate@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz#ece6aacddc76e41c3461f88bfc575bd0daa2df8d" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-define-map@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-define-map/-/babel-helper-define-map-6.24.1.tgz#7a9747f258d8947d32d515f6aa1c7bd02204a080" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + lodash "^4.2.0" + +babel-helper-explode-assignable-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz#f25b82cf7dc10433c55f70592d5746400ac22caa" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-explode-class@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz#7dc2a3910dee007056e1e31d640ced3d54eaa9eb" + dependencies: + babel-helper-bindify-decorators "^6.24.1" + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-function-name@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz#d3475b8c03ed98242a25b48351ab18399d3580a9" + dependencies: + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-get-function-arity@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz#8f7782aa93407c41d3aa50908f89b031b1b6853d" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-hoist-variables@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz#1ecb27689c9d25513eadbc9914a73f5408be7a76" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-optimise-call-expression@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz#f7a13427ba9f73f8f4fa993c54a97882d1244257" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-helper-regex@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-regex/-/babel-helper-regex-6.24.1.tgz#d36e22fab1008d79d88648e32116868128456ce8" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + lodash "^4.2.0" + +babel-helper-remap-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz#5ec581827ad723fecdd381f1c928390676e4551b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helper-replace-supers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz#bf6dbfe43938d17369a213ca8a8bf74b6a90ab1a" + dependencies: + babel-helper-optimise-call-expression "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-helpers@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-helpers/-/babel-helpers-6.24.1.tgz#3471de9caec388e5c850e597e58a26ddf37602b2" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-loader@^6.4.0: + version "6.4.1" + resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-6.4.1.tgz#0b34112d5b0748a8dcdbf51acf6f9bd42d50b8ca" + dependencies: + find-cache-dir "^0.1.1" + loader-utils "^0.2.16" + mkdirp "^0.5.1" + object-assign "^4.0.1" + +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-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-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-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-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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz#f058900145fd3e9907a6ddf28da59f215258a5db" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-generators "^6.5.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-async-to-generator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz#6536e378aff6cb1d5517ac0e40eb3e9fc8d08761" + dependencies: + babel-helper-remap-async-to-generator "^6.24.1" + babel-plugin-syntax-async-functions "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-class-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz#6a79763ea61d33d36f37b611aa9def81a81b46ac" + dependencies: + babel-helper-function-name "^6.24.1" + babel-plugin-syntax-class-properties "^6.8.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-decorators@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz#788013d8f8c6b5222bdf7b344390dfd77569e24d" + dependencies: + babel-helper-explode-class "^6.24.1" + babel-plugin-syntax-decorators "^6.13.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" + +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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.24.1.tgz#76c295dc3a4741b1665adfd3167215dcff32a576" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + lodash "^4.2.0" + +babel-plugin-transform-es2015-classes@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz#5a4c58a50c9c9461e564b4b2a3bfabc97a2584db" + dependencies: + babel-helper-define-map "^6.24.1" + babel-helper-function-name "^6.24.1" + babel-helper-optimise-call-expression "^6.24.1" + babel-helper-replace-supers "^6.24.1" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-computed-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz#6fe2a8d16895d5634f4cd999b6d3480a308159b3" + dependencies: + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-destructuring@^6.22.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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz#73eb3d310ca969e3ef9ec91c53741a6f1576423e" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-for-of@^6.22.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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz#834c89853bc36b1af0f3a4c5dbaa94fd8eacaa8b" + dependencies: + babel-helper-function-name "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz#3b3e54017239842d6d19c3011c4bd2f00a00d154" + dependencies: + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-modules-commonjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.24.1.tgz#d3e310b40ef664a36622200097c6d440298f2bfe" + dependencies: + babel-plugin-transform-strict-mode "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-modules-systemjs@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz#ff89a142b9119a906195f5f106ecf305d9407d23" + dependencies: + babel-helper-hoist-variables "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-modules-umd@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz#ac997e6285cd18ed6176adb607d602344ad38468" + dependencies: + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + +babel-plugin-transform-es2015-object-super@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz#24cef69ae21cb83a7f8603dad021f572eb278f8d" + dependencies: + babel-helper-replace-supers "^6.24.1" + babel-runtime "^6.22.0" + +babel-plugin-transform-es2015-parameters@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz#57ac351ab49caf14a97cd13b09f66fdf0a625f2b" + dependencies: + babel-helper-call-delegate "^6.24.1" + babel-helper-get-function-arity "^6.24.1" + babel-runtime "^6.22.0" + babel-template "^6.24.1" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + +babel-plugin-transform-es2015-shorthand-properties@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz#24f875d6721c87661bbd99a4622e51f14de38aa0" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz#00c1cdb1aca71112cdf0cf6126c2ed6b457ccdbc" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +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: + 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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz#d38b12f42ea7323f729387f18a7c5ae1faeb35e9" + dependencies: + babel-helper-regex "^6.24.1" + babel-runtime "^6.22.0" + regexpu-core "^2.0.0" + +babel-plugin-transform-exponentiation-operator@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz#2ab0c9c7f3098fa48907772bb813fe41e8de3a0e" + dependencies: + babel-helper-builder-binary-assignment-operator-visitor "^6.24.1" + babel-plugin-syntax-exponentiation-operator "^6.8.0" + babel-runtime "^6.22.0" + +babel-plugin-transform-export-extensions@^6.8.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-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.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.24.1.tgz#b8da305ad43c3c99b4848e4fe4037b770d23c418" + dependencies: + regenerator-transform "0.9.11" + +babel-plugin-transform-strict-mode@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz#d5faf7aa578a65bbe591cf5edae04a0c67020758" + dependencies: + babel-runtime "^6.22.0" + babel-types "^6.24.1" + +babel-preset-es2015@^6.14.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz#d44050d6bc2c9feea702aaf38d727a0210538939" + 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.24.1" + babel-plugin-transform-es2015-classes "^6.24.1" + babel-plugin-transform-es2015-computed-properties "^6.24.1" + babel-plugin-transform-es2015-destructuring "^6.22.0" + babel-plugin-transform-es2015-duplicate-keys "^6.24.1" + babel-plugin-transform-es2015-for-of "^6.22.0" + babel-plugin-transform-es2015-function-name "^6.24.1" + babel-plugin-transform-es2015-literals "^6.22.0" + babel-plugin-transform-es2015-modules-amd "^6.24.1" + babel-plugin-transform-es2015-modules-commonjs "^6.24.1" + babel-plugin-transform-es2015-modules-systemjs "^6.24.1" + babel-plugin-transform-es2015-modules-umd "^6.24.1" + babel-plugin-transform-es2015-object-super "^6.24.1" + babel-plugin-transform-es2015-parameters "^6.24.1" + babel-plugin-transform-es2015-shorthand-properties "^6.24.1" + babel-plugin-transform-es2015-spread "^6.22.0" + babel-plugin-transform-es2015-sticky-regex "^6.24.1" + 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.24.1" + babel-plugin-transform-regenerator "^6.24.1" + +babel-preset-stage-2@^6.17.0: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz#d9e2960fb3d71187f0e64eec62bc07767219bdc1" + dependencies: + babel-plugin-syntax-dynamic-import "^6.18.0" + babel-plugin-transform-class-properties "^6.24.1" + babel-plugin-transform-decorators "^6.24.1" + babel-preset-stage-3 "^6.24.1" + +babel-preset-stage-3@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz#836ada0a9e7a7fa37cb138fb9326f87934a48395" + dependencies: + babel-plugin-syntax-trailing-function-commas "^6.22.0" + babel-plugin-transform-async-generator-functions "^6.24.1" + babel-plugin-transform-async-to-generator "^6.24.1" + babel-plugin-transform-exponentiation-operator "^6.24.1" + babel-plugin-transform-object-rest-spread "^6.22.0" + +babel-register@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-register/-/babel-register-6.24.1.tgz#7e10e13a2f71065bdfad5a1787ba45bca6ded75f" + dependencies: + babel-core "^6.24.1" + 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.23.0" + resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.23.0.tgz#0a9489f144de70efb3ce4300accdb329e2fc543b" + dependencies: + core-js "^2.4.0" + regenerator-runtime "^0.10.0" + +babel-template@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-template/-/babel-template-6.24.1.tgz#04ae514f1f93b3a2537f2a0f60a5a45fb8308333" + dependencies: + babel-runtime "^6.22.0" + babel-traverse "^6.24.1" + babel-types "^6.24.1" + babylon "^6.11.0" + lodash "^4.2.0" + +babel-traverse@^6.23.1, babel-traverse@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-traverse/-/babel-traverse-6.24.1.tgz#ab36673fd356f9a0948659e7b338d5feadb31695" + dependencies: + babel-code-frame "^6.22.0" + babel-messages "^6.23.0" + babel-runtime "^6.22.0" + babel-types "^6.24.1" + babylon "^6.15.0" + debug "^2.2.0" + globals "^9.0.0" + invariant "^2.2.0" + lodash "^4.2.0" + +babel-types@^6.19.0, babel-types@^6.23.0, babel-types@^6.24.1: + version "6.24.1" + resolved "https://registry.yarnpkg.com/babel-types/-/babel-types-6.24.1.tgz#a136879dc15b3606bda0d90c1fc74304c2ff0975" + 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.15.0, babylon@^6.17.0: + version "6.17.2" + resolved "https://registry.yarnpkg.com/babylon/-/babylon-6.17.2.tgz#201d25ef5f892c41bae49488b08db0dd476e9f5c" + +balanced-match@^0.4.1, balanced-match@^0.4.2: + version "0.4.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" + +barycentric@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/barycentric/-/barycentric-1.0.1.tgz#f1562bb891b26f4fec463a82eeda3657800ec688" + dependencies: + robust-linear-solve "^1.0.0" + +base64-js@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-0.0.2.tgz#024f0f72afa25b75f9c0ee73cd4f55ec1bed9784" + +base64-js@^1.0.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" + +bcrypt-pbkdf@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz#63bc5dcb61331b92bc05fd528953c33462a06f8d" + dependencies: + tweetnacl "^0.14.3" + +beeper@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.1.tgz#e6d5ea8c5dad001304a70b22638447f69cb2f809" + +big-rat@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/big-rat/-/big-rat-1.0.4.tgz#768d093bb57930dd18ed575c7fca27dc5391adea" + dependencies: + bit-twiddle "^1.0.2" + bn.js "^4.11.6" + double-bits "^1.1.1" + +big.js@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-3.1.3.tgz#4cada2193652eb3ca9ec8e55c9015669c9806978" + +binary-extensions@^1.0.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.8.0.tgz#48ec8d16df4377eae5fa5884682480af4d95c774" + +binary-search-bounds@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/binary-search-bounds/-/binary-search-bounds-1.0.0.tgz#323ca317e3f2a40f4244c7255f5384a5b207bb69" + +binary-search-bounds@^2.0.0, binary-search-bounds@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/binary-search-bounds/-/binary-search-bounds-2.0.3.tgz#5ff8616d6dd2ca5388bc85b2d6266e2b9da502dc" + +bit-twiddle@^1.0.0, bit-twiddle@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bit-twiddle/-/bit-twiddle-1.0.2.tgz#0c6c1fabe2b23d17173d9a61b7b7093eb9e1769e" + +bit-twiddle@~0.0.1: + version "0.0.2" + resolved "https://registry.yarnpkg.com/bit-twiddle/-/bit-twiddle-0.0.2.tgz#c2eaebb952a3b94acc140497e1cdcd2f1a33f58e" + +bl@^0.9.4: + version "0.9.5" + resolved "https://registry.yarnpkg.com/bl/-/bl-0.9.5.tgz#c06b797af085ea00bc527afc8efcf11de2232054" + dependencies: + readable-stream "~1.0.26" + +bl@^1.0.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/bl/-/bl-1.2.1.tgz#cac328f7bee45730d404b692203fcb590e172d5e" + dependencies: + readable-stream "^2.0.5" + +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" + +bluebird@^3.0.5, bluebird@^3.1.1, bluebird@^3.4.7: + version "3.5.0" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.0.tgz#791420d7f551eea2897453a8a77653f96606d67c" + +bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.11.6, bn.js@^4.4.0: + version "4.11.6" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.6.tgz#53344adb14617a13f6e8dd2ce28905d1c0ba3215" + +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" + +bops@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/bops/-/bops-0.0.6.tgz#082d1d55fa01e60dbdc2ebc2dba37f659554cf3a" + dependencies: + base64-js "0.0.2" + to-utf8 "0.0.1" + +boundary-cells@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/boundary-cells/-/boundary-cells-2.0.1.tgz#e905a8d1419cf47cb36be3dbf525db5e24de0042" + dependencies: + tape "^4.0.0" + +box-intersect@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/box-intersect/-/box-intersect-1.0.1.tgz#b728a59e3f1a3c73c224933c2660b927aa137902" + dependencies: + bit-twiddle "^1.0.2" + typedarray-pool "^1.1.0" + +brace-expansion@^1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" + dependencies: + balanced-match "^0.4.1" + concat-map "0.0.1" + +brace@^0.10.0: + version "0.10.0" + resolved "https://registry.yarnpkg.com/brace/-/brace-0.10.0.tgz#edef4eb9b0928ba1ee5f717ffc157749a6dd5d76" + dependencies: + w3c-blob "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" + +brfs@^1.4.0: + version "1.4.3" + resolved "https://registry.yarnpkg.com/brfs/-/brfs-1.4.3.tgz#db675d6f5e923e6df087fca5859c9090aaed3216" + dependencies: + quote-stream "^1.0.1" + resolve "^1.1.5" + static-module "^1.1.0" + through2 "^2.0.0" + +brorand@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + +browserify-aes@^1.0.0, browserify-aes@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/browserify-aes/-/browserify-aes-1.0.6.tgz#5e7725dbdef1fd5930d4ebab48567ce451c48a0a" + dependencies: + buffer-xor "^1.0.2" + cipher-base "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + inherits "^2.0.1" + +browserify-cipher@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-cipher/-/browserify-cipher-1.0.0.tgz#9988244874bf5ed4e28da95666dcd66ac8fc363a" + dependencies: + browserify-aes "^1.0.4" + browserify-des "^1.0.0" + evp_bytestokey "^1.0.0" + +browserify-des@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browserify-des/-/browserify-des-1.0.0.tgz#daa277717470922ed2fe18594118a175439721dd" + dependencies: + cipher-base "^1.0.1" + des.js "^1.0.0" + inherits "^2.0.1" + +browserify-rsa@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/browserify-rsa/-/browserify-rsa-4.0.1.tgz#21e0abfaf6f2029cf2fafb133567a701d4135524" + dependencies: + bn.js "^4.1.0" + randombytes "^2.0.1" + +browserify-sign@^4.0.0: + version "4.0.4" + resolved "https://registry.yarnpkg.com/browserify-sign/-/browserify-sign-4.0.4.tgz#aa4eb68e5d7b658baa6bf6a57e630cbd7a93d298" + dependencies: + bn.js "^4.1.1" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.2" + elliptic "^6.0.0" + inherits "^2.0.1" + parse-asn1 "^5.0.0" + +browserify-zlib@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/browserify-zlib/-/browserify-zlib-0.1.4.tgz#bb35f8a519f600e0fa6b8485241c979d0141fb2d" + dependencies: + pako "~0.2.0" + +browserslist@^1.3.6, browserslist@^1.5.2, browserslist@^1.7.6: + 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" + +buffer-equal@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal/-/buffer-equal-0.0.1.tgz#91bc74b11ea405bc916bc6aa908faafa5b4aac4b" + +buffer-shims@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/buffer-shims/-/buffer-shims-1.0.0.tgz#9978ce317388c649ad8793028c3477ef044a8b51" + +buffer-xor@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/buffer-xor/-/buffer-xor-1.0.3.tgz#26e61ed1422fb70dd42e6e36729ed51d855fe8d9" + +buffer@^4.3.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.1.tgz#6d1bb601b07a4efced97094132093027c95bc298" + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + +builtin-modules@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" + +builtin-status-codes@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz#85982878e21b98e1c66425e03d0174788f569ee8" + +bulma@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/bulma/-/bulma-0.3.2.tgz#2c1fa6adaf2a31f47a142c11856f2db27bc638c9" + +call-matcher@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/call-matcher/-/call-matcher-1.0.1.tgz#5134d077984f712a54dad3cbf62de28dce416ca8" + dependencies: + core-js "^2.0.0" + deep-equal "^1.0.0" + espurify "^1.6.0" + estraverse "^4.0.0" + +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" + +camel-case@3.0.x, camel-case@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camel-case/-/camel-case-3.0.0.tgz#ca3c3688a4e9cf3a4cda777dc4dcbc713249cf73" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.1" + +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase@^1.0.2: + version "1.2.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-1.2.1.tgz#9bb5304d2e0b56698b2c758b08a3eaa9daa58a39" + +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + +camelcase@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" + +caniuse-api@^1.5.2: + version "1.6.1" + resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" + dependencies: + browserslist "^1.3.6" + caniuse-db "^1.0.30000529" + lodash.memoize "^4.1.2" + lodash.uniq "^4.5.0" + +caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639: + version "1.0.30000676" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000676.tgz#82ea578237637c8ff34a28acaade373b624c4ea8" + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + +cdt2d@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cdt2d/-/cdt2d-1.0.0.tgz#4f212434bcd67bdb3d68b8fef4acdc2c54415141" + dependencies: + binary-search-bounds "^2.0.3" + robust-in-sphere "^1.1.3" + robust-orientation "^1.1.3" + +cell-orientation@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cell-orientation/-/cell-orientation-1.0.1.tgz#b504ad96a66ad286d9edd985a2253d03b80d2850" + +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" + +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" + +chalk@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-0.4.0.tgz#5199a3ddcd0c1efe23bc08c1b027b06176e0c64f" + dependencies: + ansi-styles "~1.0.0" + has-color "~0.1.0" + strip-ansi "~0.1.0" + +change-case@3.0.x: + version "3.0.1" + resolved "https://registry.yarnpkg.com/change-case/-/change-case-3.0.1.tgz#ee5f5ad0415ad1ad9e8072cf49cd4cfa7660a554" + dependencies: + camel-case "^3.0.0" + constant-case "^2.0.0" + dot-case "^2.1.0" + header-case "^1.0.0" + is-lower-case "^1.1.0" + is-upper-case "^1.1.0" + lower-case "^1.1.1" + lower-case-first "^1.0.0" + no-case "^2.2.0" + param-case "^2.1.0" + pascal-case "^2.0.0" + path-case "^2.1.0" + sentence-case "^2.1.0" + snake-case "^2.1.0" + swap-case "^1.1.0" + title-case "^2.1.0" + upper-case "^1.1.1" + upper-case-first "^1.1.0" + +chart.js@2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/chart.js/-/chart.js-2.5.0.tgz#fe6e751a893769f56e72bee5ad91207e1c592957" + dependencies: + chartjs-color "^2.0.0" + moment "^2.10.6" + +chartist@^0.10.1: + version "0.10.1" + resolved "https://registry.yarnpkg.com/chartist/-/chartist-0.10.1.tgz#3dd513d531dfca6b78e777fe0500d9c7e6406931" + +chartjs-color-string@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/chartjs-color-string/-/chartjs-color-string-0.4.0.tgz#57748d4530ae28d8db0a5492182ba06dfdf2f468" + dependencies: + color-name "^1.0.0" + +chartjs-color@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/chartjs-color/-/chartjs-color-2.1.0.tgz#9c39ac830ccd98996ae80c9f11086ff12c98a756" + dependencies: + chartjs-color-string "^0.4.0" + color-convert "^0.5.3" + +chokidar@^1.4.3, chokidar@^1.5.1: + version "1.7.0" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-1.7.0.tgz#798e689778151c8076b4b360e5edd28cda2bb468" + 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" + +cipher-base@^1.0.0, cipher-base@^1.0.1, cipher-base@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cipher-base/-/cipher-base-1.0.3.tgz#eeabf194419ce900da3018c207d212f2a6df0a07" + dependencies: + inherits "^2.0.1" + +circular-json@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/circular-json/-/circular-json-0.3.1.tgz#be8b36aefccde8b3ca7aa2d6afc07a37242c0d2d" + +circumcenter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/circumcenter/-/circumcenter-1.0.0.tgz#20d7aa13b17fbac52f52da4f54c6ac8b906ee529" + dependencies: + dup "^1.0.0" + robust-linear-solve "^1.0.0" + +circumradius@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/circumradius/-/circumradius-1.0.0.tgz#706c447e3e55cd1ed3d11bd133e37c252cc305b5" + dependencies: + circumcenter "^1.0.0" + +clamp@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/clamp/-/clamp-1.0.1.tgz#66a0e64011816e37196828fdc8c8c147312c8634" + +clap@^1.0.9: + version "1.1.3" + resolved "https://registry.yarnpkg.com/clap/-/clap-1.1.3.tgz#b3bd36e93dd4cbfb395a3c26896352445265c05b" + dependencies: + chalk "^1.1.3" + +classnames@2.2.5: + version "2.2.5" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.2.5.tgz#fb3801d453467649ef3603c7d61a02bd129bde6d" + +clean-css@3.4.x: + version "3.4.26" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.26.tgz#55323b344ff3bcee684a2eac81c93df8fa73deeb" + dependencies: + commander "2.8.x" + source-map "0.4.x" + +clean-css@4.1.x: + version "4.1.3" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-4.1.3.tgz#07cfe8980edb20d455ddc23aadcf1e04c6e509ce" + dependencies: + source-map "0.5.x" + +clean-pslg@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/clean-pslg/-/clean-pslg-1.1.2.tgz#bd35c7460b7e8ab5a9f761a5ed51796aa3c86c11" + dependencies: + big-rat "^1.0.3" + box-intersect "^1.0.1" + nextafter "^1.0.0" + rat-vec "^1.1.1" + robust-segment-intersect "^1.0.1" + union-find "^1.0.2" + uniq "^1.0.1" + +cleave.js@0.7.14: + version "0.7.14" + resolved "https://registry.yarnpkg.com/cleave.js/-/cleave.js-0.7.14.tgz#d95761a0cd6214e2ecb0be670a759f3e4df5a79d" + +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-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + dependencies: + restore-cursor "^2.0.0" + +cli-spinners@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-spinners/-/cli-spinners-1.0.0.tgz#ef987ed3d48391ac3dab9180b406a742180d6e6a" + +cli-width@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.1.0.tgz#b234ca209b29ef66fc518d9b98d5847b00edf00a" + +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-deep@^0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-0.2.4.tgz#4e73dd09e9fb971cc38670c5dced9c1896481cc6" + dependencies: + for-own "^0.1.3" + is-plain-object "^2.0.1" + kind-of "^3.0.2" + lazy-cache "^1.0.3" + shallow-clone "^0.1.2" + +clone-stats@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" + +clone@^1.0.0, clone@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" + +clone@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.0.0.tgz#df65d3ca142e4a4a47db33da3468d088a16fc76e" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + +coa@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/coa/-/coa-1.0.2.tgz#2ba9fec3b4aa43d7a49d7e6c3561e92061b6bcec" + dependencies: + q "^1.1.2" + +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" + +color-convert@^0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-0.5.3.tgz#bdb6c69ce660fadffe0b0007cc447e1b9f7282bd" + +color-convert@^1.3.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.0.tgz#1accf97dd739b983bf994d56fec8f95853641b7a" + dependencies: + color-name "^1.1.1" + +color-id@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/color-id/-/color-id-1.0.3.tgz#f681e64010f4fd466009b99a295e248e400c1187" + dependencies: + clamp "^1.0.1" + +color-name@^1.0.0, color-name@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.2.tgz#5c8ab72b64bd2215d617ae9559ebb148475cf98d" + +color-parse@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/color-parse/-/color-parse-1.3.2.tgz#a141edf1c97bb4aa4ca00c45500ac911b2f13bff" + dependencies: + color-name "^1.0.0" + is-plain-obj "^1.1.0" + +color-rgba@^1.0.4: + version "1.1.0" + resolved "https://registry.yarnpkg.com/color-rgba/-/color-rgba-1.1.0.tgz#2ca9cf97f000a4e967698176a0e3335c7e75215c" + dependencies: + clamp "^1.0.1" + color-parse "^1.2.0" + color-space "^1.14.6" + +color-space@^1.14.6: + version "1.14.7" + resolved "https://registry.yarnpkg.com/color-space/-/color-space-1.14.7.tgz#b7f5a31779427bb25f9927a69410d80c2eaaa71b" + dependencies: + husl "^5.0.0" + mumath "^3.0.0" + +color-string@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-0.3.0.tgz#27d46fb67025c5c2fa25993bfbf579e47841b991" + dependencies: + color-name "^1.0.0" + +color@^0.11.0: + version "0.11.4" + resolved "https://registry.yarnpkg.com/color/-/color-0.11.4.tgz#6d7b5c74fb65e841cd48792ad1ed5e07b904d764" + dependencies: + clone "^1.0.2" + color-convert "^1.3.0" + color-string "^0.3.0" + +colormap@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/colormap/-/colormap-2.2.0.tgz#914fe04320558a1fc0582d01e0f47bc913d8c8a5" + dependencies: + arraytools "^1.1.2" + clone "^1.0.2" + +colormin@^1.0.5: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colormin/-/colormin-1.1.2.tgz#ea2f7420a72b96881a38aae59ec124a6f7298133" + dependencies: + color "^0.11.0" + css-color-names "0.0.4" + has "^1.0.1" + +colors@~0.6.0-1: + version "0.6.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-0.6.2.tgz#2423fe6678ac0c5dae8852e5d0e5be08c997abcc" + +colors@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.1.2.tgz#168a4701756b6a7f51a12ce0c97bfa28c084ed63" + +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, commander@2.9.x, commander@^2.9.0, 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" + +commander@2.8.x: + version "2.8.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" + dependencies: + graceful-readlink ">= 1.0.0" + +commander@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.1.0.tgz#d121bbae860d9992a3d517ba96f56588e47c6781" + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + +compare-angle@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/compare-angle/-/compare-angle-1.0.1.tgz#a4eb63416ea3c747fc6bd6c8b63668b4de4fa129" + dependencies: + robust-orientation "^1.0.2" + robust-product "^1.0.0" + robust-sum "^1.0.0" + signum "^0.0.0" + two-sum "^1.0.0" + +compare-cell@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/compare-cell/-/compare-cell-1.0.0.tgz#a9eb708f6e0e41aef7aa566b130f1968dc9e1aaa" + +compare-oriented-cell@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/compare-oriented-cell/-/compare-oriented-cell-1.0.1.tgz#6a149feef9dfc4f8fc62358e51dd42effbbdc39e" + dependencies: + cell-orientation "^1.0.1" + compare-cell "^1.0.0" + +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.5.2, concat-stream@~1.6.0: + 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" + +concat-stream@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.2.1.tgz#f35100b6c46378bfba8b6b80f9f0d0ccdf13dc60" + dependencies: + bops "0.0.6" + +config-chain@~1.1.5: + version "1.1.11" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.11.tgz#aba09747dfbe4c3e70e766a6e41586e1859fc6f2" + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +connect-history-api-fallback@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.3.0.tgz#e51d17f8f0ef0db90a64fdb47de3051556e9f169" + +console-browserify@^1.1.0: + 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" + +consolidate@^0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/consolidate/-/consolidate-0.14.5.tgz#5a25047bc76f73072667c8cb52c989888f494c63" + dependencies: + bluebird "^3.1.1" + +constant-case@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/constant-case/-/constant-case-2.0.0.tgz#4175764d389d3fa9c8ecd29186ed6005243b6a46" + dependencies: + snake-case "^2.1.0" + upper-case "^1.1.1" + +constants-browserify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/constants-browserify/-/constants-browserify-1.0.0.tgz#c20b96d8c617748aaf1c16021760cd27fcb8cb75" + +content-disposition@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.2.tgz#0cf68bb9ddf5f2be7961c3a85178cb85dba78cb4" + +content-type@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.2.tgz#b7d113aee7a8dd27bd21133c4dc2529df1721eed" + +convert-source-map@^1.1.0, convert-source-map@^1.1.1: + version "1.5.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.5.0.tgz#9acd70851c6d5dfdd93d9282e5edf94a03ff46b5" + +convex-hull@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/convex-hull/-/convex-hull-1.0.3.tgz#20a3aa6ce87f4adea2ff7d17971c9fc1c67e1fff" + dependencies: + affine-hull "^1.0.0" + incremental-convex-hull "^1.0.1" + monotone-convex-hull-2d "^1.0.1" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + +cookie@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.3.1.tgz#e7e0a1f9ef43b4c8ba925c5c5a96e806d16873bb" + +core-js@^2.0.0, core-js@^2.4.0: + 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" + +cosmiconfig@^2.1.0, cosmiconfig@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-2.1.3.tgz#952771eb0dddc1cb3fa2f6fbe51a522e93b3ee0a" + dependencies: + is-directory "^0.3.1" + js-yaml "^3.4.3" + minimist "^1.2.0" + object-assign "^4.1.0" + os-homedir "^1.0.1" + parse-json "^2.2.0" + require-from-string "^1.1.0" + +country-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/country-regex/-/country-regex-1.1.0.tgz#51c333dcdf12927b7e5eeb9c10ac8112a6120896" + +create-ecdh@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.0.tgz#888c723596cdf7612f6498233eebd7a35301737d" + dependencies: + bn.js "^4.1.0" + elliptic "^6.0.0" + +create-hash@^1.1.0, create-hash@^1.1.1, create-hash@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.3.tgz#606042ac8b9262750f483caddab0f5819172d8fd" + dependencies: + cipher-base "^1.0.1" + inherits "^2.0.1" + ripemd160 "^2.0.0" + sha.js "^2.4.0" + +create-hmac@^1.1.0, create-hmac@^1.1.2, create-hmac@^1.1.4: + version "1.1.6" + resolved "https://registry.yarnpkg.com/create-hmac/-/create-hmac-1.1.6.tgz#acb9e221a4e17bdb076e90657c42b93e3726cf06" + dependencies: + cipher-base "^1.0.3" + create-hash "^1.1.0" + inherits "^2.0.1" + ripemd160 "^2.0.0" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +cross-env@^3.1.3: + version "3.2.4" + resolved "https://registry.yarnpkg.com/cross-env/-/cross-env-3.2.4.tgz#9e0585f277864ed421ce756f81a980ff0d698aba" + dependencies: + cross-spawn "^5.1.0" + is-windows "^1.0.0" + +cross-spawn@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" + dependencies: + lru-cache "^4.0.1" + which "^1.2.9" + +cross-spawn@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-unzip@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/cross-unzip/-/cross-unzip-0.0.2.tgz#5183bc47a09559befcf98cc4657964999359372f" + +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" + +crypto-browserify@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/crypto-browserify/-/crypto-browserify-3.11.0.tgz#3652a0906ab9b2a7e0c3ce66a408e957a2485522" + dependencies: + browserify-cipher "^1.0.0" + browserify-sign "^4.0.0" + create-ecdh "^4.0.0" + create-hash "^1.1.0" + create-hmac "^1.1.0" + diffie-hellman "^5.0.0" + inherits "^2.0.1" + pbkdf2 "^3.0.3" + public-encrypt "^4.0.0" + randombytes "^2.0.0" + +css-color-names@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" + +css-loader@^0.27.1: + version "0.27.3" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-0.27.3.tgz#69ab6f47b69bfb1b5acee61bac2aab14302ff0dc" + dependencies: + babel-code-frame "^6.11.0" + css-selector-tokenizer "^0.7.0" + cssnano ">=2.6.1 <4" + loader-utils "^1.0.2" + lodash.camelcase "^4.3.0" + object-assign "^4.0.1" + postcss "^5.0.6" + postcss-modules-extract-imports "^1.0.0" + postcss-modules-local-by-default "^1.0.1" + postcss-modules-scope "^1.0.0" + postcss-modules-values "^1.1.0" + source-list-map "^0.1.7" + +css-parse@1.7.x: + version "1.7.0" + resolved "https://registry.yarnpkg.com/css-parse/-/css-parse-1.7.0.tgz#321f6cf73782a6ff751111390fc05e2c657d8c9b" + +css-select@^1.1.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-selector-tokenizer@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz#e6988474ae8c953477bf5e7efecfceccd9cf4c86" + dependencies: + cssesc "^0.1.0" + fastparse "^1.1.1" + regexpu-core "^1.0.0" + +css-what@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/css-what/-/css-what-2.1.0.tgz#9467d032c38cfaefb9f2d79501253062f87fa1bd" + +csscolorparser@^1.0.2, csscolorparser@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/csscolorparser/-/csscolorparser-1.0.3.tgz#b34f391eea4da8f3e98231e2ccd8df9c041f171b" + +cssesc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-0.1.0.tgz#c814903e45623371a0477b40109aaafbeeaddbb4" + +"cssnano@>=2.6.1 <4": + version "3.10.0" + resolved "https://registry.yarnpkg.com/cssnano/-/cssnano-3.10.0.tgz#4f38f6cea2b9b17fa01490f23f1dc68ea65c1c38" + dependencies: + autoprefixer "^6.3.1" + decamelize "^1.1.2" + defined "^1.0.0" + has "^1.0.1" + object-assign "^4.0.1" + postcss "^5.0.14" + postcss-calc "^5.2.0" + postcss-colormin "^2.1.8" + postcss-convert-values "^2.3.4" + postcss-discard-comments "^2.0.4" + postcss-discard-duplicates "^2.0.1" + postcss-discard-empty "^2.0.1" + postcss-discard-overridden "^0.1.1" + postcss-discard-unused "^2.2.1" + postcss-filter-plugins "^2.0.0" + postcss-merge-idents "^2.1.5" + postcss-merge-longhand "^2.0.1" + postcss-merge-rules "^2.0.3" + postcss-minify-font-values "^1.0.2" + postcss-minify-gradients "^1.0.1" + postcss-minify-params "^1.0.4" + postcss-minify-selectors "^2.0.4" + postcss-normalize-charset "^1.1.0" + postcss-normalize-url "^3.0.7" + postcss-ordered-values "^2.1.0" + postcss-reduce-idents "^2.2.2" + postcss-reduce-initial "^1.0.0" + postcss-reduce-transforms "^1.0.3" + postcss-svgo "^2.1.1" + postcss-unique-selectors "^2.0.2" + postcss-value-parser "^3.2.3" + postcss-zindex "^2.0.1" + +csso@~2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/csso/-/csso-2.3.2.tgz#ddd52c587033f49e94b71fc55569f252e8ff5f85" + dependencies: + clap "^1.0.9" + source-map "^0.5.3" + +cubic-hermite@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cubic-hermite/-/cubic-hermite-1.0.0.tgz#84e3b2f272b31454e8393b99bb6aed45168c14e5" + +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + dependencies: + array-find-index "^1.0.1" + +cwise-compiler@^1.0.0, cwise-compiler@^1.1.1, cwise-compiler@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/cwise-compiler/-/cwise-compiler-1.1.3.tgz#f4d667410e850d3a313a7d2db7b1e505bb034cc5" + dependencies: + uniq "^1.0.0" + +cwise-parser@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/cwise-parser/-/cwise-parser-1.0.3.tgz#8e493c17d54f97cb030a9e9854bc86c9dfb354fe" + dependencies: + esprima "^1.0.3" + uniq "^1.0.0" + +cwise@^1.0.10, cwise@^1.0.3, cwise@^1.0.4: + version "1.0.10" + resolved "https://registry.yarnpkg.com/cwise/-/cwise-1.0.10.tgz#24eee6072ebdfd6b8c6f5dadb17090b649b12bef" + dependencies: + cwise-compiler "^1.1.1" + cwise-parser "^1.0.0" + static-module "^1.0.0" + uglify-js "^2.6.0" + +d3-array@1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.0.tgz#147d269720e174c4057a7f42be8b0f3f2ba53108" + +d3-collection@1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.3.tgz#00bdea94fbc1628d435abbae2f4dc2164e37dd34" + +d3-color@1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.0.3.tgz#bc7643fca8e53a8347e2fbdaffa236796b58509b" + +d3-dispatch@1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.3.tgz#46e1491eaa9b58c358fce5be4e8bed626e7871f8" + +d3-force@^1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-1.0.6.tgz#ea7e1b7730e2664cd314f594d6718c57cc132b79" + dependencies: + d3-collection "1" + d3-dispatch "1" + d3-quadtree "1" + d3-timer "1" + +d3-interpolate@1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.1.5.tgz#69e099ff39214716e563c9aec3ea9d1ea4b8a79f" + dependencies: + d3-color "1" + +d3-quadtree@1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.3.tgz#ac7987e3e23fe805a990f28e1b50d38fcb822438" + +d3-timer@1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.5.tgz#b266d476c71b0d269e7ac5f352b410a3b6fe6ef0" + +d3@^3.5.12: + version "3.5.17" + resolved "https://registry.yarnpkg.com/d3/-/d3-3.5.17.tgz#bc46748004378b21a360c9fc7cf5231790762fb8" + +d@1: + version "1.0.0" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.0.tgz#754bb5bfe55451da69a58b94d45f4c5b0462d58f" + dependencies: + es5-ext "^0.10.9" + +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" + +dateformat@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-2.0.0.tgz#2743e3abb5c3fc2462e527dca445e04e9f4dee17" + +de-indent@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/de-indent/-/de-indent-1.0.2.tgz#b2038e846dc33baa5796128d0804b455b8c1e21d" + +debug@*, debug@^2.1.1, debug@^2.2.0: + version "2.6.8" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.8.tgz#e731531ca2ede27d188222427da17821d68ff4fc" + dependencies: + ms "2.0.0" + +debug@2.6.7: + version "2.6.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.7.tgz#92bad1f6d05bbb6bba22cca88bcd0ec894c2861e" + dependencies: + ms "2.0.0" + +decamelize@^1.0.0, decamelize@^1.1.1, decamelize@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + +deep-equal@^1.0.0, deep-equal@^1.0.1, deep-equal@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.0.1.tgz#f5d260292b660e084eff4cdbc9f08ad3247448b5" + +deep-extend@~0.4.0: + version "0.4.2" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.4.2.tgz#48b699c27e334bf89f10892be432f6e4c7d34a7f" + +deep-is@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34" + +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, 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" + +delaunay-triangulate@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/delaunay-triangulate/-/delaunay-triangulate-1.1.6.tgz#5bbca21b078198d4bc3c75796a35cbb98c25954c" + dependencies: + incremental-convex-hull "^1.0.1" + uniq "^1.0.1" + +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" + +depd@1.1.0, depd@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.0.tgz#e1bd82c6aab6ced965b97b88b17ed3e528ca18c3" + +des.js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/des.js/-/des.js-1.0.0.tgz#c074d2e2aa6a8a9a07dbd61f9a15c2cd83ec8ecc" + dependencies: + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + +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" + +diffie-hellman@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/diffie-hellman/-/diffie-hellman-5.0.2.tgz#b5835739270cfe26acf632099fded2a07f209e5e" + dependencies: + bn.js "^4.1.0" + miller-rabin "^4.0.0" + randombytes "^2.0.0" + +doctrine@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.0.0.tgz#c73d8d2909d22291e1a007a395804da8b665fe63" + dependencies: + esutils "^2.0.2" + isarray "^1.0.0" + +dom-converter@~0.1: + version "0.1.4" + resolved "https://registry.yarnpkg.com/dom-converter/-/dom-converter-0.1.4.tgz#a45ef5727b890c9bffe6d7c876e7b19cb0e17f3b" + dependencies: + utila "~0.3" + +dom-serializer@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" + +domain-browser@^1.1.1: + version "1.1.7" + resolved "https://registry.yarnpkg.com/domain-browser/-/domain-browser-1.1.7.tgz#867aa4b093faa05f1de08c06f4d7b21fdf8698bc" + +domelementtype@1, domelementtype@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.3.0.tgz#b17aed82e8ab59e52dd9c19b1756e0fc187204c2" + +domelementtype@~1.1.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-1.1.3.tgz#bd28773e2642881aec51544924299c5cd822185b" + +domhandler@2.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.1.0.tgz#d2646f5e57f6c3bab11cf6cb05d3c0acf7412594" + dependencies: + domelementtype "1" + +domhandler@^2.3.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-2.4.1.tgz#892e47000a99be55bbf3774ffea0561d8879c259" + dependencies: + domelementtype "1" + +domutils@1.1: + version "1.1.6" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.1.6.tgz#bddc3de099b9a2efacc51c623f28f416ecc57485" + dependencies: + domelementtype "1" + +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" + +domutils@^1.5.1: + version "1.6.2" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-1.6.2.tgz#1958cc0b4c9426e9ed367fb1c8e854891b0fa3ff" + dependencies: + dom-serializer "0" + domelementtype "1" + +dot-case@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/dot-case/-/dot-case-2.1.1.tgz#34dcf37f50a8e93c2b3bca8bb7fb9155c7da3bee" + dependencies: + no-case "^2.2.0" + +double-bits@^1.1.0, double-bits@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/double-bits/-/double-bits-1.1.1.tgz#58abba45494da4d0fa36b73ad11a286c9184b1c6" + +dup@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/dup/-/dup-1.0.0.tgz#51fc5ac685f8196469df0b905e934b20af5b4029" + +duplexer2@0.0.2, duplexer2@~0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" + dependencies: + readable-stream "~1.1.9" + +duplexify@^3.4.5: + version "3.5.0" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.5.0.tgz#1aa773002e1578457e9d9d4a50b0ccaaebcbd604" + dependencies: + end-of-stream "1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + +earcut@^2.0.3: + version "2.1.1" + resolved "https://registry.yarnpkg.com/earcut/-/earcut-2.1.1.tgz#157634e5f3ebb42224e475016e86a5b6ce556b45" + +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" + +edges-to-adjacency-list@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/edges-to-adjacency-list/-/edges-to-adjacency-list-1.0.0.tgz#c146d2e084addfba74a51293c6e0199a49f757f1" + dependencies: + uniq "^1.0.0" + +editorconfig@^0.13.2: + version "0.13.2" + resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.13.2.tgz#8e57926d9ee69ab6cb999f027c2171467acceb35" + dependencies: + bluebird "^3.0.5" + commander "^2.9.0" + lru-cache "^3.2.0" + sigmund "^1.0.1" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + +electron-devtools-installer@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/electron-devtools-installer/-/electron-devtools-installer-2.2.0.tgz#9813e6811afcd69ddca3cae5416db72ea7ecfb6a" + dependencies: + "7zip" "0.0.6" + cross-unzip "0.0.2" + rimraf "^2.5.2" + semver "^5.3.0" + +electron-to-chromium@^1.2.7: + version "1.3.13" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.13.tgz#1b3a5eace6e087bb5e257a100b0cbfe81b2891fc" + +elliptic@^6.0.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.4.0.tgz#cac9af8762c85836187003c8dfe193e5e2eae5df" + dependencies: + bn.js "^4.4.0" + brorand "^1.0.1" + hash.js "^1.0.0" + hmac-drbg "^1.0.0" + inherits "^2.0.1" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.0" + +emojione@^2.2.7: + version "2.2.7" + resolved "https://registry.yarnpkg.com/emojione/-/emojione-2.2.7.tgz#46457cf6b9b2f8da13ae8a2e4e547de06ee15e96" + +emojis-list@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-2.1.0.tgz#4daa4d9db00f9819880c79fa457ae5b09a1fd389" + +encodeurl@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.1.tgz#79e3d58655346909fe6f0f45a5de68103b294d20" + +end-of-stream@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.0.0.tgz#d4596e702734a93e40e9af864319eabd99ff2f0e" + dependencies: + once "~1.3.0" + +enhanced-resolve@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-3.1.0.tgz#9f4b626f577245edcf4b2ad83d86e17f4f421dec" + dependencies: + graceful-fs "^4.1.2" + memory-fs "^0.4.0" + object-assign "^4.0.1" + tapable "^0.2.5" + +entities@^1.1.1, entities@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/entities/-/entities-1.1.1.tgz#6e5c2d0a5621b5dadaecef80b90edfb5cd7772f0" + +errno@^0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.4.tgz#b896e23a9e5e8ba33871fc996abd3635fc9a1c7d" + dependencies: + prr "~0.0.0" + +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.5.0: + 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.14, es5-ext@^0.10.9, es5-ext@~0.10.14: + version "0.10.22" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.22.tgz#1876c51f990769c112c781ea3ebe89f84fd39071" + dependencies: + es6-iterator "2" + es6-symbol "~3.1" + +es6-iterator@2, es6-iterator@^2.0.1, es6-iterator@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.1.tgz#8e319c9f0453bf575d374940a655920e59ca5512" + dependencies: + d "1" + es5-ext "^0.10.14" + es6-symbol "^3.1" + +es6-map@^0.1.3: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-map/-/es6-map-0.1.5.tgz#9136e0503dcc06a301690f0bb14ff4e364e949f0" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-set "~0.1.5" + es6-symbol "~3.1.1" + event-emitter "~0.3.5" + +es6-promise@^3.0.2: + version "3.3.1" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.3.1.tgz#a08cdde84ccdbf34d027a1451bc91d4bcd28a613" + +es6-set@~0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/es6-set/-/es6-set-0.1.5.tgz#d2b3ec5d4d800ced818db538d28974db0a73ccb1" + dependencies: + d "1" + es5-ext "~0.10.14" + es6-iterator "~2.0.1" + es6-symbol "3.1.1" + event-emitter "~0.3.5" + +es6-symbol@3.1.1, es6-symbol@^3.1, es6-symbol@^3.1.1, es6-symbol@~3.1, es6-symbol@~3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.1.tgz#bf00ef4fdab6ba1b46ecb7b629b4c7ed5715cc77" + dependencies: + d "1" + es5-ext "~0.10.14" + +es6-templates@^0.2.2: + version "0.2.3" + resolved "https://registry.yarnpkg.com/es6-templates/-/es6-templates-0.2.3.tgz#5cb9ac9fb1ded6eb1239342b81d792bbb4078ee4" + dependencies: + recast "~0.11.12" + through "~2.3.6" + +es6-weak-map@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.2.tgz#5e3ab32251ffd1538a1f8e5ffa1357772f92d96f" + dependencies: + d "1" + es5-ext "^0.10.14" + es6-iterator "^2.0.1" + es6-symbol "^3.1.1" + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + +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, escodegen@^1.8.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" + +escodegen@~0.0.24: + version "0.0.28" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-0.0.28.tgz#0e4ff1715f328775d6cab51ac44a406cd7abffd3" + dependencies: + esprima "~1.0.2" + estraverse "~1.3.0" + optionalDependencies: + source-map ">= 0.1.2" + +escodegen@~1.3.2: + version "1.3.3" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.3.3.tgz#f024016f5a88e046fd12005055e939802e6c5f23" + dependencies: + esprima "~1.1.1" + estraverse "~1.5.0" + esutils "~1.0.0" + optionalDependencies: + source-map "~0.1.33" + +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" + +eslint-config-standard@^7.0.1: + version "7.1.0" + resolved "https://registry.yarnpkg.com/eslint-config-standard/-/eslint-config-standard-7.1.0.tgz#47e769ea0739f5b2d5693b1a501c21c9650fafcf" + +eslint-friendly-formatter@^2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/eslint-friendly-formatter/-/eslint-friendly-formatter-2.0.7.tgz#657f95a19af4989636afebb1cc9de6cebbd088ee" + dependencies: + chalk "^1.0.0" + extend "^3.0.0" + minimist "^1.2.0" + text-table "^0.2.0" + +eslint-loader@^1.6.1: + version "1.7.1" + resolved "https://registry.yarnpkg.com/eslint-loader/-/eslint-loader-1.7.1.tgz#50b158dd6272dcefb97e984254837f81a5802ce0" + dependencies: + find-cache-dir "^0.1.1" + loader-fs-cache "^1.0.0" + loader-utils "^1.0.2" + object-assign "^4.0.1" + object-hash "^1.1.4" + rimraf "^2.6.1" + +eslint-plugin-html@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/eslint-plugin-html/-/eslint-plugin-html-2.0.3.tgz#7c89883ab0c85fa5d28b666a14a4e906aa90b897" + dependencies: + htmlparser2 "^3.8.2" + +eslint-plugin-promise@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-promise/-/eslint-plugin-promise-3.5.0.tgz#78fbb6ffe047201627569e85a6c5373af2a68fca" + +eslint-plugin-standard@^2.1.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-standard/-/eslint-plugin-standard-2.3.1.tgz#6765bd2a6d9ecdc7bdf1b145ae4bb30e2b7b86f8" + +eslint@^3.17.1: + version "3.19.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-3.19.0.tgz#c8fc6201c7f40dd08941b87c085767386a679acc" + dependencies: + babel-code-frame "^6.16.0" + chalk "^1.1.3" + concat-stream "^1.5.2" + debug "^2.1.1" + doctrine "^2.0.0" + escope "^3.6.0" + espree "^3.4.0" + esquery "^1.0.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: + version "3.4.3" + resolved "https://registry.yarnpkg.com/espree/-/espree-3.4.3.tgz#2910b5ccd49ce893c2ffffaab4fd8b3a31b82374" + dependencies: + acorn "^5.0.1" + acorn-jsx "^3.0.0" + +esprima@^1.0.3: + version "1.2.5" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.2.5.tgz#0993502feaf668138325756f30f9a51feeec11e9" + +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@^3.1.1, esprima@~3.1.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-3.1.3.tgz#fdca51cee6133895e3c88d535ce49dbff62a4633" + +esprima@~1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.0.4.tgz#9f557e08fc3b4d26ece9dd34f8fbf476b62585ad" + +esprima@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-1.1.1.tgz#5b6f1547f4d102e670e140c509be6771d6aeb549" + +espurify@^1.3.0, espurify@^1.6.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/espurify/-/espurify-1.7.0.tgz#1c5cf6cbccc32e6f639380bd4f991fab9ba9d226" + dependencies: + core-js "^2.0.0" + +esquery@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.0.0.tgz#cfba8b57d7fba93f17298a8a006a04cda13d80fa" + dependencies: + estraverse "^4.0.0" + +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.0.0, estraverse@^4.1.0, 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@~1.3.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.3.2.tgz#37c2b893ef13d723f276d878d60d8535152a6c42" + +estraverse@~1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-1.5.1.tgz#867a3e8e58a9f84618afb6c2ddbcd916b7cbaf71" + +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" + +esutils@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-1.0.0.tgz#8151d358e20c8acc7fb745e7472c0025fe496570" + +etag@~1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.0.tgz#6f631aef336d6c46362b51764044ce216be3c051" + +event-emitter@~0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + dependencies: + d "1" + es5-ext "~0.10.14" + +eventemitter3@1.x.x: + version "1.2.0" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-1.2.0.tgz#1c86991d816ad1e504750e73874224ecf3bec508" + +eventemitter3@~2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-2.0.3.tgz#b5e1079b59fb5e1ba2771c0a993be060a58c99ba" + +events@^1.0.0, events@^1.0.2: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + +eventsource-polyfill@^0.9.6: + version "0.9.6" + resolved "https://registry.yarnpkg.com/eventsource-polyfill/-/eventsource-polyfill-0.9.6.tgz#10e0d187f111b167f28fdab918843ce7d818f13c" + +evp_bytestokey@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/evp_bytestokey/-/evp_bytestokey-1.0.0.tgz#497b66ad9fef65cd7c08a6180824ba1476b66e53" + dependencies: + create-hash "^1.1.1" + +exit-hook@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/exit-hook/-/exit-hook-1.1.1.tgz#f05ca233b48c05d54fff07765df8507e95c02ff8" + +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" + +express@^4.15.2: + version "4.15.3" + resolved "https://registry.yarnpkg.com/express/-/express-4.15.3.tgz#bab65d0f03aa80c358408972fc700f916944b662" + dependencies: + accepts "~1.3.3" + array-flatten "1.1.1" + content-disposition "0.5.2" + content-type "~1.0.2" + cookie "0.3.1" + cookie-signature "1.0.6" + debug "2.6.7" + depd "~1.1.0" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.0" + finalhandler "~1.0.3" + fresh "0.5.0" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.1" + path-to-regexp "0.1.7" + proxy-addr "~1.1.4" + qs "6.4.0" + range-parser "~1.2.0" + send "0.15.3" + serve-static "1.12.3" + setprototypeof "1.0.3" + statuses "~1.3.1" + type-is "~1.6.15" + utils-merge "1.0.0" + vary "~1.1.1" + +extend@^3.0.0, extend@~3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.1.tgz#a755ea7bc1adfcc5a31ce7e762dbaadc5e636444" + +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" + +extract-frustum-planes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/extract-frustum-planes/-/extract-frustum-planes-1.0.0.tgz#97d5703ff0564c8c3c6838cac45f9e7bc52c9ef5" + +extract-text-webpack-plugin@^2.0.0-beta.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/extract-text-webpack-plugin/-/extract-text-webpack-plugin-2.1.0.tgz#69315b885f876dbf96d3819f6a9f1cca7aebf159" + dependencies: + ajv "^4.11.2" + async "^2.1.2" + loader-utils "^1.0.2" + webpack-sources "^0.1.0" + +extsprintf@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" + +falafel@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/falafel/-/falafel-1.2.0.tgz#c18d24ef5091174a497f318cd24b026a25cddab4" + dependencies: + acorn "^1.0.3" + foreach "^2.0.5" + isarray "0.0.1" + object-keys "^1.0.6" + +falafel@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/falafel/-/falafel-2.1.0.tgz#96bb17761daba94f46d001738b3cedf3a67fe06c" + dependencies: + acorn "^5.0.0" + foreach "^2.0.5" + isarray "0.0.1" + object-keys "^1.0.6" + +fancy-log@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.0.tgz#45be17d02bb9917d60ccffd4995c999e6c8c9948" + dependencies: + chalk "^1.1.1" + time-stamp "^1.0.0" + +fast-diff@^1.0.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.1.1.tgz#0aea0e4e605b6a2189f0e936d4b7fbaf1b7cfd9b" + +fast-isnumeric@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fast-isnumeric/-/fast-isnumeric-1.1.1.tgz#57b81c07a3c09cb9ec3bef9c161818992d893643" + +fast-levenshtein@~2.0.4: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + +fastparse@^1.0.0, fastparse@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/fastparse/-/fastparse-1.1.1.tgz#d1e2643b38a94d7583b479060e6c4affc94071f8" + +feature-filter@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/feature-filter/-/feature-filter-2.2.0.tgz#3cc356015e968c362afbdf7ff1bb744ddf7fc2e0" + +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" + +file-loader@^0.10.1: + version "0.10.1" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-0.10.1.tgz#815034119891fc6441fb5a64c11bc93c22ddd842" + dependencies: + loader-utils "^1.0.2" + +filename-regex@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" + +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" + +filtered-vector@^1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/filtered-vector/-/filtered-vector-1.2.4.tgz#56453c034df4302d293ca8ecdeac3f90abc678d3" + dependencies: + binary-search-bounds "^1.0.0" + cubic-hermite "^1.0.0" + +finalhandler@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.0.3.tgz#ef47e77950e999780e86022a560e3217e0d0cc89" + dependencies: + debug "2.6.7" + encodeurl "~1.0.1" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.1" + statuses "~1.3.1" + unpipe "~1.0.0" + +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: + 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" + +findup@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/findup/-/findup-0.1.5.tgz#8ad929a3393bac627957a7e5de4623b06b0e2ceb" + dependencies: + colors "~0.6.0-1" + commander "~2.1.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" + +flatpickr@^2.5.7: + version "2.6.3" + resolved "https://registry.yarnpkg.com/flatpickr/-/flatpickr-2.6.3.tgz#457357532deb135f3da64b425bf4435737961564" + +flatten@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.2.tgz#dae46a9d78fbe25292258cc1e780a41d95c03782" + +follow-redirects@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.0.0.tgz#8e34298cbd2e176f254effec75a1c78cc849fd37" + dependencies: + debug "^2.2.0" + +font-atlas-sdf@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/font-atlas-sdf/-/font-atlas-sdf-1.2.0.tgz#74de5191136712c4c239c09491f95b44761ec58f" + dependencies: + tiny-sdf "^1.0.2" + +font-awesome@4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/font-awesome/-/font-awesome-4.7.0.tgz#8fa8cf0411a1a31afd07b06d2902bb9fc815a133" + +for-each@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.2.tgz#2c40450b9348e97f281322593ba96704b9abd4d4" + dependencies: + is-function "~1.0.0" + +for-in@^0.1.3: + version "0.1.8" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" + +for-in@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + +for-own@^0.1.3, for-own@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.5.tgz#5265c681a4f294dabbf17c9509b6763aa84510ce" + dependencies: + for-in "^1.0.1" + +foreach@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/foreach/-/foreach-2.0.5.tgz#0bee005018aeb260d0a3af3ae658dd0136ec1b99" + +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.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + +forwarded@~0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.1.0.tgz#19ef9874c4ae1c297bcf078fde63a09b66a84363" + +fresh@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.0.tgz#f474ca5e6a9246d6fd8e0953cfa9b9c805afa78e" + +from2@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +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.1.1" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.1.tgz#f19fd28f43eeaf761680e519a203c4d0b3d31aff" + 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.10, fstream@^1.0.2: + version "1.0.11" + resolved "https://registry.yarnpkg.com/fstream/-/fstream-1.0.11.tgz#5c1fb1f117477114f0632a0eb4b71b3cb0fd3171" + 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, function-bind@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.0.tgz#16176714c801798e4e8f2cf7f7529467bb4a5771" + +functional-red-black-tree@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + +gamma@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/gamma/-/gamma-0.1.0.tgz#3315643403bf27906ca80ab37c36ece9440ef330" + +gather-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gather-stream/-/gather-stream-1.0.0.tgz#b33994af457a8115700d410f317733cbe7a0904b" + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + 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" + wide-align "^1.1.0" + +gaze@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/gaze/-/gaze-1.1.2.tgz#847224677adb8870d679257ed3388fdb61e40105" + dependencies: + globule "^1.0.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" + +geojson-area@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/geojson-area/-/geojson-area-0.1.0.tgz#d48d807082cfadf4a78df1349be50f38bf1894ae" + dependencies: + wgs84 "0.0.0" + +geojson-rewind@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/geojson-rewind/-/geojson-rewind-0.1.0.tgz#57022a054b196660d755354fe5d26684d90cd019" + dependencies: + concat-stream "~1.2.1" + geojson-area "0.1.0" + minimist "0.0.5" + +geojson-vt@^2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/geojson-vt/-/geojson-vt-2.4.0.tgz#3c1cf44493f35eb4d2c70c95da6550de66072c05" + +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" + +get-canvas-context@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/get-canvas-context/-/get-canvas-context-1.0.2.tgz#d6e7b50bc4e4c86357cd39f22647a84b73601e93" + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + dependencies: + assert-plus "^1.0.0" + +gl-axes3d@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/gl-axes3d/-/gl-axes3d-1.2.5.tgz#b2b42afbd8002585a3e6542fccf874dfaa618762" + dependencies: + bit-twiddle "^1.0.0" + dup "^1.0.0" + extract-frustum-planes "^1.0.0" + gl-buffer "^2.0.3" + gl-mat4 "^1.0.1" + gl-shader "^4.0.4" + gl-state "^1.0.0" + gl-vao "^1.1.1" + gl-vec4 "^1.0.1" + glslify "^2.1.2" + robust-orientation "^1.1.3" + split-polygon "^1.0.0" + vectorize-text "^3.0.0" + +gl-buffer@^2.0.3, gl-buffer@^2.0.6, gl-buffer@^2.0.8, gl-buffer@^2.1.1, gl-buffer@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/gl-buffer/-/gl-buffer-2.1.2.tgz#2db8d9c1a5527fba0cdb91289c206e882b889cdb" + dependencies: + ndarray "^1.0.15" + ndarray-ops "^1.1.0" + typedarray-pool "^1.0.0" + +gl-constants@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-constants/-/gl-constants-1.0.0.tgz#597a504e364750ff50253aa35f8dea7af4a5d233" + +gl-contour2d@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/gl-contour2d/-/gl-contour2d-1.1.3.tgz#86275566ceac1b6eb76c00ad7297227835ccd364" + dependencies: + binary-search-bounds "^2.0.0" + cdt2d "^1.0.0" + clean-pslg "^1.1.0" + gl-buffer "^2.1.2" + gl-shader "^4.0.5" + glslify "^4.0.0" + iota-array "^1.0.0" + ndarray "^1.0.18" + surface-nets "^1.0.2" + +gl-error2d@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/gl-error2d/-/gl-error2d-1.2.1.tgz#cc6977f6476f205db3c4eac5b8c48899e48dfdd1" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.0.5" + glslify "^2.3.1" + typedarray-pool "^1.1.0" + +gl-error3d@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/gl-error3d/-/gl-error3d-1.0.5.tgz#13a23babfcb5b534d574664a1f2f6eae3b0708f3" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.2.1" + gl-vao "^1.3.0" + glslify "^6.0.2" + +gl-fbo@^2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/gl-fbo/-/gl-fbo-2.0.5.tgz#0fa75a497cf787695530691c8f04abb6fb55fa22" + dependencies: + gl-texture2d "^2.0.0" + +gl-format-compiler-error@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/gl-format-compiler-error/-/gl-format-compiler-error-1.0.2.tgz#34397d2ae613e2d83a58f35d571de1be7d3080fa" + dependencies: + add-line-numbers "^1.0.1" + gl-constants "^1.0.0" + glsl-shader-name "^1.0.0" + sprintf-js "^1.0.3" + +gl-heatmap2d@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/gl-heatmap2d/-/gl-heatmap2d-1.0.3.tgz#69cb61512e31185ea8bd26f025f5c1af1f2b0a18" + dependencies: + binary-search-bounds "^2.0.3" + gl-buffer "^2.1.2" + gl-shader "^4.0.5" + glslify "^4.0.0" + iota-array "^1.0.0" + typedarray-pool "^1.1.0" + +gl-line2d@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/gl-line2d/-/gl-line2d-1.4.1.tgz#bf81794738f9a7637dcdde9668666a44c12a1110" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.0.5" + gl-texture2d "^2.0.9" + glslify "^2.1.2" + ndarray "^1.0.18" + snap-points-2d "^1.0.1" + typedarray-pool "^1.1.0" + +gl-line3d@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/gl-line3d/-/gl-line3d-1.1.0.tgz#e8ae956b897f130fb1d58798fadf74bf9a21ab9b" + dependencies: + binary-search-bounds "^1.0.0" + gl-buffer "^2.0.8" + gl-shader "^4.0.4" + gl-texture2d "^2.0.2" + gl-vao "^1.1.3" + glsl-read-float "^1.0.0" + glslify "^2.1.2" + ndarray "^1.0.16" + +gl-mat2@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-mat2/-/gl-mat2-1.0.0.tgz#22c06f06bbc141a8bfac7d8573f5528f1de29d46" + +gl-mat3@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-mat3/-/gl-mat3-1.0.0.tgz#89633219ca429379a16b9185d95d41713453b912" + +gl-mat4@^1.0.0, gl-mat4@^1.0.1, gl-mat4@^1.0.2, gl-mat4@^1.0.3, gl-mat4@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/gl-mat4/-/gl-mat4-1.1.4.tgz#1e895b55892e56a896867abd837d38f37a178086" + +gl-matrix-invert@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-matrix-invert/-/gl-matrix-invert-1.0.0.tgz#a36d7bde3654c4590a127ee7c68f6e13fea8c63d" + dependencies: + gl-mat2 "^1.0.0" + gl-mat3 "^1.0.0" + gl-mat4 "^1.0.0" + +gl-matrix@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/gl-matrix/-/gl-matrix-2.3.2.tgz#aac808c74af7d5db05fe04cb60ca1a0fcb174d74" + +gl-mesh3d@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gl-mesh3d/-/gl-mesh3d-1.2.0.tgz#c414beb8393b04c74cfdda4d0e950171047ddd99" + dependencies: + barycentric "^1.0.1" + colormap "^2.1.0" + gl-buffer "^2.0.8" + gl-mat4 "^1.0.0" + gl-shader "^4.0.5" + gl-texture2d "^2.0.8" + gl-vao "^1.1.3" + glsl-specular-cook-torrance "^2.0.1" + glslify "^2.1.2" + ndarray "^1.0.15" + normals "^1.0.1" + polytope-closest-point "^1.0.0" + simplicial-complex-contour "^1.0.0" + typedarray-pool "^1.1.0" + +gl-plot2d@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/gl-plot2d/-/gl-plot2d-1.2.0.tgz#99eead246d2f6473cc9a4bc08617fb6427ab622d" + dependencies: + binary-search-bounds "^2.0.3" + gl-buffer "^2.1.2" + gl-select-static "^2.0.2" + gl-shader "^4.2.1" + glsl-inverse "^1.0.0" + glslify "^2.2.1" + text-cache "^4.1.0" + +gl-plot3d@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/gl-plot3d/-/gl-plot3d-1.5.4.tgz#be9c1868c829a47d0a2ab03c70d528af868f9e86" + dependencies: + "3d-view-controls" "^2.2.0" + a-big-triangle "^1.0.0" + gl-axes3d "^1.2.5" + gl-fbo "^2.0.3" + gl-mat4 "^1.1.2" + gl-select-static "^2.0.2" + gl-shader "^4.0.4" + gl-spikes3d "^1.0.3" + glslify "^2.1.2" + is-mobile "^0.2.2" + mouse-change "^1.1.1" + ndarray "^1.0.16" + +gl-pointcloud2d@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-pointcloud2d/-/gl-pointcloud2d-1.0.0.tgz#41bae996e049e0f1dfd8f9f8e15ff903fc4fbfdd" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.2.1" + glslify "^2.1.2" + typedarray-pool "^1.1.0" + +gl-quat@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-quat/-/gl-quat-1.0.0.tgz#0945ec923386f45329be5dc357b1c8c2d47586c5" + dependencies: + gl-mat3 "^1.0.0" + gl-vec3 "^1.0.3" + gl-vec4 "^1.0.0" + +gl-scatter2d-sdf@^1.3.9: + version "1.3.9" + resolved "https://registry.yarnpkg.com/gl-scatter2d-sdf/-/gl-scatter2d-sdf-1.3.9.tgz#947537f0ccdaaebaf4621515278b92c2a853bba1" + dependencies: + binary-search-bounds "^2.0.3" + clamp "^1.0.1" + color-id "^1.0.0" + font-atlas-sdf "^1.2.0" + gl-buffer "^2.1.2" + gl-shader "^4.2.1" + gl-texture2d "^2.1.0" + glslify "^2.3.1" + snap-points-2d "^3.1.0" + typedarray-pool "^1.1.0" + +gl-scatter2d@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/gl-scatter2d/-/gl-scatter2d-1.2.2.tgz#34afb2a391f54e458b2c0d89afa73c1ef69ad14b" + dependencies: + binary-search-bounds "^2.0.3" + gl-buffer "^2.1.2" + gl-shader "^4.0.4" + glslify "^2.1.2" + snap-points-2d "^3.0.0" + typedarray-pool "^1.1.0" + +gl-scatter3d@^1.0.4: + version "1.0.10" + resolved "https://registry.yarnpkg.com/gl-scatter3d/-/gl-scatter3d-1.0.10.tgz#49c57f33108c3b56b3581541928a8feeb2d37e9e" + dependencies: + gl-buffer "^2.0.6" + gl-mat4 "^1.0.0" + gl-shader "^4.0.0" + gl-vao "^1.1.2" + glslify "^2.2.1" + typedarray-pool "^1.0.2" + vectorize-text "^3.0.0" + +gl-select-box@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gl-select-box/-/gl-select-box-1.0.1.tgz#0cc8c905cce27fe8d918bb0ee1387f5838f959e9" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.0.5" + glslify "^2.2.1" + +gl-select-static@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/gl-select-static/-/gl-select-static-2.0.2.tgz#f3e1901df03181d532e795853230679d4af57ee9" + dependencies: + bit-twiddle "^1.0.2" + cwise "^1.0.3" + gl-fbo "^2.0.3" + ndarray "^1.0.15" + typedarray-pool "^1.1.0" + +gl-shader@4.2.0, gl-shader@^4.0.5: + version "4.2.0" + resolved "https://registry.yarnpkg.com/gl-shader/-/gl-shader-4.2.0.tgz#28f77813effa0dd5cda9dab1f301d1b1cda3e87e" + dependencies: + gl-format-compiler-error "^1.0.2" + weakmap-shim "^1.1.0" + +gl-shader@^4.0.0, gl-shader@^4.0.4, gl-shader@^4.2.0, gl-shader@^4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/gl-shader/-/gl-shader-4.2.1.tgz#bc9b808e9293c51b668e88de615b0c113708dc2f" + dependencies: + gl-format-compiler-error "^1.0.2" + weakmap-shim "^1.1.0" + +gl-spikes2d@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gl-spikes2d/-/gl-spikes2d-1.0.1.tgz#cacdb2d3dbcd202b853452e8500a8b077949cc03" + +gl-spikes3d@^1.0.3: + version "1.0.5" + resolved "https://registry.yarnpkg.com/gl-spikes3d/-/gl-spikes3d-1.0.5.tgz#697e9f2ea7597be41aba47bda119b95f48ca157d" + dependencies: + gl-buffer "^2.1.2" + gl-shader "^4.0.4" + gl-vao "^1.2.1" + glslify "^2.1.2" + +gl-state@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gl-state/-/gl-state-1.0.0.tgz#262faa75835b0b9c532c12f38adc425d1d30cd17" + dependencies: + uniq "^1.0.0" + +gl-surface3d@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/gl-surface3d/-/gl-surface3d-1.3.0.tgz#5232e0fc7e1fcbb943525b27d76781ccee826403" + dependencies: + binary-search-bounds "^1.0.0" + bit-twiddle "^1.0.2" + colormap "^2.1.0" + dup "^1.0.0" + gl-buffer "^2.0.3" + gl-mat4 "^1.0.0" + gl-shader "^4.2.0" + gl-texture2d "^2.0.0" + gl-vao "^1.1.1" + glsl-specular-beckmann "^1.1.2" + glslify "^2.1.2" + ndarray "^1.0.16" + ndarray-gradient "^1.0.0" + ndarray-ops "^1.2.1" + ndarray-pack "^1.0.1" + ndarray-scratch "^1.1.1" + surface-nets "^1.0.2" + typedarray-pool "^1.0.0" + +gl-texture2d@^2.0.0, gl-texture2d@^2.0.2, gl-texture2d@^2.0.8, gl-texture2d@^2.0.9, gl-texture2d@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/gl-texture2d/-/gl-texture2d-2.1.0.tgz#ff6824e7e7c31a8ba6fdcdbe9e5c695d7e2187c7" + dependencies: + ndarray "^1.0.15" + ndarray-ops "^1.2.2" + typedarray-pool "^1.1.0" + +gl-vao@^1.1.1, gl-vao@^1.1.2, gl-vao@^1.1.3, gl-vao@^1.2.0, gl-vao@^1.2.1, gl-vao@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/gl-vao/-/gl-vao-1.3.0.tgz#e9e92aa95588cab9d5c2f04b693440c3df691923" + +gl-vec3@^1.0.2, gl-vec3@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/gl-vec3/-/gl-vec3-1.0.3.tgz#110fd897d0729f6398307381567d0944941bf22b" + +gl-vec4@^1.0.0, gl-vec4@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gl-vec4/-/gl-vec4-1.0.1.tgz#97d96878281b14b532cbce101785dfd1cb340964" + +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@7.0.x: + version "7.0.6" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.0.6.tgz#211bafaf49e525b8cd93260d14ab136152b3f57a" + 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@^6.0.1: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.0.0, glob@^7.0.3, glob@^7.0.5, glob@~7.1.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.2.tgz#c19c9df9a028702d678612384a6552404c636d15" + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.0.4" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^9.0.0, globals@^9.14.0: + version "9.17.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-9.17.0.tgz#0c0ca696d9b9bb694d2e5470bd37777caad50286" + +globby@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-4.1.0.tgz#080f54549ec1b82a6c60e631fc82e1211dbe95f8" + dependencies: + array-union "^1.0.1" + arrify "^1.0.0" + glob "^6.0.1" + object-assign "^4.0.1" + pify "^2.0.0" + pinkie-promise "^2.0.0" + +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" + +globule@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/globule/-/globule-1.1.0.tgz#c49352e4dc183d85893ee825385eb994bb6df45f" + dependencies: + glob "~7.1.1" + lodash "~4.16.4" + minimatch "~3.0.2" + +glogg@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" + dependencies: + sparkles "^1.0.0" + +glsl-inject-defines@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/glsl-inject-defines/-/glsl-inject-defines-1.0.3.tgz#dd1aacc2c17fcb2bd3fc32411c6633d0d7b60fd4" + dependencies: + glsl-token-inject-block "^1.0.0" + glsl-token-string "^1.0.1" + glsl-tokenizer "^2.0.2" + +glsl-inverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glsl-inverse/-/glsl-inverse-1.0.0.tgz#12c0b1d065f558444d1e6feaf79b5ddf8a918ae6" + +glsl-read-float@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/glsl-read-float/-/glsl-read-float-1.1.0.tgz#dfb088b0162dcfcc56fc4eddd2f86e18cac32f26" + +glsl-resolve@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/glsl-resolve/-/glsl-resolve-0.0.1.tgz#894bef73910d792c81b5143180035d0a78af76d3" + dependencies: + resolve "^0.6.1" + xtend "^2.1.2" + +glsl-shader-name@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glsl-shader-name/-/glsl-shader-name-1.0.0.tgz#a2c30b3ba73499befb0cc7184d7c7733dd4b487d" + dependencies: + atob-lite "^1.0.0" + glsl-tokenizer "^2.0.2" + +glsl-specular-beckmann@^1.1.1, glsl-specular-beckmann@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/glsl-specular-beckmann/-/glsl-specular-beckmann-1.1.2.tgz#fce9056933ecdf2456278376a54d082893e775f1" + +glsl-specular-cook-torrance@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/glsl-specular-cook-torrance/-/glsl-specular-cook-torrance-2.0.1.tgz#a891cc06c8c7b4f4728702b4824fdacbb967d78f" + dependencies: + glsl-specular-beckmann "^1.1.1" + +glsl-token-assignments@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/glsl-token-assignments/-/glsl-token-assignments-2.0.2.tgz#a5d82ab78499c2e8a6b83cb69495e6e665ce019f" + +glsl-token-defines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glsl-token-defines/-/glsl-token-defines-1.0.0.tgz#cb892aa959936231728470d4f74032489697fa9d" + dependencies: + glsl-tokenizer "^2.0.0" + +glsl-token-depth@^1.1.0, glsl-token-depth@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/glsl-token-depth/-/glsl-token-depth-1.1.2.tgz#23c5e30ee2bd255884b4a28bc850b8f791e95d84" + +glsl-token-descope@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/glsl-token-descope/-/glsl-token-descope-1.0.2.tgz#0fc90ab326186b82f597b2e77dc9e21efcd32076" + dependencies: + glsl-token-assignments "^2.0.0" + glsl-token-depth "^1.1.0" + glsl-token-properties "^1.0.0" + glsl-token-scope "^1.1.0" + +glsl-token-inject-block@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/glsl-token-inject-block/-/glsl-token-inject-block-1.1.0.tgz#e1015f5980c1091824adaa2625f1dfde8bd00034" + +glsl-token-properties@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/glsl-token-properties/-/glsl-token-properties-1.0.1.tgz#483dc3d839f0d4b5c6171d1591f249be53c28a9e" + +glsl-token-scope@^1.1.0, glsl-token-scope@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/glsl-token-scope/-/glsl-token-scope-1.1.2.tgz#a1728e78df24444f9cb93fd18ef0f75503a643b1" + +glsl-token-string@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/glsl-token-string/-/glsl-token-string-1.0.1.tgz#59441d2f857de7c3449c945666021ece358e48ec" + +glsl-token-whitespace-trim@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/glsl-token-whitespace-trim/-/glsl-token-whitespace-trim-1.0.0.tgz#46d1dfe98c75bd7d504c05d7d11b1b3e9cc93b10" + +glsl-tokenizer@^2.0.0, glsl-tokenizer@^2.0.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/glsl-tokenizer/-/glsl-tokenizer-2.1.2.tgz#720307522e03c57af35c00551950c4a70ef2dfb9" + dependencies: + through2 "^0.6.3" + +glslify-bundle@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/glslify-bundle/-/glslify-bundle-2.0.4.tgz#795df119818078861aa1989a0c75d59c20ecfdd6" + dependencies: + glsl-inject-defines "^1.0.1" + glsl-token-defines "^1.0.0" + glsl-token-depth "^1.1.1" + glsl-token-descope "^1.0.2" + glsl-token-scope "^1.1.1" + glsl-token-string "^1.0.1" + glsl-tokenizer "^2.0.2" + +glslify-bundle@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/glslify-bundle/-/glslify-bundle-4.0.1.tgz#af2cf206cd7985159100b33b5f1463a81b744da1" + dependencies: + glsl-inject-defines "^1.0.1" + glsl-token-defines "^1.0.0" + glsl-token-depth "^1.1.1" + glsl-token-descope "^1.0.2" + glsl-token-scope "^1.1.1" + glsl-token-string "^1.0.1" + glsl-token-whitespace-trim "^1.0.0" + glsl-tokenizer "^2.0.2" + murmurhash-js "^1.0.0" + shallow-copy "0.0.1" + +glslify-bundle@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/glslify-bundle/-/glslify-bundle-5.0.0.tgz#0252ada1ef9df30b660006e0bb21fd130b486e42" + dependencies: + glsl-inject-defines "^1.0.1" + glsl-token-defines "^1.0.0" + glsl-token-depth "^1.1.1" + glsl-token-descope "^1.0.2" + glsl-token-scope "^1.1.1" + glsl-token-string "^1.0.1" + glsl-token-whitespace-trim "^1.0.0" + glsl-tokenizer "^2.0.2" + murmurhash-js "^1.0.0" + shallow-copy "0.0.1" + +glslify-deps@^1.2.0, glslify-deps@^1.2.5: + version "1.3.0" + resolved "https://registry.yarnpkg.com/glslify-deps/-/glslify-deps-1.3.0.tgz#0b2234c8ea9e3d3fd7f6b3cb7f03ae59e6b51a59" + dependencies: + events "^1.0.2" + findup "^0.1.5" + glsl-resolve "0.0.1" + glsl-tokenizer "^2.0.0" + graceful-fs "^4.1.2" + inherits "^2.0.1" + map-limit "0.0.1" + resolve "^1.0.0" + +glslify@^2.1.2, glslify@^2.2.1, glslify@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/glslify/-/glslify-2.3.1.tgz#47a8ce5bf08609556aa7ec76c6a7d3430776dd46" + dependencies: + bl "^0.9.4" + glsl-resolve "0.0.1" + glslify-bundle "^2.0.4" + glslify-deps "^1.2.0" + minimist "^1.1.0" + resolve "^1.1.5" + static-module "^1.1.2" + through2 "^0.6.3" + xtend "^4.0.0" + +glslify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/glslify/-/glslify-4.0.0.tgz#4dbcfad136953f301503fa4a8e069b2336a14234" + dependencies: + bl "^1.0.0" + glsl-resolve "0.0.1" + glslify-bundle "^4.0.0" + glslify-deps "^1.2.5" + minimist "^1.2.0" + resolve "^1.1.5" + static-module "^1.1.2" + through2 "^0.6.3" + xtend "^4.0.0" + +glslify@^6.0.2: + version "6.1.0" + resolved "https://registry.yarnpkg.com/glslify/-/glslify-6.1.0.tgz#cdffcfd2a6571722128d3d13356c136de6ce9742" + dependencies: + bl "^1.0.0" + concat-stream "^1.5.2" + duplexify "^3.4.5" + falafel "^2.0.0" + from2 "^2.3.0" + glsl-resolve "0.0.1" + glsl-token-whitespace-trim "^1.0.0" + glslify-bundle "^5.0.0" + glslify-deps "^1.2.5" + minimist "^1.2.0" + resolve "^1.1.5" + stack-trace "0.0.9" + static-eval "^1.1.1" + tape "^4.6.0" + through2 "^2.0.1" + xtend "^4.0.0" + +google-closure-compiler-js@^20170124.0.0: + version "20170124.0.0" + resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20170124.0.0.tgz#cd77291a19a4158eb41fb241688a5e523e250364" + dependencies: + gulp-util "^3.0.7" + minimist "^1.2.0" + webpack-core "^0.6.8" + +graceful-fs@^4.1.2: + version "4.1.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" + +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + +grid-index@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/grid-index/-/grid-index-1.0.0.tgz#ad2c5d54ce5b35437faff1d70a9aeb3d1d261110" + +gulp-util@^3.0.7: + version "3.0.8" + resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.8.tgz#0054e1e744502e27c04c187c3ecc505dd54bbb4f" + dependencies: + array-differ "^1.0.0" + array-uniq "^1.0.2" + beeper "^1.0.0" + chalk "^1.0.0" + dateformat "^2.0.0" + fancy-log "^1.1.0" + gulplog "^1.0.0" + has-gulplog "^0.1.0" + lodash._reescape "^3.0.0" + lodash._reevaluate "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.template "^3.0.0" + minimist "^1.1.0" + multipipe "^0.1.2" + object-assign "^3.0.0" + replace-ext "0.0.1" + through2 "^2.0.0" + vinyl "^0.5.0" + +gulplog@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" + dependencies: + glogg "^1.0.0" + +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + +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-color@~0.1.0: + version "0.1.7" + resolved "https://registry.yarnpkg.com/has-color/-/has-color-0.1.7.tgz#67144a5260c34fc3cca677d041daf52fe7b78b2f" + +has-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-1.0.0.tgz#9d9e793165ce017a00f00418c43f942a7b1d11fa" + +has-gulplog@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" + dependencies: + sparkles "^1.0.0" + +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.0, has@^1.0.1, 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" + +hash-base@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/hash-base/-/hash-base-2.0.2.tgz#66ea1d856db4e8a5470cadf6fce23ae5244ef2e1" + dependencies: + inherits "^2.0.1" + +hash-sum@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/hash-sum/-/hash-sum-1.0.2.tgz#33b40777754c6432573c120cc3808bbd10d47f04" + +hash.js@^1.0.0, hash.js@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.0.3.tgz#1332ff00156c0a0ffdd8236013d07b77a0451573" + dependencies: + inherits "^2.0.1" + +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" + +he@1.1.x, he@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd" + +header-case@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/header-case/-/header-case-1.0.1.tgz#9535973197c144b09613cd65d317ef19963bd02d" + dependencies: + no-case "^2.2.0" + upper-case "^1.1.3" + +hint.css@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/hint.css/-/hint.css-2.4.1.tgz#cf3396c2df216974c5d9533ee30f3030d7378f9b" + +hmac-drbg@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +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.4.2" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.4.2.tgz#0076b9f46a270506ddbaaea56496897460612a67" + +html-comment-regex@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/html-comment-regex/-/html-comment-regex-1.1.1.tgz#668b93776eaae55ebde8f3ad464b307a4963625e" + +html-entities@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-1.2.1.tgz#0df29351f0721163515dfb9e5543e5f6eed5162f" + +html-minifier@^2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-2.1.7.tgz#9051d6fcbbcf214ed307e1ad74f432bb9ad655cc" + dependencies: + change-case "3.0.x" + clean-css "3.4.x" + commander "2.9.x" + he "1.1.x" + ncname "1.0.x" + relateurl "0.2.x" + uglify-js "2.6.x" + +html-minifier@^3.2.3: + version "3.5.2" + resolved "https://registry.yarnpkg.com/html-minifier/-/html-minifier-3.5.2.tgz#d73bc3ff448942408818ce609bf3fb0ea7ef4eb7" + dependencies: + camel-case "3.0.x" + clean-css "4.1.x" + commander "2.9.x" + he "1.1.x" + ncname "1.0.x" + param-case "2.1.x" + relateurl "0.2.x" + uglify-js "3.0.x" + +html-webpack-plugin@^2.25.0: + version "2.28.0" + resolved "https://registry.yarnpkg.com/html-webpack-plugin/-/html-webpack-plugin-2.28.0.tgz#2e7863b57e5fd48fe263303e2ffc934c3064d009" + dependencies: + bluebird "^3.4.7" + html-minifier "^3.2.3" + loader-utils "^0.2.16" + lodash "^4.17.3" + pretty-error "^2.0.2" + toposort "^1.0.0" + +htmlparser2@^3.8.2: + version "3.9.2" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.9.2.tgz#1bdf87acca0f3f9e53fa4fcceb0f4b4cbb00b338" + dependencies: + domelementtype "^1.3.0" + domhandler "^2.3.0" + domutils "^1.5.1" + entities "^1.1.1" + inherits "^2.0.1" + readable-stream "^2.0.2" + +htmlparser2@~3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-3.3.0.tgz#cc70d05a59f6542e43f0e685c982e14c924a9efe" + dependencies: + domelementtype "1" + domhandler "2.1" + domutils "1.1" + readable-stream "1.0" + +http-errors@~1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.1.tgz#5f8b8ed98aca545656bf572997387f904a722257" + dependencies: + depd "1.1.0" + inherits "2.0.3" + setprototypeof "1.0.3" + statuses ">= 1.3.1 < 2" + +http-proxy-middleware@^0.17.4: + version "0.17.4" + resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.17.4.tgz#642e8848851d66f09d4f124912846dbaeb41b833" + dependencies: + http-proxy "^1.16.2" + is-glob "^3.1.0" + lodash "^4.17.2" + micromatch "^2.3.11" + +http-proxy@^1.16.2: + version "1.16.2" + resolved "https://registry.yarnpkg.com/http-proxy/-/http-proxy-1.16.2.tgz#06dff292952bf64dbe8471fa9df73066d4f37742" + dependencies: + eventemitter3 "1.x.x" + requires-port "1.x.x" + +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" + +https-browserify@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/https-browserify/-/https-browserify-0.0.1.tgz#3f91365cabe60b77ed0ebba24b454e3e09d95a82" + +husl@^5.0.0: + version "5.0.3" + resolved "https://registry.yarnpkg.com/husl/-/husl-5.0.3.tgz#ee272aaff1bebe40df3588ed007b70de7e679788" + +icss-replace-symbols@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz#06ea6f83679a7749e386cfe1fe812ae5db223ded" + +ieee754@^1.1.4, ieee754@^1.1.6: + version "1.1.8" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.8.tgz#be33d40ac10ef1926701f6f08a2d86fbfd1ad3e4" + +ignore@^3.2.0: + version "3.3.3" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-3.3.3.tgz#432352e57accd87ab3110e82d3fea0e47812156d" + +imports-loader@^0.7.0: + version "0.7.1" + resolved "https://registry.yarnpkg.com/imports-loader/-/imports-loader-0.7.1.tgz#f204b5f34702a32c1db7d48d89d5e867a0441253" + dependencies: + loader-utils "^1.0.2" + source-map "^0.5.6" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + +in-publish@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" + +incremental-convex-hull@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/incremental-convex-hull/-/incremental-convex-hull-1.0.1.tgz#51428c14cb9d9a6144bfe69b2851fb377334be1e" + dependencies: + robust-orientation "^1.1.2" + simplicial-complex "^1.0.0" + +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + dependencies: + repeating "^2.0.0" + +indexes-of@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607" + +indexof@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/indexof/-/indexof-0.0.1.tgz#82dc336d232b9062179d05ab3293a66059fd435d" + +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.3, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.0, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + +inherits@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.1.tgz#b17d08d326b4423e568eff719f91b0b1cbdf69f1" + +ini@^1.3.4, 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.3" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.3.tgz#cbc35c62eeee73f19ab7b10a801511401afc0f90" + +interval-tree-1d@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/interval-tree-1d/-/interval-tree-1d-1.0.3.tgz#8fdbde02b6b2c7dbdead636bcbed8e08710d85c1" + dependencies: + binary-search-bounds "^1.0.0" + +invariant@^2.2.0: + 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" + +invert-permutation@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-permutation/-/invert-permutation-1.0.0.tgz#a0a78042eadb36bc17551e787efd1439add54933" + +iota-array@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/iota-array/-/iota-array-1.0.0.tgz#81ef57fe5d05814cd58c2483632a99c30a0e8087" + +ipaddr.js@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.3.0.tgz#1e03a52fdad83a8bbb2b25cbf4998b4cffcd3dec" + +is-absolute-url@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-2.1.0.tgz#50530dfb84fcc9aa7dbe7852e83a37b93b9f2aa6" + +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, is-buffer@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.5.tgz#1f3b26ef613b214b88cbca23cc6c01d87961eecc" + +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-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + +is-dotfile@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.3.tgz#a6a2f32ffd2dfb04f5ca25ecd0f6b83cf798a1e1" + +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-extglob@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + +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-function@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-function/-/is-function-1.0.1.tgz#12cfb98b65b57dd3d193a3121f5f6e2f437602b5" + +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-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + dependencies: + is-extglob "^2.1.0" + +is-lower-case@^1.1.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/is-lower-case/-/is-lower-case-1.1.3.tgz#7e147be4768dc466db3bfb21cc60b31e6ad69393" + dependencies: + lower-case "^1.1.0" + +is-mobile@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/is-mobile/-/is-mobile-0.2.2.tgz#0e2e006d99ed2c2155b761df80f2a3619ae2ad9f" + +is-my-json-valid@^2.10.0: + version "2.16.0" + resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.16.0.tgz#f079dd9bfdae65ee2038aae8acbc86ab109e3693" + 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-plain-obj@^1.0.0, is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + +is-plain-object@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.3.tgz#c15bf3e4b66b62d72efaf2925848663ecbc619b6" + dependencies: + isobject "^3.0.0" + +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-svg@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-svg/-/is-svg-2.1.0.tgz#cf61090da0d9efbcab8722deba6f032208dbb0e9" + dependencies: + html-comment-regex "^1.1.0" + +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-upper-case@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-upper-case/-/is-upper-case-1.1.2.tgz#8d0b1fa7e7933a1e58483600ec7d9661cbaf756f" + dependencies: + upper-case "^1.1.0" + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + +is-windows@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.1.tgz#310db70f742d259a16a369202b51af84233310d9" + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + +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" + +isobject@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.0.tgz#39565217f3661789e8a0a0c080d5f7e6bc46e1a0" + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + +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-base64@^2.1.8, js-base64@^2.1.9: + version "2.1.9" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" + +js-beautify@^1.6.3: + version "1.6.14" + resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.6.14.tgz#d3b8f7322d02b9277d58bd238264c327e58044cd" + dependencies: + config-chain "~1.1.5" + editorconfig "^0.13.2" + mkdirp "~0.5.0" + nopt "~3.0.1" + +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.4.3, js-yaml@^3.5.1: + version "3.8.4" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.8.4.tgz#520b4564f86573ba96662af85a8cafa7b4b5a6f6" + dependencies: + argparse "^1.0.7" + esprima "^3.1.1" + +js-yaml@~3.7.0: + 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.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + +jsesc@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b" + +jsesc@~0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-0.5.0.tgz#e7dee66e35d6fc16f710fe91d5cf69f70f08911d" + +json-loader@^0.5.4: + version "0.5.4" + resolved "https://registry.yarnpkg.com/json-loader/-/json-loader-0.5.4.tgz#8baa1365a632f58a3c46d20175fc6002c96e37de" + +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" + +json5@^0.5.0, json5@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-0.5.1.tgz#1eade7acc012034ad84e2396767ead9fa5495821" + +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + +jsonlint-lines-primitives@~1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/jsonlint-lines-primitives/-/jsonlint-lines-primitives-1.6.0.tgz#bb89f60c8b9b612fd913ddaa236649b840d86611" + dependencies: + JSV ">= 4.0.x" + nomnom ">= 1.5.x" + +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.4.0" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.0.tgz#a3b87e40298d8c380552d8cc7628a0bb95a22918" + dependencies: + assert-plus "1.0.0" + extsprintf "1.0.2" + json-schema "0.2.3" + verror "1.3.6" + +jump.js@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/jump.js/-/jump.js-1.0.2.tgz#e0641b47f40a38f2139c25fda0500bf28e43015a" + +kdbush@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/kdbush/-/kdbush-1.0.1.tgz#3cbd03e9dead9c0f6f66ccdb96450e5cecc640e0" + +kind-of@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-2.0.1.tgz#018ec7a4ce7e3a86cb9141be519d24c8faa981b5" + dependencies: + is-buffer "^1.0.2" + +kind-of@^3.0.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + dependencies: + is-buffer "^1.1.5" + +lazy-cache@^0.2.3: + version "0.2.7" + resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-0.2.7.tgz#7feddf2dcb6edb77d11ef1d117ab5ffdf0ab1b65" + +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" + +loader-fs-cache@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/loader-fs-cache/-/loader-fs-cache-1.0.1.tgz#56e0bf08bd9708b26a765b68509840c8dec9fdbc" + dependencies: + find-cache-dir "^0.1.1" + mkdirp "0.5.1" + +loader-runner@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-2.3.0.tgz#f482aea82d543e07921700d5a46ef26fdac6b8a2" + +loader-utils@^0.2.16: + version "0.2.17" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-0.2.17.tgz#f86e6374d43205a6e6c60e9196f17c0299bfb348" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.0" + object-assign "^4.0.1" + +loader-utils@^1.0.1, loader-utils@^1.0.2, loader-utils@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.1.0.tgz#c98aef488bcceda2ffb5e2de646d6a754429f5cd" + dependencies: + big.js "^3.1.3" + emojis-list "^2.0.0" + json5 "^0.5.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._baseisequal@^3.0.0: + version "3.0.7" + resolved "https://registry.yarnpkg.com/lodash._baseisequal/-/lodash._baseisequal-3.0.7.tgz#d8025f76339d29342767dcc887ce5cb95a5b51f1" + dependencies: + lodash.isarray "^3.0.0" + lodash.istypedarray "^3.0.0" + lodash.keys "^3.0.0" + +lodash._basetostring@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" + +lodash._basevalues@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" + +lodash._bindcallback@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._bindcallback/-/lodash._bindcallback-3.0.1.tgz#e531c27644cf8b57a99e17ed95b35c748789392e" + +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._reescape@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" + +lodash._reevaluate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" + +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + +lodash._root@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" + +lodash.assign@^4.0.3, lodash.assign@^4.0.6, lodash.assign@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.assign/-/lodash.assign-4.2.0.tgz#0d99f3ccd7a6d261d19bdaeb9245005d285808e7" + +lodash.camelcase@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" + +lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + +lodash.escape@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" + dependencies: + lodash._root "^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.isequal@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-3.0.4.tgz#1c35eb3b6ef0cd1ff51743e3ea3cf7fdffdacb64" + dependencies: + lodash._baseisequal "^3.0.0" + lodash._bindcallback "^3.0.0" + +lodash.istypedarray@^3.0.0: + version "3.0.6" + resolved "https://registry.yarnpkg.com/lodash.istypedarray/-/lodash.istypedarray-3.0.6.tgz#c9a477498607501d8e8494d283b87c39281cef62" + +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.memoize@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" + +lodash.mergewith@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.mergewith/-/lodash.mergewith-4.6.0.tgz#150cf0a16791f5903b8891eab154609274bdea55" + +lodash.restparam@^3.0.0: + version "3.6.1" + resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" + +lodash.tail@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" + +lodash.template@^3.0.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" + dependencies: + lodash._basecopy "^3.0.0" + lodash._basetostring "^3.0.0" + lodash._basevalues "^3.0.0" + lodash._isiterateecall "^3.0.0" + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + lodash.keys "^3.0.0" + lodash.restparam "^3.0.0" + lodash.templatesettings "^3.0.0" + +lodash.templatesettings@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.escape "^3.0.0" + +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + +lodash@^4.0.0, lodash@^4.14.0, lodash@^4.17.2, lodash@^4.17.3, 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" + +lodash@~4.16.4: + version "4.16.6" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.16.6.tgz#d22c9ac660288f3843e16ba7d2b5d06cca27d777" + +log-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-1.0.2.tgz#376ff7b58ea3086a0f09facc74617eca501e1a18" + dependencies: + chalk "^1.0.0" + +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.1" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.3.1.tgz#d1a8ad33fa9ce0e713d65fdd0ac8b748d478c848" + dependencies: + js-tokens "^3.0.0" + +lory.js@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/lory.js/-/lory.js-2.2.1.tgz#e45ff82f1e403ee9df5e9c01b31636a09f45a743" + +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + +lower-case-first@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/lower-case-first/-/lower-case-first-1.0.2.tgz#e5da7c26f29a7073be02d52bac9980e5922adfa1" + dependencies: + lower-case "^1.1.2" + +lower-case@^1.1.0, lower-case@^1.1.1, lower-case@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" + +lru-cache@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee" + dependencies: + pseudomap "^1.0.1" + +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" + +macaddress@^0.2.8: + version "0.2.8" + resolved "https://registry.yarnpkg.com/macaddress/-/macaddress-0.2.8.tgz#5904dc537c39ec6dbefeae902327135fa8511f12" + +map-limit@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/map-limit/-/map-limit-0.0.1.tgz#eb7961031c0f0e8d001bf2d56fab685d58822f38" + dependencies: + once "~1.3.0" + +map-obj@^1.0.0, map-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + +mapbox-gl-function@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/mapbox-gl-function/-/mapbox-gl-function-1.3.0.tgz#cee3d95750c189d45e83ab41a0a57fc2a8a509bc" + +"mapbox-gl-shaders@github:mapbox/mapbox-gl-shaders#de2ab007455aa2587c552694c68583f94c9f2747": + version "1.0.0" + resolved "https://codeload.github.com/mapbox/mapbox-gl-shaders/tar.gz/de2ab007455aa2587c552694c68583f94c9f2747" + dependencies: + brfs "^1.4.0" + +"mapbox-gl-style-spec@github:mapbox/mapbox-gl-style-spec#83b1a3e5837d785af582efd5ed1a212f2df6a4ae": + version "8.8.0" + resolved "https://codeload.github.com/mapbox/mapbox-gl-style-spec/tar.gz/83b1a3e5837d785af582efd5ed1a212f2df6a4ae" + dependencies: + csscolorparser "~1.0.2" + jsonlint-lines-primitives "~1.6.0" + lodash.isequal "^3.0.4" + minimist "0.0.8" + rw "^0.1.4" + sort-object "^0.3.2" + +mapbox-gl-supported@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mapbox-gl-supported/-/mapbox-gl-supported-1.2.0.tgz#cbd34df894206cadda9a33c8d9a4609f26bb1989" + +mapbox-gl@^0.22.0: + version "0.22.1" + resolved "https://registry.yarnpkg.com/mapbox-gl/-/mapbox-gl-0.22.1.tgz#92a965547d4c2f24c22cbc487eeda48694cb627a" + dependencies: + csscolorparser "^1.0.2" + earcut "^2.0.3" + feature-filter "^2.2.0" + geojson-rewind "^0.1.0" + geojson-vt "^2.4.0" + gl-matrix "^2.3.1" + grid-index "^1.0.0" + mapbox-gl-function "^1.2.1" + mapbox-gl-shaders mapbox/mapbox-gl-shaders#de2ab007455aa2587c552694c68583f94c9f2747 + mapbox-gl-style-spec mapbox/mapbox-gl-style-spec#83b1a3e5837d785af582efd5ed1a212f2df6a4ae + mapbox-gl-supported "^1.2.0" + pbf "^1.3.2" + pngjs "^2.2.0" + point-geometry "^0.0.0" + quickselect "^1.0.0" + request "^2.39.0" + resolve-url "^0.2.1" + shelf-pack "^1.0.0" + supercluster "^2.0.1" + unassertify "^2.0.0" + unitbezier "^0.0.0" + vector-tile "^1.3.0" + vt-pbf "^2.0.2" + webworkify "^1.3.0" + whoots-js "^2.0.0" + +marching-simplex-table@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/marching-simplex-table/-/marching-simplex-table-1.0.0.tgz#bc16256e0f8f9b558aa9b2872f8832d9433f52ea" + dependencies: + convex-hull "^1.0.3" + +mat4-decompose@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mat4-decompose/-/mat4-decompose-1.0.4.tgz#65eb4fe39d70878f7a444eb4624d52f7e7eb2faf" + dependencies: + gl-mat4 "^1.0.1" + gl-vec3 "^1.0.2" + +mat4-interpolate@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mat4-interpolate/-/mat4-interpolate-1.0.4.tgz#55ffe9eb3c35295e2c0d5a9f7725d9068a89ff74" + dependencies: + gl-mat4 "^1.0.1" + gl-vec3 "^1.0.2" + mat4-decompose "^1.0.3" + mat4-recompose "^1.0.3" + quat-slerp "^1.0.0" + +mat4-recompose@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mat4-recompose/-/mat4-recompose-1.0.4.tgz#3953c230ff2473dc772ee014a52c925cf81b0e4d" + dependencies: + gl-mat4 "^1.0.1" + +math-expression-evaluator@^1.2.14: + version "1.2.17" + resolved "https://registry.yarnpkg.com/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz#de819fdbcd84dccd8fae59c6aeb79615b9d266ac" + +matrix-camera-controller@^2.1.1, matrix-camera-controller@^2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/matrix-camera-controller/-/matrix-camera-controller-2.1.3.tgz#35e5260cc1cd550962ba799f2d8d4e94b1a39370" + dependencies: + binary-search-bounds "^1.0.0" + gl-mat4 "^1.1.2" + gl-vec3 "^1.0.3" + mat4-interpolate "^1.0.3" + +mdi@^1.8.36: + version "1.9.33" + resolved "https://registry.yarnpkg.com/mdi/-/mdi-1.9.33.tgz#3caf6d95fc6b800633630bd62ba0cf1fbde6b2e2" + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + +memory-fs@^0.4.0, memory-fs@~0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/memory-fs/-/memory-fs-0.4.1.tgz#3a9a20b8462523e447cfbc7e8bb80ed667bfc552" + dependencies: + errno "^0.1.3" + readable-stream "^2.0.1" + +meow@^3.7.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + +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" + +miller-rabin@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/miller-rabin/-/miller-rabin-4.0.0.tgz#4a62fb1d42933c05583982f4c716f6fb9e6c6d3d" + dependencies: + bn.js "^4.0.0" + brorand "^1.0.1" + +mime-db@~1.27.0: + version "1.27.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.27.0.tgz#820f572296bbd20ec25ed55e5b5de869e5436eb1" + +mime-types@^2.1.12, mime-types@~2.1.11, mime-types@~2.1.15, mime-types@~2.1.7: + version "2.1.15" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.15.tgz#a4ebf5064094569237b8cf70046776d09fc92aed" + dependencies: + mime-db "~1.27.0" + +mime@1.3.4: + version "1.3.4" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.4.tgz#115f9e3b6b3daf2959983cb38f149a2d40eb5d53" + +mime@1.3.x, mime@^1.3.4: + version "1.3.6" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.3.6.tgz#591d84d3653a6b0b4a3b9df8de5aa8108e72e5e0" + +mimic-fn@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.1.0.tgz#e667783d92e89dbd342818b5230b9d62a672ad18" + +minimalistic-assert@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.0.tgz#702be2dda6b37f4836bcb3f5db56641b64a1d3d3" + +minimalistic-crypto-utils@^1.0.0, minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + +"minimatch@2 || 3", minimatch@^3.0.0, minimatch@^3.0.2, minimatch@^3.0.4, minimatch@~3.0.2: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + dependencies: + brace-expansion "^1.1.7" + +minimist@0.0.5: + version "0.0.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.5.tgz#d7aa327bcecf518f9106ac6b8f003fa3bcea8566" + +minimist@0.0.8: + version "0.0.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" + +minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0, minimist@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" + +minireset.css@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/minireset.css/-/minireset.css-0.0.2.tgz#5f3fc8184559a9278cfe05db646fb0809cc53f02" + +mixin-object@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" + dependencies: + for-in "^0.1.3" + is-extendable "^0.1.1" + +mkdirp@0.5.1, mkdirp@0.5.x, "mkdirp@>=0.5 0", mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0, 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" + +moment@^2.10.6: + version "2.18.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.18.1.tgz#c36193dd3ce1c2eed2adb7c802dbbc77a81b1c0f" + +monotone-convex-hull-2d@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/monotone-convex-hull-2d/-/monotone-convex-hull-2d-1.0.1.tgz#47f5daeadf3c4afd37764baa1aa8787a40eee08c" + dependencies: + robust-orientation "^1.1.3" + +mouse-change@^1.1.1, mouse-change@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/mouse-change/-/mouse-change-1.4.0.tgz#c2b77e5bfa34a43ce1445c8157a4e4dc9895c14f" + dependencies: + mouse-event "^1.0.0" + +mouse-event-offset@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mouse-event-offset/-/mouse-event-offset-3.0.2.tgz#dfd86a6e248c6ba8cad53b905d5037a2063e9984" + +mouse-event@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/mouse-event/-/mouse-event-1.0.5.tgz#b3789edb7109997d5a932d1d01daa1543a501732" + +mouse-wheel@^1.0.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mouse-wheel/-/mouse-wheel-1.2.0.tgz#6d2903b1ea8fb48e61f1b53b9036773f042cdb5c" + dependencies: + right-now "^1.0.0" + signum "^1.0.0" + to-px "^1.0.1" + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + +multi-stage-sourcemap@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/multi-stage-sourcemap/-/multi-stage-sourcemap-0.2.1.tgz#b09fc8586eaa17f81d575c4ad02e0f7a3f6b1105" + dependencies: + source-map "^0.1.34" + +multipipe@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" + dependencies: + duplexer2 "0.0.2" + +mumath@^3.0.0: + version "3.3.4" + resolved "https://registry.yarnpkg.com/mumath/-/mumath-3.3.4.tgz#48d4a0f0fd8cad4e7b32096ee89b161a63d30bbf" + dependencies: + almost-equal "^1.1.0" + +murmurhash-js@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/murmurhash-js/-/murmurhash-js-1.0.0.tgz#b06278e21fc6c37fa5313732b0412bcb6ae15f51" + +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, nan@^2.3.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.6.2.tgz#e4ff34e6c95fdfb5aecc08de6596f43605a7db45" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + +ncname@1.0.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ncname/-/ncname-1.0.0.tgz#5b57ad18b1ca092864ef62b0b1ed8194f383b71c" + dependencies: + xml-char-classes "^1.0.0" + +ndarray-extract-contour@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ndarray-extract-contour/-/ndarray-extract-contour-1.0.1.tgz#0aee113a3a33b226b90c4888cf877bf4751305e4" + dependencies: + typedarray-pool "^1.0.0" + +ndarray-fill@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/ndarray-fill/-/ndarray-fill-1.0.2.tgz#a30a60f7188e0c9582fcdd58896acdcb522a1ed6" + dependencies: + cwise "^1.0.10" + +ndarray-gradient@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ndarray-gradient/-/ndarray-gradient-1.0.0.tgz#b7491a515c6a649f19a62324fff6f27fc8c25393" + dependencies: + cwise-compiler "^1.0.0" + dup "^1.0.0" + +ndarray-homography@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ndarray-homography/-/ndarray-homography-1.0.0.tgz#c35516ea86bc2862b4e804a236a2707309fe296b" + dependencies: + gl-matrix-invert "^1.0.0" + ndarray-warp "^1.0.0" + +ndarray-linear-interpolate@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/ndarray-linear-interpolate/-/ndarray-linear-interpolate-1.0.0.tgz#78bc92b85b9abc15b6e67ee65828f9e2137ae72b" + +ndarray-ops@^1.1.0, ndarray-ops@^1.2.1, ndarray-ops@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/ndarray-ops/-/ndarray-ops-1.2.2.tgz#59e88d2c32a7eebcb1bc690fae141579557a614e" + dependencies: + cwise-compiler "^1.0.0" + +ndarray-pack@^1.0.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ndarray-pack/-/ndarray-pack-1.2.1.tgz#8caebeaaa24d5ecf70ff86020637977da8ee585a" + dependencies: + cwise-compiler "^1.1.2" + ndarray "^1.0.13" + +ndarray-scratch@^1.1.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ndarray-scratch/-/ndarray-scratch-1.2.0.tgz#6304636d62eba93db4727ac13c693341dba50e01" + dependencies: + ndarray "^1.0.14" + ndarray-ops "^1.2.1" + typedarray-pool "^1.0.2" + +ndarray-sort@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ndarray-sort/-/ndarray-sort-1.0.1.tgz#fea05b4cb834c7f4e0216a354f3ca751300dfd6a" + dependencies: + typedarray-pool "^1.0.0" + +ndarray-warp@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ndarray-warp/-/ndarray-warp-1.0.1.tgz#a8a125aaabba0bebf93bd6ca83e6abd6822a34e0" + dependencies: + cwise "^1.0.4" + ndarray-linear-interpolate "^1.0.0" + +ndarray@^1.0.11, ndarray@^1.0.13, ndarray@^1.0.14, ndarray@^1.0.15, ndarray@^1.0.16, ndarray@^1.0.18: + version "1.0.18" + resolved "https://registry.yarnpkg.com/ndarray/-/ndarray-1.0.18.tgz#b60d3a73224ec555d0faa79711e502448fd3f793" + dependencies: + iota-array "^1.0.0" + is-buffer "^1.0.2" + +negotiator@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.1.tgz#2b327184e8992101177b28563fb5e7102acd0ca9" + +neo-async@^1.0.0: + version "1.8.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-1.8.2.tgz#31795888b79dd04357a7c52113a65183e93b6735" + +nextafter@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/nextafter/-/nextafter-1.0.0.tgz#b7d77b535310e3e097e6025abb0a903477ec1a3a" + dependencies: + double-bits "^1.1.0" + +no-case@^2.2.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/no-case/-/no-case-2.3.1.tgz#7aeba1c73a52184265554b7dc03baf720df80081" + dependencies: + lower-case "^1.1.1" + +node-gyp@^3.3.1: + version "3.6.1" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-3.6.1.tgz#19561067ff185464aded478212681f47fd578cbc" + dependencies: + fstream "^1.0.0" + glob "^7.0.3" + graceful-fs "^4.1.2" + minimatch "^3.0.2" + mkdirp "^0.5.0" + nopt "2 || 3" + npmlog "0 || 1 || 2 || 3 || 4" + osenv "0" + request "2" + rimraf "2" + semver "~5.3.0" + tar "^2.0.0" + which "1" + +node-libs-browser@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/node-libs-browser/-/node-libs-browser-2.0.0.tgz#a3a59ec97024985b46e958379646f96c4b616646" + dependencies: + assert "^1.1.1" + browserify-zlib "^0.1.4" + buffer "^4.3.0" + console-browserify "^1.1.0" + constants-browserify "^1.0.0" + crypto-browserify "^3.11.0" + domain-browser "^1.1.1" + events "^1.0.0" + https-browserify "0.0.1" + os-browserify "^0.2.0" + path-browserify "0.0.0" + process "^0.11.0" + punycode "^1.2.4" + querystring-es3 "^0.2.0" + readable-stream "^2.0.5" + stream-browserify "^2.0.1" + stream-http "^2.3.1" + string_decoder "^0.10.25" + timers-browserify "^2.0.2" + tty-browserify "0.0.0" + url "^0.11.0" + util "^0.10.3" + vm-browserify "0.0.4" + +node-pre-gyp@^0.6.29: + version "0.6.36" + resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.36.tgz#db604112cb74e0d477554e9b505b17abddfab786" + dependencies: + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.0.2" + rc "^1.1.7" + request "^2.81.0" + rimraf "^2.6.1" + semver "^5.3.0" + tar "^2.2.1" + tar-pack "^3.4.0" + +node-sass@^3.9.3: + version "3.13.1" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-3.13.1.tgz#7240fbbff2396304b4223527ed3020589c004fc2" + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.3.2" + node-gyp "^3.3.1" + npmlog "^4.0.0" + request "^2.61.0" + sass-graph "^2.1.1" + +node-sass@^4.1.1: + version "4.5.3" + resolved "https://registry.yarnpkg.com/node-sass/-/node-sass-4.5.3.tgz#d09c9d1179641239d1b97ffc6231fdcec53e1568" + dependencies: + async-foreach "^0.1.3" + chalk "^1.1.1" + cross-spawn "^3.0.0" + gaze "^1.0.0" + get-stdin "^4.0.1" + glob "^7.0.3" + in-publish "^2.0.0" + lodash.assign "^4.2.0" + lodash.clonedeep "^4.3.2" + lodash.mergewith "^4.6.0" + meow "^3.7.0" + mkdirp "^0.5.1" + nan "^2.3.2" + node-gyp "^3.3.1" + npmlog "^4.0.0" + request "^2.79.0" + sass-graph "^2.1.1" + stdout-stream "^1.4.0" + +"nomnom@>= 1.5.x": + version "1.8.1" + resolved "https://registry.yarnpkg.com/nomnom/-/nomnom-1.8.1.tgz#2151f722472ba79e50a76fc125bb8c8f2e4dc2a7" + dependencies: + chalk "~0.4.0" + underscore "~1.6.0" + +"nopt@2 || 3", nopt@~3.0.1: + version "3.0.6" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" + dependencies: + abbrev "1" + +nopt@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.1.tgz#d0d4685afd5415193c8c7505602d0d17cd64474d" + dependencies: + abbrev "1" + osenv "^0.1.4" + +normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: + version "2.3.8" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.8.tgz#d819eda2a9dedbd1ffa563ea4071d936782295bb" + 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.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-range@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/normalize-range/-/normalize-range-0.1.2.tgz#2d10c06bdfd312ea9777695a4d28439456b75942" + +normalize-url@^1.4.0: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + +normals@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/normals/-/normals-1.1.0.tgz#325b595ed34afe467a6c55a14fd9085787ff59c0" + +"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: + version "4.1.0" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.0.tgz#dc59bee85f64f00ed424efb2af0783df25d1c0b5" + dependencies: + are-we-there-yet "~1.1.2" + console-control-strings "~1.1.0" + gauge "~2.7.3" + set-blocking "~2.0.0" + +nprogress@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/nprogress/-/nprogress-0.2.0.tgz#cb8f34c53213d895723fcbab907e9422adbcafb1" + +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" + +num2fraction@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + +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" + +numeric@^1.2.6: + version "1.2.6" + resolved "https://registry.yarnpkg.com/numeric/-/numeric-1.2.6.tgz#765b02bef97988fcf880d4eb3f36b80fa31335aa" + +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@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" + +object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + +object-hash@^1.1.4: + version "1.1.8" + resolved "https://registry.yarnpkg.com/object-hash/-/object-hash-1.1.8.tgz#28a659cf987d96a4dabe7860289f3b5326c4a03c" + +object-inspect@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-0.4.0.tgz#f5157c116c1455b243b06ee97703392c5ad89fec" + +object-inspect@~1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.2.2.tgz#c82115e4fcc888aea14d64c22e4f17f6a70d5e5a" + +object-keys@^1.0.10, object-keys@^1.0.6, object-keys@^1.0.8: + version "1.0.11" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.0.11.tgz#c54601778ad560f1142ce0e01bcca8b56d13426d" + +object-keys@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-0.4.0.tgz#28a6aae7428dd2c3a92f3d95f21335dd204e0336" + +object.assign@^4.0.1: + 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.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" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + dependencies: + ee-first "1.1.1" + +once@^1.3.0, once@^1.3.3: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + dependencies: + wrappy "1" + +once@~1.3.0: + 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" + +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + dependencies: + mimic-fn "^1.0.0" + +opn@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/opn/-/opn-4.0.2.tgz#7abc22e644dff63b0a96d5ab7f2790c0f01abc95" + dependencies: + object-assign "^4.0.1" + pinkie-promise "^2.0.0" + +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" + +ora@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/ora/-/ora-1.2.0.tgz#32fb3183500efe83f5ea89101785f0ee6060fec9" + dependencies: + chalk "^1.1.1" + cli-cursor "^2.1.0" + cli-spinners "^1.0.0" + log-symbols "^1.0.2" + +orbit-camera-controller@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/orbit-camera-controller/-/orbit-camera-controller-4.0.0.tgz#6e2b36f0e7878663c330f50da9b7ce686c277005" + dependencies: + filtered-vector "^1.2.1" + gl-mat4 "^1.0.3" + +os-browserify@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.2.1.tgz#63fc4ccee5d2d7763d26bbf8601078e6c2e0044f" + +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.0, os-tmpdir@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + +osenv@0, osenv@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.4.tgz#42fe6d5953df06c8064be6f176c3d05aaaa34644" + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +pad-left@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pad-left/-/pad-left-1.0.2.tgz#19e5735ea98395a26cedc6ab926ead10f3100d4c" + dependencies: + repeat-string "^1.3.0" + +pako@~0.2.0: + version "0.2.9" + resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" + +param-case@2.1.x, param-case@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/param-case/-/param-case-2.1.1.tgz#df94fd8cf6531ecf75e6bef9a0858fbc72be2247" + dependencies: + no-case "^2.2.0" + +parchment@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/parchment/-/parchment-1.0.2.tgz#df6aae2fce06dbc1bbc0b949ef82e55ebe0fae13" + +parse-asn1@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse-asn1/-/parse-asn1-5.1.0.tgz#37c4f9b7ed3ab65c74817b5f2480937fbf97c712" + dependencies: + asn1.js "^4.0.0" + browserify-aes "^1.0.0" + create-hash "^1.1.0" + evp_bytestokey "^1.0.0" + pbkdf2 "^3.0.3" + +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" + +parse-unit@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parse-unit/-/parse-unit-1.0.1.tgz#7e1bb6d5bef3874c28e392526a2541170291eecf" + +parseurl@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.1.tgz#c8ab8c9223ba34888aa64a297b28853bec18da56" + +pascal-case@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pascal-case/-/pascal-case-2.0.1.tgz#2d578d3455f660da65eca18ef95b4e0de912761e" + dependencies: + camel-case "^3.0.0" + upper-case-first "^1.1.0" + +path-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-0.0.0.tgz#a0b870729aae214005b7d5032ec2cbbb0fb4451a" + +path-case@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/path-case/-/path-case-2.1.1.tgz#94b8037c372d3fe2906e465bb45e25d226e8eea5" + dependencies: + no-case "^2.2.0" + +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-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + +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" + +pbf@^1.3.2: + version "1.3.7" + resolved "https://registry.yarnpkg.com/pbf/-/pbf-1.3.7.tgz#1e3d047ba3cbe8086ae854a25503ab4537d4335d" + dependencies: + ieee754 "^1.1.6" + resolve-protobuf-schema "^2.0.0" + +pbkdf2@^3.0.3: + version "3.0.12" + resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.0.12.tgz#be36785c5067ea48d806ff923288c5f750b6b8a2" + dependencies: + create-hash "^1.1.2" + create-hmac "^1.1.4" + ripemd160 "^2.0.1" + safe-buffer "^5.0.1" + sha.js "^2.4.8" + +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + +permutation-parity@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/permutation-parity/-/permutation-parity-1.0.0.tgz#0174d51fca704b11b9a4b152b23d537fdc6b5ef4" + dependencies: + typedarray-pool "^1.0.0" + +permutation-rank@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/permutation-rank/-/permutation-rank-1.0.0.tgz#9fd98bbcecf08fbf5994b5eadc94a62e679483b5" + dependencies: + invert-permutation "^1.0.0" + typedarray-pool "^1.0.0" + +pify@^2.0.0, pify@^2.3.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" + +planar-dual@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/planar-dual/-/planar-dual-1.0.2.tgz#b6a4235523b1b0cb79e5f926f8ea335dd982d563" + dependencies: + compare-angle "^1.0.0" + dup "^1.0.0" + +planar-graph-to-polyline@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/planar-graph-to-polyline/-/planar-graph-to-polyline-1.0.5.tgz#882b8605199ba88bfd464c9553303556c52b988a" + dependencies: + edges-to-adjacency-list "^1.0.0" + planar-dual "^1.0.0" + point-in-big-polygon "^2.0.0" + robust-orientation "^1.0.1" + robust-sum "^1.0.0" + two-product "^1.0.0" + uniq "^1.0.0" + +plotly.js@^1.24.2: + version "1.27.1" + resolved "https://registry.yarnpkg.com/plotly.js/-/plotly.js-1.27.1.tgz#8c5ea56073f290ecd9663a60913d75a292bb6af5" + dependencies: + "3d-view" "^2.0.0" + "@plotly/d3-sankey" "^0.5.0" + alpha-shape "^1.0.0" + color-rgba "^1.0.4" + convex-hull "^1.0.3" + country-regex "^1.1.0" + d3 "^3.5.12" + d3-force "^1.0.6" + delaunay-triangulate "^1.1.6" + es6-promise "^3.0.2" + fast-isnumeric "^1.1.1" + gl-contour2d "^1.1.2" + gl-error2d "^1.2.1" + gl-error3d "^1.0.0" + gl-heatmap2d "^1.0.3" + gl-line2d "^1.4.1" + gl-line3d "^1.1.0" + gl-mat4 "^1.1.2" + gl-mesh3d "^1.2.0" + gl-plot2d "^1.2.0" + gl-plot3d "^1.5.4" + gl-pointcloud2d "^1.0.0" + gl-scatter2d "^1.2.2" + gl-scatter2d-sdf "^1.3.9" + gl-scatter3d "^1.0.4" + gl-select-box "^1.0.1" + gl-shader "4.2.0" + gl-spikes2d "^1.0.1" + gl-surface3d "^1.3.0" + mapbox-gl "^0.22.0" + matrix-camera-controller "^2.1.3" + mouse-change "^1.4.0" + mouse-wheel "^1.0.2" + ndarray "^1.0.18" + ndarray-fill "^1.0.2" + ndarray-homography "^1.0.0" + ndarray-ops "^1.2.2" + regl "^1.3.0" + right-now "^1.0.0" + robust-orientation "^1.1.3" + sane-topojson "^2.0.0" + strongly-connected-components "^1.0.1" + superscript-text "^1.0.0" + tinycolor2 "^1.3.0" + topojson-client "^2.1.0" + webgl-context "^2.2.0" + world-calendars "^1.0.3" + +pluralize@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/pluralize/-/pluralize-1.2.1.tgz#d1a21483fd22bb41e58a12fa3421823140897c45" + +pngjs@^2.2.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-2.3.1.tgz#11d1e12b9cb64d63e30c143a330f4c1f567da85f" + +point-geometry@0.0.0, point-geometry@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/point-geometry/-/point-geometry-0.0.0.tgz#6fcbcad7a803b6418247dd6e49c2853c584daff7" + +point-in-big-polygon@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/point-in-big-polygon/-/point-in-big-polygon-2.0.0.tgz#39b613ea6cf17d6b43e188f77f34c44c6b33ba55" + dependencies: + binary-search-bounds "^1.0.0" + interval-tree-1d "^1.0.1" + robust-orientation "^1.1.3" + slab-decomposition "^1.0.1" + +polytope-closest-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/polytope-closest-point/-/polytope-closest-point-1.0.0.tgz#e6e57f4081ab5e8c778b811ef06e2c48ae338c3f" + dependencies: + numeric "^1.2.6" + +postcss-calc@^5.2.0: + version "5.3.1" + resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-5.3.1.tgz#77bae7ca928ad85716e2fda42f261bf7c1d65b5e" + dependencies: + postcss "^5.0.2" + postcss-message-helpers "^2.0.0" + reduce-css-calc "^1.2.6" + +postcss-cli@^2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/postcss-cli/-/postcss-cli-2.6.0.tgz#f0de393caa026fcfc1b1479822989af508ed515d" + dependencies: + globby "^4.1.0" + mkdirp "^0.5.1" + neo-async "^1.0.0" + postcss "^5.0.0" + read-file-stdin "^0.2.0" + resolve "^1.1.6" + yargs "^4.7.1" + optionalDependencies: + chokidar "^1.5.1" + +postcss-colormin@^2.1.8: + version "2.2.2" + resolved "https://registry.yarnpkg.com/postcss-colormin/-/postcss-colormin-2.2.2.tgz#6631417d5f0e909a3d7ec26b24c8a8d1e4f96e4b" + dependencies: + colormin "^1.0.5" + postcss "^5.0.13" + postcss-value-parser "^3.2.3" + +postcss-convert-values@^2.3.4: + version "2.6.1" + resolved "https://registry.yarnpkg.com/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz#bbd8593c5c1fd2e3d1c322bb925dcae8dae4d62d" + dependencies: + postcss "^5.0.11" + postcss-value-parser "^3.1.2" + +postcss-discard-comments@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz#befe89fafd5b3dace5ccce51b76b81514be00e3d" + dependencies: + postcss "^5.0.14" + +postcss-discard-duplicates@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz#b9abf27b88ac188158a5eb12abcae20263b91932" + dependencies: + postcss "^5.0.4" + +postcss-discard-empty@^2.0.1: + version "2.1.0" + resolved "https://registry.yarnpkg.com/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz#d2b4bd9d5ced5ebd8dcade7640c7d7cd7f4f92b5" + dependencies: + postcss "^5.0.14" + +postcss-discard-overridden@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz#8b1eaf554f686fb288cd874c55667b0aa3668d58" + dependencies: + postcss "^5.0.16" + +postcss-discard-unused@^2.2.1: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz#bce30b2cc591ffc634322b5fb3464b6d934f4433" + dependencies: + postcss "^5.0.14" + uniqs "^2.0.0" + +postcss-filter-plugins@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-filter-plugins/-/postcss-filter-plugins-2.0.2.tgz#6d85862534d735ac420e4a85806e1f5d4286d84c" + dependencies: + postcss "^5.0.4" + uniqid "^4.0.0" + +postcss-load-config@^1.1.0, postcss-load-config@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-config/-/postcss-load-config-1.2.0.tgz#539e9afc9ddc8620121ebf9d8c3673e0ce50d28a" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + postcss-load-options "^1.2.0" + postcss-load-plugins "^2.3.0" + +postcss-load-options@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-load-options/-/postcss-load-options-1.2.0.tgz#b098b1559ddac2df04bc0bb375f99a5cfe2b6d8c" + dependencies: + cosmiconfig "^2.1.0" + object-assign "^4.1.0" + +postcss-load-plugins@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/postcss-load-plugins/-/postcss-load-plugins-2.3.0.tgz#745768116599aca2f009fad426b00175049d8d92" + dependencies: + cosmiconfig "^2.1.1" + object-assign "^4.1.0" + +postcss-loader@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/postcss-loader/-/postcss-loader-1.3.3.tgz#a621ea1fa29062a83972a46f54486771301916eb" + dependencies: + loader-utils "^1.0.2" + object-assign "^4.1.1" + postcss "^5.2.15" + postcss-load-config "^1.2.0" + +postcss-merge-idents@^2.1.5: + version "2.1.7" + resolved "https://registry.yarnpkg.com/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz#4c5530313c08e1d5b3bbf3d2bbc747e278eea270" + dependencies: + has "^1.0.1" + postcss "^5.0.10" + postcss-value-parser "^3.1.1" + +postcss-merge-longhand@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz#23d90cd127b0a77994915332739034a1a4f3d658" + dependencies: + postcss "^5.0.4" + +postcss-merge-rules@^2.0.3: + version "2.1.2" + resolved "https://registry.yarnpkg.com/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz#d1df5dfaa7b1acc3be553f0e9e10e87c61b5f721" + dependencies: + browserslist "^1.5.2" + caniuse-api "^1.5.2" + postcss "^5.0.4" + postcss-selector-parser "^2.2.2" + vendors "^1.0.0" + +postcss-message-helpers@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz#a4f2f4fab6e4fe002f0aed000478cdf52f9ba60e" + +postcss-minify-font-values@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz#4b58edb56641eba7c8474ab3526cafd7bbdecb69" + dependencies: + object-assign "^4.0.1" + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-minify-gradients@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz#5dbda11373703f83cfb4a3ea3881d8d75ff5e6e1" + dependencies: + postcss "^5.0.12" + postcss-value-parser "^3.3.0" + +postcss-minify-params@^1.0.4: + version "1.2.2" + resolved "https://registry.yarnpkg.com/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz#ad2ce071373b943b3d930a3fa59a358c28d6f1f3" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.2" + postcss-value-parser "^3.0.2" + uniqs "^2.0.0" + +postcss-minify-selectors@^2.0.4: + version "2.1.1" + resolved "https://registry.yarnpkg.com/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz#b2c6a98c0072cf91b932d1a496508114311735bf" + dependencies: + alphanum-sort "^1.0.2" + has "^1.0.1" + postcss "^5.0.14" + postcss-selector-parser "^2.0.0" + +postcss-modules-extract-imports@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-1.2.0.tgz#66140ecece38ef06bf0d3e355d69bf59d141ea85" + dependencies: + postcss "^6.0.1" + +postcss-modules-local-by-default@^1.0.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-1.2.0.tgz#f7d80c398c5a393fa7964466bd19500a7d61c069" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-scope@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-1.1.0.tgz#d6ea64994c79f97b62a72b426fbe6056a194bb90" + dependencies: + css-selector-tokenizer "^0.7.0" + postcss "^6.0.1" + +postcss-modules-values@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-1.3.0.tgz#ecffa9d7e192518389f42ad0e83f72aec456ea20" + dependencies: + icss-replace-symbols "^1.1.0" + postcss "^6.0.1" + +postcss-normalize-charset@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz#ef9ee71212d7fe759c78ed162f61ed62b5cb93f1" + dependencies: + postcss "^5.0.5" + +postcss-normalize-url@^3.0.7: + version "3.0.8" + resolved "https://registry.yarnpkg.com/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz#108f74b3f2fcdaf891a2ffa3ea4592279fc78222" + dependencies: + is-absolute-url "^2.0.0" + normalize-url "^1.4.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + +postcss-ordered-values@^2.1.0: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz#eec6c2a67b6c412a8db2042e77fe8da43f95c11d" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.1" + +postcss-reduce-idents@^2.2.2: + version "2.4.0" + resolved "https://registry.yarnpkg.com/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz#c2c6d20cc958284f6abfbe63f7609bf409059ad3" + dependencies: + postcss "^5.0.4" + postcss-value-parser "^3.0.2" + +postcss-reduce-initial@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz#68f80695f045d08263a879ad240df8dd64f644ea" + dependencies: + postcss "^5.0.4" + +postcss-reduce-transforms@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz#ff76f4d8212437b31c298a42d2e1444025771ae1" + dependencies: + has "^1.0.1" + postcss "^5.0.8" + postcss-value-parser "^3.0.1" + +postcss-selector-parser@^2.0.0, postcss-selector-parser@^2.2.2: + version "2.2.3" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz#f9437788606c3c9acee16ffe8d8b16297f27bb90" + dependencies: + flatten "^1.0.2" + indexes-of "^1.0.1" + uniq "^1.0.1" + +postcss-svgo@^2.1.1: + version "2.1.6" + resolved "https://registry.yarnpkg.com/postcss-svgo/-/postcss-svgo-2.1.6.tgz#b6df18aa613b666e133f08adb5219c2684ac108d" + dependencies: + is-svg "^2.0.0" + postcss "^5.0.14" + postcss-value-parser "^3.2.3" + svgo "^0.7.0" + +postcss-unique-selectors@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz#981d57d29ddcb33e7b1dfe1fd43b8649f933ca1d" + dependencies: + alphanum-sort "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss-value-parser@^3.0.1, postcss-value-parser@^3.0.2, postcss-value-parser@^3.1.1, postcss-value-parser@^3.1.2, postcss-value-parser@^3.2.3, postcss-value-parser@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz#87f38f9f18f774a4ab4c8a232f5c5ce8872a9d15" + +postcss-zindex@^2.0.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/postcss-zindex/-/postcss-zindex-2.2.0.tgz#d2109ddc055b91af67fc4cb3b025946639d2af22" + dependencies: + has "^1.0.1" + postcss "^5.0.4" + uniqs "^2.0.0" + +postcss@^5.0.0, postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.13, postcss@^5.0.14, postcss@^5.0.16, postcss@^5.0.2, postcss@^5.0.21, postcss@^5.0.4, postcss@^5.0.5, postcss@^5.0.6, postcss@^5.0.8, postcss@^5.2.15, postcss@^5.2.16: + version "5.2.17" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-5.2.17.tgz#cf4f597b864d65c8a492b2eabe9d706c879c388b" + dependencies: + chalk "^1.1.3" + js-base64 "^2.1.9" + source-map "^0.5.6" + supports-color "^3.2.3" + +postcss@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-6.0.1.tgz#000dbd1f8eef217aa368b9a212c5fc40b2a8f3f2" + dependencies: + chalk "^1.1.3" + source-map "^0.5.6" + supports-color "^3.2.3" + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + +preserve@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" + +pretty-error@^2.0.2: + version "2.1.0" + resolved "https://registry.yarnpkg.com/pretty-error/-/pretty-error-2.1.0.tgz#87f4e9d706a24c87d6cbee9fabec001fcf8c75d8" + dependencies: + renderkid "^2.0.1" + utila "~0.4" + +private@^0.1.6, private@~0.1.5: + version "0.1.7" + resolved "https://registry.yarnpkg.com/private/-/private-0.1.7.tgz#68ce5e8a1ef0a23bb570cc28537b5332aba63ef1" + +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" + +process@^0.11.0: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + +progress-bar-webpack-plugin@^1.9.1: + version "1.9.3" + resolved "https://registry.yarnpkg.com/progress-bar-webpack-plugin/-/progress-bar-webpack-plugin-1.9.3.tgz#81fb8bd8e38da6edaf9a20beed79bd978dd63c2a" + dependencies: + chalk "^1.1.1" + object.assign "^4.0.1" + progress "^1.1.8" + +progress-tracker@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/progress-tracker/-/progress-tracker-1.0.0.tgz#86df6909f9649bc5a347459725ba9c5bbb666bed" + +progress@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/progress/-/progress-1.1.8.tgz#e260c78f6161cdd9b0e56cc3e0a85de17c7a57be" + +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + +protocol-buffers-schema@^2.0.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/protocol-buffers-schema/-/protocol-buffers-schema-2.2.0.tgz#d29c6cd73fb655978fb6989691180db844119f61" + +proxy-addr@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-1.1.4.tgz#27e545f6960a44a627d9b44467e35c1b6b4ce2f3" + dependencies: + forwarded "~0.1.0" + ipaddr.js "1.3.0" + +prr@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/prr/-/prr-0.0.0.tgz#1a84b85908325501411853d0081ee3fa86e2926a" + +pseudomap@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + +public-encrypt@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/public-encrypt/-/public-encrypt-4.0.0.tgz#39f699f3a46560dd5ebacbca693caf7c65c18cc6" + dependencies: + bn.js "^4.1.0" + browserify-rsa "^4.0.0" + create-hash "^1.1.0" + parse-asn1 "^5.0.0" + randombytes "^2.0.1" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + +punycode@^1.2.4, 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.4.0, qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + +quat-slerp@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/quat-slerp/-/quat-slerp-1.0.1.tgz#2baa15ce3a6bbdc3241d972eb17283139ed69f29" + dependencies: + gl-quat "^1.0.0" + +query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + +querystring-es3@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/querystring-es3/-/querystring-es3-0.2.1.tgz#9ec61f79049875707d69414596fd907a4d711e73" + +querystring@0.2.0, querystring@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + +quickselect@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/quickselect/-/quickselect-1.0.0.tgz#02630818f9aae4ecab26f0103f98d061c17c58f3" + +quill-delta@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/quill-delta/-/quill-delta-3.2.0.tgz#617041bb364d686ceea337bfda76a70b9ad639a2" + dependencies: + deep-equal "^1.0.1" + extend "^3.0.0" + fast-diff "^1.0.1" + +quill@1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/quill/-/quill-1.1.0.tgz#881d30920552ed8a16d39b23010eb587d237a1ec" + dependencies: + clone "~2.0.0" + deep-equal "~1.0.1" + eventemitter3 "~2.0.1" + extend "~3.0.0" + parchment "1.0.2" + quill-delta "3.2.0" + +quote-stream@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-1.0.2.tgz#84963f8c9c26b942e153feeb53aae74652b7e0b2" + dependencies: + buffer-equal "0.0.1" + minimist "^1.1.3" + through2 "^2.0.0" + +quote-stream@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/quote-stream/-/quote-stream-0.0.0.tgz#cde29e94c409b16e19dc7098b89b6658f9721d3b" + dependencies: + minimist "0.0.8" + through2 "~0.4.1" + +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" + +randombytes@^2.0.0, randombytes@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.0.3.tgz#674c99760901c3c4112771a31e521dc349cc09ec" + +range-parser@^1.0.3, range-parser@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.0.tgz#f49be6b487894ddc40dcc94a322f611092e00d5e" + +rat-vec@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/rat-vec/-/rat-vec-1.1.1.tgz#0dde2b66b7b34bb1bcd2a23805eac806d87fd17f" + dependencies: + big-rat "^1.0.3" + +rc@^1.1.7: + version "1.2.1" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" + dependencies: + deep-extend "~0.4.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +read-file-stdin@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/read-file-stdin/-/read-file-stdin-0.2.1.tgz#25eccff3a153b6809afacb23ee15387db9e0ee61" + dependencies: + gather-stream "^1.0.0" + +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.0, "readable-stream@>=1.0.33-1 <1.1.0-0", readable-stream@~1.0.17, readable-stream@~1.0.26, readable-stream@~1.0.27-1: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + 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, readable-stream@^2.0.1, readable-stream@^2.0.2, readable-stream@^2.0.5, readable-stream@^2.0.6, readable-stream@^2.1.4, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.2.6: + version "2.2.9" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.2.9.tgz#cf78ec6f4a6d1eb43d26488cac97f042e74b7fc8" + 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 "~1.0.0" + util-deprecate "~1.0.1" + +readable-stream@~1.1.9: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +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.12: + 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" + +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +reduce-css-calc@^1.2.6: + version "1.3.0" + resolved "https://registry.yarnpkg.com/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz#747c914e049614a4c9cfbba629871ad1d2927716" + dependencies: + balanced-match "^0.4.2" + math-expression-evaluator "^1.2.14" + reduce-function-call "^1.0.1" + +reduce-function-call@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/reduce-function-call/-/reduce-function-call-1.0.2.tgz#5a200bf92e0e37751752fe45b0ab330fd4b6be99" + dependencies: + balanced-match "^0.4.2" + +reduce-simplicial-complex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/reduce-simplicial-complex/-/reduce-simplicial-complex-1.0.0.tgz#74d696a2f835f7a6dcd92065fd8c5181f2edf8bc" + dependencies: + cell-orientation "^1.0.1" + compare-cell "^1.0.0" + compare-oriented-cell "^1.0.1" + +regenerate@^1.2.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/regenerate/-/regenerate-1.3.2.tgz#d1941c67bad437e1be76433add5b385f95b19260" + +regenerator-runtime@^0.10.0: + version "0.10.5" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz#336c3efc1220adcedda2c9fab67b5a7955a33658" + +regenerator-transform@0.9.11: + version "0.9.11" + resolved "https://registry.yarnpkg.com/regenerator-transform/-/regenerator-transform-0.9.11.tgz#3a7d067520cb7b7176769eb5ff868691befe1283" + 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@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/regexpu-core/-/regexpu-core-1.0.0.tgz#86a763f58ee4d7c2f6b102e4764050de7ed90c6b" + dependencies: + regenerate "^1.2.1" + regjsgen "^0.2.0" + regjsparser "^0.1.4" + +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" + +regl@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/regl/-/regl-1.3.0.tgz#ccde82eff8a8a068a559581ceacbef1afea78ebd" + +relateurl@0.2.x: + version "0.2.7" + resolved "https://registry.yarnpkg.com/relateurl/-/relateurl-0.2.7.tgz#54dbf377e51440aca90a4cd274600d3ff2d888a9" + +remove-trailing-separator@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.0.1.tgz#615ebb96af559552d4bf4057c8436d486ab63cc4" + +renderkid@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/renderkid/-/renderkid-2.0.1.tgz#898cabfc8bede4b7b91135a3ffd323e58c0db319" + dependencies: + css-select "^1.1.0" + dom-converter "~0.1" + htmlparser2 "~3.3.0" + strip-ansi "^3.0.0" + utila "~0.3" + +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.3.0, 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@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" + +request@2, request@^2.39.0, request@^2.61.0, request@^2.79.0, request@^2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + 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" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + 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-from-string@^1.1.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-1.2.1.tgz#529c9ccef27380adfec9a2f965b649bbee636418" + +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" + +requires-port@1.x.x: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + +resolve-from@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-1.0.1.tgz#26cbfe935d1aeeeabb29bc3fe5aeb01e93d44226" + +resolve-protobuf-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-protobuf-schema/-/resolve-protobuf-schema-2.0.0.tgz#e67b062a67f02d11bd6886e70efda788407e0fb4" + dependencies: + protocol-buffers-schema "^2.0.2" + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + +resolve@^0.6.1: + version "0.6.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-0.6.3.tgz#dd957982e7e736debdf53b58a4dd91754575dd46" + +resolve@^1.0.0, resolve@^1.1.5, resolve@^1.1.6: + version "1.3.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.3.tgz#655907c3469a8680dc2de3a275a8fdd69691f0e5" + dependencies: + path-parse "^1.0.5" + +resolve@~1.1.7: + version "1.1.7" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" + +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" + +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + +resumer@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/resumer/-/resumer-0.0.0.tgz#f1e8f461e4064ba39e82af3cdc2a8c893d076759" + dependencies: + through "~2.3.4" + +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" + +right-now@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/right-now/-/right-now-1.0.0.tgz#6e89609deebd7dcdaf8daecc9aea39cf585a0918" + +rimraf@2, rimraf@^2.2.8, rimraf@^2.5.1, rimraf@^2.5.2, 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" + +ripemd160@^2.0.0, ripemd160@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/ripemd160/-/ripemd160-2.0.1.tgz#0f4584295c53a3628af7e6d79aca21ce57d1c6e7" + dependencies: + hash-base "^2.0.0" + inherits "^2.0.1" + +robust-compress@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-compress/-/robust-compress-1.0.0.tgz#4cf62c4b318d8308516012bb8c11752f39329b1b" + +robust-determinant@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/robust-determinant/-/robust-determinant-1.1.0.tgz#8ecae79b79caab3e74f6debe2237e5391a27e9c7" + dependencies: + robust-compress "^1.0.0" + robust-scale "^1.0.0" + robust-sum "^1.0.0" + two-product "^1.0.0" + +robust-dot-product@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-dot-product/-/robust-dot-product-1.0.0.tgz#c9ba0178bd2c304bfd725f58e889f1d946004553" + dependencies: + robust-sum "^1.0.0" + two-product "^1.0.0" + +robust-in-sphere@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/robust-in-sphere/-/robust-in-sphere-1.1.3.tgz#1c5883d16a4e923929476ef34819857bf2a9cf75" + dependencies: + robust-scale "^1.0.0" + robust-subtract "^1.0.0" + robust-sum "^1.0.0" + two-product "^1.0.0" + +robust-linear-solve@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-linear-solve/-/robust-linear-solve-1.0.0.tgz#0cd6ac5040691a6f2aa3cd6311d728905ca3a1f1" + dependencies: + robust-determinant "^1.1.0" + +robust-orientation@^1.0.1, robust-orientation@^1.0.2, robust-orientation@^1.1.2, robust-orientation@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/robust-orientation/-/robust-orientation-1.1.3.tgz#daff5b00d3be4e60722f0e9c0156ef967f1c2049" + dependencies: + robust-scale "^1.0.2" + robust-subtract "^1.0.0" + robust-sum "^1.0.0" + two-product "^1.0.2" + +robust-product@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-product/-/robust-product-1.0.0.tgz#685250007cdbba7cf1de75bff6d2927011098abe" + dependencies: + robust-scale "^1.0.0" + robust-sum "^1.0.0" + +robust-scale@^1.0.0, robust-scale@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/robust-scale/-/robust-scale-1.0.2.tgz#775132ed09542d028e58b2cc79c06290bcf78c32" + dependencies: + two-product "^1.0.2" + two-sum "^1.0.0" + +robust-segment-intersect@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/robust-segment-intersect/-/robust-segment-intersect-1.0.1.tgz#3252b6a0fc1ba14ade6915ccbe09cbce9aab1c1c" + dependencies: + robust-orientation "^1.1.3" + +robust-subtract@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-subtract/-/robust-subtract-1.0.0.tgz#e0b164e1ed8ba4e3a5dda45a12038348dbed3e9a" + +robust-sum@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/robust-sum/-/robust-sum-1.0.0.tgz#16646e525292b4d25d82757a286955e0bbfa53d9" + +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" + +rw@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/rw/-/rw-0.1.4.tgz#4903cbd80248ae0ede685bf58fd236a7a9b29a3e" + +rx-lite@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/rx-lite/-/rx-lite-3.1.2.tgz#19ce502ca572665f3b647b10939f97fd1615f102" + +safe-buffer@5.0.1, safe-buffer@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.0.1.tgz#d263ca54696cd8a306b5ca6551e92de57918fbe7" + +sane-topojson@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sane-topojson/-/sane-topojson-2.0.0.tgz#40e25736a28c4cceaaa233f45bb86373a2785b84" + +sass-graph@^2.1.1: + version "2.2.4" + resolved "https://registry.yarnpkg.com/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" + dependencies: + glob "^7.0.0" + lodash "^4.0.0" + scss-tokenizer "^0.2.3" + yargs "^7.0.0" + +sass-loader@^6.0.3: + version "6.0.5" + resolved "https://registry.yarnpkg.com/sass-loader/-/sass-loader-6.0.5.tgz#a847910f36442aa56c5985879d54eb519e24a328" + dependencies: + async "^2.1.5" + clone-deep "^0.2.4" + loader-utils "^1.0.1" + lodash.tail "^4.1.1" + pify "^2.3.0" + +sax@0.5.x: + version "0.5.8" + resolved "https://registry.yarnpkg.com/sax/-/sax-0.5.8.tgz#d472db228eb331c2506b0e8c15524adb939d12c1" + +sax@~1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.2.tgz#fd8631a23bc7826bef5d871bdb87378c95647828" + +scss-tokenizer@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" + dependencies: + js-base64 "^2.1.8" + source-map "^0.4.2" + +"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" + +send@0.15.3: + version "0.15.3" + resolved "https://registry.yarnpkg.com/send/-/send-0.15.3.tgz#5013f9f99023df50d1bd9892c19e3defd1d53309" + dependencies: + debug "2.6.7" + depd "~1.1.0" + destroy "~1.0.4" + encodeurl "~1.0.1" + escape-html "~1.0.3" + etag "~1.8.0" + fresh "0.5.0" + http-errors "~1.6.1" + mime "1.3.4" + ms "2.0.0" + on-finished "~2.3.0" + range-parser "~1.2.0" + statuses "~1.3.1" + +sentence-case@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/sentence-case/-/sentence-case-2.1.1.tgz#1f6e2dda39c168bf92d13f86d4a918933f667ed4" + dependencies: + no-case "^2.2.0" + upper-case-first "^1.1.2" + +serve-favicon@^2.4.1: + version "2.4.3" + resolved "https://registry.yarnpkg.com/serve-favicon/-/serve-favicon-2.4.3.tgz#5986b17b0502642b641c21f818b1acce32025d23" + dependencies: + etag "~1.8.0" + fresh "0.5.0" + ms "2.0.0" + parseurl "~1.3.1" + safe-buffer "5.0.1" + +serve-static@1.12.3: + version "1.12.3" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.12.3.tgz#9f4ba19e2f3030c547f8af99107838ec38d5b1e2" + dependencies: + encodeurl "~1.0.1" + escape-html "~1.0.3" + parseurl "~1.3.1" + send "0.15.3" + +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" + +setimmediate@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/setimmediate/-/setimmediate-1.0.5.tgz#290cbb232e306942d7d7ea9b83732ab7856f8285" + +setprototypeof@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" + +sha.js@^2.4.0, sha.js@^2.4.8: + version "2.4.8" + resolved "https://registry.yarnpkg.com/sha.js/-/sha.js-2.4.8.tgz#37068c2c476b6baf402d14a49c67f597921f634f" + dependencies: + inherits "^2.0.1" + +shallow-clone@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-0.1.2.tgz#5909e874ba77106d73ac414cfec1ffca87d97060" + dependencies: + is-extendable "^0.1.1" + kind-of "^2.0.1" + lazy-cache "^0.2.3" + mixin-object "^2.0.1" + +shallow-copy@0.0.1, shallow-copy@~0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/shallow-copy/-/shallow-copy-0.0.1.tgz#415f42702d73d810330292cc5ee86eae1a11a170" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + dependencies: + shebang-regex "^1.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + +shelf-pack@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/shelf-pack/-/shelf-pack-1.1.0.tgz#b4679afdd00ad68dfd9bbd2b5a3e819293a74d82" + +shelljs@^0.7.5: + version "0.7.7" + resolved "https://registry.yarnpkg.com/shelljs/-/shelljs-0.7.7.tgz#b2f5c77ef97148f4b4f6e22682e10bba8667cff1" + dependencies: + glob "^7.0.0" + interpret "^1.0.0" + rechoir "^0.6.2" + +sigmund@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d" + +signum@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/signum/-/signum-0.0.0.tgz#ab551b1003351070a704783f1a09c5e7691f9cf6" + +signum@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/signum/-/signum-1.0.0.tgz#74a7d2bf2a20b40eba16a92b152124f1d559fa77" + +simplicial-complex-boundary@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/simplicial-complex-boundary/-/simplicial-complex-boundary-1.0.1.tgz#72c9ff1e24deaa374c9bb2fa0cbf0c081ebef815" + dependencies: + boundary-cells "^2.0.0" + reduce-simplicial-complex "^1.0.0" + +simplicial-complex-contour@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/simplicial-complex-contour/-/simplicial-complex-contour-1.0.2.tgz#890aacac284365340110545cf2629a26e04bf9d1" + dependencies: + marching-simplex-table "^1.0.0" + ndarray "^1.0.15" + ndarray-sort "^1.0.0" + typedarray-pool "^1.1.0" + +simplicial-complex@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/simplicial-complex/-/simplicial-complex-0.3.3.tgz#4c30cad57f9e45729dd8f306c8753579f46be99e" + dependencies: + bit-twiddle "~0.0.1" + union-find "~0.0.3" + +simplicial-complex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/simplicial-complex/-/simplicial-complex-1.0.0.tgz#6c33a4ed69fcd4d91b7bcadd3b30b63683eae241" + dependencies: + bit-twiddle "^1.0.0" + union-find "^1.0.0" + +simplify-planar-graph@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/simplify-planar-graph/-/simplify-planar-graph-2.0.1.tgz#bc85893725f32e8fa8ae25681398446d2cbcf766" + dependencies: + robust-orientation "^1.0.1" + simplicial-complex "^0.3.3" + +slab-decomposition@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/slab-decomposition/-/slab-decomposition-1.0.2.tgz#1ded56754d408b10739f145103dfc61807f65134" + dependencies: + binary-search-bounds "^1.0.0" + functional-red-black-tree "^1.0.0" + robust-orientation "^1.1.3" + +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" + +snake-case@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/snake-case/-/snake-case-2.1.0.tgz#41bdb1b73f30ec66a04d4e2cad1b76387d4d6d9f" + dependencies: + no-case "^2.2.0" + +snap-points-2d@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/snap-points-2d/-/snap-points-2d-1.0.1.tgz#8a679a47e195fa31405b03dc6e0c03e18228dcf4" + dependencies: + typedarray-pool "^1.1.0" + +snap-points-2d@^3.0.0, snap-points-2d@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/snap-points-2d/-/snap-points-2d-3.1.0.tgz#6dcfc2a3c5de9dab02c2724b8577b907e463cf1a" + dependencies: + typedarray-pool "^1.1.0" + +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" + +sort-asc@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/sort-asc/-/sort-asc-0.1.0.tgz#ab799df61fc73ea0956c79c4b531ed1e9e7727e9" + +sort-desc@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/sort-desc/-/sort-desc-0.1.1.tgz#198b8c0cdeb095c463341861e3925d4ee359a9ee" + +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + dependencies: + is-plain-obj "^1.0.0" + +sort-object@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/sort-object/-/sort-object-0.3.2.tgz#98e0d199ede40e07c61a84403c61d6c3b290f9e2" + dependencies: + sort-asc "^0.1.0" + sort-desc "^0.1.1" + +source-list-map@^0.1.7, 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-list-map@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-1.1.2.tgz#9889019d1024cce55cdc069498337ef6186a11a1" + +source-map-support@^0.4.2: + version "0.4.15" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.15.tgz#03202df65c06d2bd8c7ec2362a193056fef8d3b1" + dependencies: + source-map "^0.5.6" + +source-map@0.1.x, source-map@^0.1.34, source-map@~0.1.33: + version "0.1.43" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" + dependencies: + amdefine ">=0.0.4" + +source-map@0.4.x, source-map@^0.4.2, 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.x, "source-map@>= 0.1.2", source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6, source-map@~0.5.0, source-map@~0.5.1, source-map@~0.5.3: + 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" + +sparkles@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" + +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" + +split-polygon@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/split-polygon/-/split-polygon-1.0.0.tgz#0eacc8a136a76b12a3d95256ea7da45db0c2d247" + dependencies: + robust-dot-product "^1.0.0" + robust-sum "^1.0.0" + +sprintf-js@^1.0.3: + version "1.1.1" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.1.1.tgz#36be78320afe5801f6cea3ee78b6e5aab940ea0c" + +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.13.0" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.13.0.tgz#ff2a3e4fd04497555fed97b39a0fd82fafb3a33c" + 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" + +stack-trace@0.0.9: + version "0.0.9" + resolved "https://registry.yarnpkg.com/stack-trace/-/stack-trace-0.0.9.tgz#a8f6eaeca90674c333e7c43953f275b451510695" + +starability@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/starability/-/starability-1.0.5.tgz#5419145ec7d57dd169db353089acae19cffd05e0" + +static-eval@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-1.1.1.tgz#ca8130210354cf13d9a722bc7e923778457bb192" + dependencies: + escodegen "^1.8.1" + +static-eval@~0.2.0: + version "0.2.4" + resolved "https://registry.yarnpkg.com/static-eval/-/static-eval-0.2.4.tgz#b7d34d838937b969f9641ca07d48f8ede263ea7b" + dependencies: + escodegen "~0.0.24" + +static-module@^1.0.0, static-module@^1.1.0, static-module@^1.1.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/static-module/-/static-module-1.3.2.tgz#329fb9f223a566266bda71843b7d932c767174f3" + dependencies: + concat-stream "~1.6.0" + duplexer2 "~0.0.2" + escodegen "~1.3.2" + falafel "^1.0.0" + has "^1.0.0" + object-inspect "~0.4.0" + quote-stream "~0.0.0" + readable-stream "~1.0.27-1" + shallow-copy "~0.0.1" + static-eval "~0.2.0" + through2 "~0.4.1" + +"statuses@>= 1.3.1 < 2", statuses@~1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" + +stdout-stream@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/stdout-stream/-/stdout-stream-1.4.0.tgz#a2c7c8587e54d9427ea9edb3ac3f2cd522df378b" + dependencies: + readable-stream "^2.0.1" + +stream-browserify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/stream-browserify/-/stream-browserify-2.0.1.tgz#66266ee5f9bdb9940a4e4514cafb43bb71e5c9db" + dependencies: + inherits "~2.0.1" + readable-stream "^2.0.2" + +stream-http@^2.3.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.7.1.tgz#546a51741ad5a6b07e9e31b0b10441a917df528a" + dependencies: + builtin-status-codes "^3.0.0" + inherits "^2.0.1" + readable-stream "^2.2.6" + to-arraybuffer "^1.0.0" + xtend "^4.0.0" + +stream-shift@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.0.tgz#d5c752825e5367e786f78e18e445ea223a155952" + +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + +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.trim@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/string.prototype.trim/-/string.prototype.trim-1.1.2.tgz#d04de2c89e137f4d7d206f086b5ed2fae6be8cea" + dependencies: + define-properties "^1.1.2" + es-abstract "^1.5.0" + function-bind "^1.0.2" + +string_decoder@^0.10.25, string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + +string_decoder@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.0.1.tgz#62e200f039955a6810d8df0a33ffc0f013662d98" + dependencies: + safe-buffer "^5.0.1" + +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-ansi@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-0.1.1.tgz#39e8a98d044d150660abe4a6808acf70bb7bc991" + +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-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + dependencies: + get-stdin "^4.0.1" + +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" + +strongly-connected-components@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strongly-connected-components/-/strongly-connected-components-1.0.1.tgz#0920e2b4df67c8eaee96c6b6234fe29e873dba99" + +style-loader@^0.13.1: + version "0.13.2" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-0.13.2.tgz#74533384cf698c7104c7951150b49717adc2f3bb" + dependencies: + loader-utils "^1.0.2" + +stylus-loader@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/stylus-loader/-/stylus-loader-3.0.1.tgz#77f4b34fd030d25b2617bcf5513db5b0730c4089" + dependencies: + loader-utils "^1.0.2" + lodash.clonedeep "^4.5.0" + when "~3.6.x" + +stylus@^0.54.5: + version "0.54.5" + resolved "https://registry.yarnpkg.com/stylus/-/stylus-0.54.5.tgz#42b9560931ca7090ce8515a798ba9e6aa3d6dc79" + dependencies: + css-parse "1.7.x" + debug "*" + glob "7.0.x" + mkdirp "0.5.x" + sax "0.5.x" + source-map "0.1.x" + +supercluster@^2.0.1: + version "2.3.0" + resolved "https://registry.yarnpkg.com/supercluster/-/supercluster-2.3.0.tgz#87ab56081bbea9a1d724df5351ee9e8c3af2f48b" + dependencies: + kdbush "^1.0.1" + +superscript-text@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/superscript-text/-/superscript-text-1.0.0.tgz#e7cb2752567360df50beb0610ce8df3d71d8dfd8" + +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + +supports-color@^3.1.0, supports-color@^3.2.3: + version "3.2.3" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-3.2.3.tgz#65ac0504b3954171d8a64946b2ae3cbb8a5f54f6" + dependencies: + has-flag "^1.0.0" + +surface-nets@^1.0.0, surface-nets@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/surface-nets/-/surface-nets-1.0.2.tgz#e433c8cbba94a7274c6f4c99552b461bf1fc7a4b" + dependencies: + ndarray-extract-contour "^1.0.0" + triangulate-hypercube "^1.0.0" + zero-crossings "^1.0.0" + +svgo@^0.7.0: + version "0.7.2" + resolved "https://registry.yarnpkg.com/svgo/-/svgo-0.7.2.tgz#9f5772413952135c6fefbf40afe6a4faa88b4bb5" + dependencies: + coa "~1.0.1" + colors "~1.1.2" + csso "~2.3.1" + js-yaml "~3.7.0" + mkdirp "~0.5.1" + sax "~1.2.1" + whet.extend "~0.9.9" + +swap-case@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/swap-case/-/swap-case-1.1.2.tgz#c39203a4587385fad3c850a0bd1bcafa081974e3" + dependencies: + lower-case "^1.1.1" + upper-case "^1.1.1" + +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" + +tapable@^0.2.5, tapable@~0.2.5: + version "0.2.6" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-0.2.6.tgz#206be8e188860b514425375e6f1ae89bfb01fd8d" + +tape@^4.0.0, tape@^4.6.0: + version "4.6.3" + resolved "https://registry.yarnpkg.com/tape/-/tape-4.6.3.tgz#637e77581e9ab2ce17577e9bd4ce4f575806d8b6" + dependencies: + deep-equal "~1.0.1" + defined "~1.0.0" + for-each "~0.3.2" + function-bind "~1.1.0" + glob "~7.1.1" + has "~1.0.1" + inherits "~2.0.3" + minimist "~1.2.0" + object-inspect "~1.2.1" + resolve "~1.1.7" + resumer "~0.0.0" + string.prototype.trim "~1.1.2" + through "~2.3.8" + +tar-pack@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.0.tgz#23be2d7f671a8339376cbdb0b8fe3fdebf317984" + 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.0.0, 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" + +text-cache@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/text-cache/-/text-cache-4.1.0.tgz#7c58090e85ac0910f976df4cfc8ce8aa0ea58766" + dependencies: + vectorize-text "^3.0.1" + +text-table@^0.2.0, text-table@~0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + +through2@^0.6.3: + version "0.6.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" + dependencies: + readable-stream ">=1.0.33-1 <1.1.0-0" + xtend ">=4.0.0 <4.1.0-0" + +through2@^2.0.0, 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" + +through2@~0.4.1: + version "0.4.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-0.4.2.tgz#dbf5866031151ec8352bb6c4db64a2292a840b9b" + dependencies: + readable-stream "~1.0.17" + xtend "~2.1.1" + +through@^2.3.6, through@^2.3.7, through@~2.3.4, through@~2.3.6, through@~2.3.8: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + +time-stamp@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.1.0.tgz#764a5a11af50561921b133f3b44e618687e0f5c3" + +timers-browserify@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.2.tgz#ab4883cf597dcd50af211349a00fbca56ac86b86" + dependencies: + setimmediate "^1.0.4" + +tiny-sdf@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/tiny-sdf/-/tiny-sdf-1.0.2.tgz#28e76985c44c4e584c4b67d8ecdd9b33a1cac28c" + +tinycolor2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.1.tgz#f4fad333447bc0b07d4dc8e9209d8f39a8ac77e8" + +title-case@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/title-case/-/title-case-2.1.1.tgz#3e127216da58d2bc5becf137ab91dae3a7cd8faa" + dependencies: + no-case "^2.2.0" + upper-case "^1.0.3" + +to-arraybuffer@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz#7d229b1fcc637e466ca081180836a7aabff83f43" + +to-fast-properties@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-1.0.3.tgz#b83571fa4d8c25b82e231b06e3a3055de4ca1a47" + +to-px@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/to-px/-/to-px-1.0.1.tgz#5bbaed5e5d4f76445bcc903c293a2307dd324646" + dependencies: + parse-unit "^1.0.1" + +to-utf8@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/to-utf8/-/to-utf8-0.0.1.tgz#d17aea72ff2fba39b9e43601be7b3ff72e089852" + +topojson-client@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/topojson-client/-/topojson-client-2.1.0.tgz#ff9f7bf38991185e0b4284c2b06ae834f0eac6c8" + dependencies: + commander "2" + +toposort@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/toposort/-/toposort-1.0.3.tgz#f02cd8a74bd8be2fc0e98611c3bacb95a171869c" + +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" + +triangulate-hypercube@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/triangulate-hypercube/-/triangulate-hypercube-1.0.1.tgz#d8071db2ebfcfd51f308d0bcf2a5c48a5b36d137" + dependencies: + gamma "^0.1.0" + permutation-parity "^1.0.0" + permutation-rank "^1.0.0" + +triangulate-polyline@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/triangulate-polyline/-/triangulate-polyline-1.0.3.tgz#bf8ba877a85054103feb9fa5a61b4e8d7017814d" + dependencies: + cdt2d "^1.0.0" + +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + +trim-right@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003" + +tryit@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/tryit/-/tryit-1.0.3.tgz#393be730a9446fd1ead6da59a014308f36c289cb" + +tty-browserify@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/tty-browserify/-/tty-browserify-0.0.0.tgz#a157ba402da24e9bf957f9aa69d524eed42901a6" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + dependencies: + safe-buffer "^5.0.1" + +turntable-camera-controller@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/turntable-camera-controller/-/turntable-camera-controller-3.0.1.tgz#8dbd3fe00550191c65164cb888971049578afd99" + dependencies: + filtered-vector "^1.2.1" + gl-mat4 "^1.0.2" + gl-vec3 "^1.0.2" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + +two-product@^1.0.0, two-product@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/two-product/-/two-product-1.0.2.tgz#67d95d4b257a921e2cb4bd7af9511f9088522eaa" + +two-sum@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/two-sum/-/two-sum-1.0.0.tgz#31d3f32239e4f731eca9df9155e2b297f008ab64" + +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-is@~1.6.15: + version "1.6.15" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" + dependencies: + media-typer "0.3.0" + mime-types "~2.1.15" + +typedarray-pool@^1.0.0, typedarray-pool@^1.0.2, typedarray-pool@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/typedarray-pool/-/typedarray-pool-1.1.0.tgz#d114f484801489f53ecab5e8088aa23044f498d9" + dependencies: + bit-twiddle "^1.0.0" + dup "^1.0.0" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + +uglify-js@2.6.x: + version "2.6.4" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.6.4.tgz#65ea2fb3059c9394692f15fed87c2b36c16b9adf" + dependencies: + async "~0.2.6" + source-map "~0.5.1" + uglify-to-browserify "~1.0.0" + yargs "~3.10.0" + +uglify-js@3.0.x: + version "3.0.14" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.0.14.tgz#2697af126fd215aac556facb1edfb17875204760" + dependencies: + commander "~2.9.0" + source-map "~0.5.1" + +uglify-js@^2.6.0, uglify-js@^2.8.27: + version "2.8.27" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.27.tgz#47787f912b0f242e5b984343be8e35e95f694c9c" + dependencies: + source-map "~0.5.1" + yargs "~3.10.0" + optionalDependencies: + uglify-to-browserify "~1.0.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" + +unassert@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/unassert/-/unassert-1.5.1.tgz#cbc88ec387417c5a5e4c02d3cd07be98bd75ff76" + dependencies: + acorn "^4.0.0" + call-matcher "^1.0.1" + deep-equal "^1.0.0" + espurify "^1.3.0" + estraverse "^4.1.0" + esutils "^2.0.2" + object-assign "^4.1.0" + +unassertify@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/unassertify/-/unassertify-2.0.4.tgz#b3ca2ba5f29b4836e35a6dd77e5b20f6dbbf8e52" + dependencies: + acorn "^4.0.0" + convert-source-map "^1.1.1" + escodegen "^1.6.1" + multi-stage-sourcemap "^0.2.1" + through "^2.3.7" + unassert "^1.3.1" + +underscore@~1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.6.0.tgz#8b38b10cacdef63337b8b24e4ff86d45aea529a8" + +union-find@^1.0.0, union-find@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/union-find/-/union-find-1.0.2.tgz#292bac415e6ad3a89535d237010db4a536284e58" + +union-find@~0.0.3: + version "0.0.4" + resolved "https://registry.yarnpkg.com/union-find/-/union-find-0.0.4.tgz#b854b3301619bdad144b0014c78f96eac0d2f0f6" + +uniq@^1.0.0, uniq@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff" + +uniqid@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-4.1.1.tgz#89220ddf6b751ae52b5f72484863528596bb84c1" + dependencies: + macaddress "^0.2.8" + +uniqs@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" + +unitbezier@^0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/unitbezier/-/unitbezier-0.0.0.tgz#33bf7f5d7284c5350bfc5c7f770fba7549c54a5e" + +unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + +upper-case-first@^1.1.0, upper-case-first@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/upper-case-first/-/upper-case-first-1.1.2.tgz#5d79bedcff14419518fd2edb0a0507c9b6859115" + dependencies: + upper-case "^1.1.1" + +upper-case@^1.0.3, upper-case@^1.1.0, upper-case@^1.1.1, upper-case@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" + +url-loader@^0.5.7: + version "0.5.8" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-0.5.8.tgz#b9183b1801e0f847718673673040bc9dc1c715c5" + dependencies: + loader-utils "^1.0.2" + mime "1.3.x" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +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" + +util@0.10.3, util@^0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/util/-/util-0.10.3.tgz#7afb1afe50805246489e3db7fe0ed379336ac0f9" + dependencies: + inherits "2.0.1" + +utila@~0.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.3.3.tgz#d7e8e7d7e309107092b05f8d9688824d633a4226" + +utila@~0.4: + version "0.4.0" + resolved "https://registry.yarnpkg.com/utila/-/utila-0.4.0.tgz#8a16a05d445657a3aea5eecc5b12a4fa5379772c" + +utils-merge@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.0.tgz#0294fb922bb9375153541c4f7096231f287c8af8" + +uuid@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.0.1.tgz#6544bba2dfda8c1cf17e629a3a305e2bb1fee6c1" + +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" + +vary@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" + +vector-tile@^1.1.3, vector-tile@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/vector-tile/-/vector-tile-1.3.0.tgz#06d516a83b063f04c82ef539cf1bb1aebeb696b4" + dependencies: + point-geometry "0.0.0" + +vectorize-text@^3.0.0, vectorize-text@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/vectorize-text/-/vectorize-text-3.0.2.tgz#05ab1630e409f377964e2b9205b2d559a92f60d8" + dependencies: + cdt2d "^1.0.0" + clean-pslg "^1.1.0" + ndarray "^1.0.11" + planar-graph-to-polyline "^1.0.0" + simplify-planar-graph "^2.0.1" + surface-nets "^1.0.0" + triangulate-polyline "^1.0.0" + +vendors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vendors/-/vendors-1.0.1.tgz#37ad73c8ee417fb3d580e785312307d274847f22" + +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@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" + dependencies: + clone "^1.0.0" + clone-stats "^0.0.1" + replace-ext "0.0.1" + +vm-browserify@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vm-browserify/-/vm-browserify-0.0.4.tgz#5d7ea45bbef9e4a6ff65f95438e0a87c357d5a73" + dependencies: + indexof "0.0.1" + +vt-pbf@^2.0.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/vt-pbf/-/vt-pbf-2.1.2.tgz#75409fded5f6c3910073a64c3e575cdeba387f01" + dependencies: + pbf "^1.3.2" + point-geometry "0.0.0" + vector-tile "^1.1.3" + +vue-axios@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/vue-axios/-/vue-axios-2.0.2.tgz#0fe5a69f1edb09a1cd6c4a7f88c74d2fb7fe1778" + +vue-bulma-brace@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/vue-bulma-brace/-/vue-bulma-brace-0.1.0.tgz#c56483b93dc2545eee041ec0c5940af49e718c5f" + dependencies: + brace "^0.10.0" + +vue-bulma-breadcrumb@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vue-bulma-breadcrumb/-/vue-bulma-breadcrumb-1.0.1.tgz#5d9e5756f538f94feb8e265c3c947a39d87536f7" + +vue-bulma-card@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/vue-bulma-card/-/vue-bulma-card-1.0.2.tgz#f9d9285672c58fb0ec4018e8751f0ff4bccd961d" + +vue-bulma-chartist@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/vue-bulma-chartist/-/vue-bulma-chartist-1.1.0.tgz#12c0482232ca5aabb18b2419bb4bbb55a73e59d8" + dependencies: + chartist "^0.10.1" + +vue-bulma-chartjs@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/vue-bulma-chartjs/-/vue-bulma-chartjs-1.0.4.tgz#437853bff80473a8be77db1f6a7dea26ada5911d" + dependencies: + chart.js "2.5.0" + +vue-bulma-collapse@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/vue-bulma-collapse/-/vue-bulma-collapse-1.0.3.tgz#61038b566dde6e857e04954d178725348606dc09" + dependencies: + animejs "1" + +vue-bulma-datepicker@^1.3.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/vue-bulma-datepicker/-/vue-bulma-datepicker-1.3.3.tgz#fea7265b29fe288ef2deeccfe5b67740cd550401" + dependencies: + flatpickr "^2.5.7" + vue-click-outside "^1.0.2" + +vue-bulma-emoji@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/vue-bulma-emoji/-/vue-bulma-emoji-0.0.2.tgz#3df021c91348990ba9127a2566b2e4fc812a2e15" + dependencies: + emojione "^2.2.7" + +vue-bulma-expanding@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/vue-bulma-expanding/-/vue-bulma-expanding-0.0.1.tgz#fcf71c2e8ef09157175bd5187eb71b3ce75a2229" + +vue-bulma-jump@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/vue-bulma-jump/-/vue-bulma-jump-0.0.2.tgz#311331581a3ef21c906967c1c9c42e63d643c9fa" + dependencies: + jump.js "^1.0.2" + +vue-bulma-message@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vue-bulma-message/-/vue-bulma-message-1.1.1.tgz#a3c23e706deced511321f11862b7124741d8ef0d" + +vue-bulma-modal@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vue-bulma-modal/-/vue-bulma-modal-1.0.1.tgz#943dfd6ab4726ceeb0b126f05372c5d1c68abd83" + +vue-bulma-notification@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vue-bulma-notification/-/vue-bulma-notification-1.1.1.tgz#e559763065d53c2755cee73906b4e7010c137512" + +vue-bulma-progress-bar@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/vue-bulma-progress-bar/-/vue-bulma-progress-bar-1.0.2.tgz#5da40a8010fcc6345a825498aa147f522268e39f" + +vue-bulma-progress-tracker@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vue-bulma-progress-tracker/-/vue-bulma-progress-tracker-0.0.4.tgz#d132af7eea5d0857eda733e96951a2c9c395624d" + dependencies: + progress-tracker "1.0.0" + +vue-bulma-quill@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/vue-bulma-quill/-/vue-bulma-quill-0.0.1.tgz#aa2993327af9cefafdf62cb2303219646962297f" + dependencies: + quill "1.1.0" + +vue-bulma-rating@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/vue-bulma-rating/-/vue-bulma-rating-1.0.1.tgz#34b25fa29d24249d6074e28db95c47b9d00d2e58" + dependencies: + starability "1.0.5" + +vue-bulma-slider@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/vue-bulma-slider/-/vue-bulma-slider-1.0.2.tgz#7b8e0dd0bc2c1a7c5e77d117059847ba41eaff14" + +vue-bulma-switch@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/vue-bulma-switch/-/vue-bulma-switch-1.0.4.tgz#52e99de5b57baa39b1bc80240b3ae5d43f53c522" + +vue-bulma-tabs@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vue-bulma-tabs/-/vue-bulma-tabs-1.1.2.tgz#162f5a459a9bd90b5fba097d61bcb1c8823c2eb8" + +vue-bulma-tooltip@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/vue-bulma-tooltip/-/vue-bulma-tooltip-1.0.3.tgz#2ce4f48828b9851a5e3c7ffb4dbf0128e5a4ec03" + dependencies: + classnames "2.2.5" + hint.css "2.4.1" + +vue-cleave@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/vue-cleave/-/vue-cleave-1.1.1.tgz#4289be39dad33a753513a88983435eb89094723b" + dependencies: + cleave.js "0.7.14" + +vue-click-outside@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/vue-click-outside/-/vue-click-outside-1.0.5.tgz#f0ba4f00e9fbbb8e78274651f1085c8602fe9b16" + +vue-hot-reload-api@^2.0.11: + version "2.1.0" + resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.1.0.tgz#9ca58a6e0df9078554ce1708688b6578754d86de" + +vue-html-loader@^1.2.3: + version "1.2.4" + resolved "https://registry.yarnpkg.com/vue-html-loader/-/vue-html-loader-1.2.4.tgz#54ce489be06065c91dc2a1173122f3e004e0a253" + dependencies: + es6-templates "^0.2.2" + fastparse "^1.0.0" + html-minifier "^2.1.5" + loader-utils "^1.0.2" + object-assign "^4.1.0" + +vue-loader@^11.1.4: + version "11.3.4" + resolved "https://registry.yarnpkg.com/vue-loader/-/vue-loader-11.3.4.tgz#65e10a44ce092d906e14bbc72981dec99eb090d2" + dependencies: + consolidate "^0.14.0" + hash-sum "^1.0.2" + js-beautify "^1.6.3" + loader-utils "^1.1.0" + lru-cache "^4.0.1" + postcss "^5.0.21" + postcss-load-config "^1.1.0" + postcss-selector-parser "^2.0.0" + source-map "^0.5.6" + vue-hot-reload-api "^2.0.11" + vue-style-loader "^2.0.0" + vue-template-es2015-compiler "^1.2.2" + +vue-lory@0.0.4: + version "0.0.4" + resolved "https://registry.yarnpkg.com/vue-lory/-/vue-lory-0.0.4.tgz#08cac91bfb5898f6a1fc94d89b7b760d88b8f889" + dependencies: + lory.js "^2.2.1" + +vue-nprogress@0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/vue-nprogress/-/vue-nprogress-0.1.5.tgz#574b412f1034012daaf46299d5505d5812f406e6" + dependencies: + nprogress "0.2.0" + +vue-peity@0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/vue-peity/-/vue-peity-0.5.0.tgz#0729d04c6850c218cba4d6d7219bf1cfe5a3bfcb" + +vue-router@^2.3.0: + version "2.5.3" + resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-2.5.3.tgz#073783f564b6aece6c8a59c63e298dc2aabfb51b" + +vue-style-loader@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-2.0.5.tgz#f0efac992febe3f12e493e334edb13cd235a3d22" + dependencies: + hash-sum "^1.0.2" + loader-utils "^1.0.2" + +vue-template-compiler@^2.2.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/vue-template-compiler/-/vue-template-compiler-2.3.3.tgz#b5bab9ec57309c906b82a78c81a02179dbc2f470" + dependencies: + de-indent "^1.0.2" + he "^1.1.0" + +vue-template-es2015-compiler@^1.2.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.5.2.tgz#a0a6c50c941d2a4abda963f2f42c337ac450ee95" + +vue@^2.2.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/vue/-/vue-2.3.3.tgz#d1eaa8fde5240735a4563e74f2c7fead9cbb064c" + +vuex-router-sync@^4.1.2: + version "4.1.3" + resolved "https://registry.yarnpkg.com/vuex-router-sync/-/vuex-router-sync-4.1.3.tgz#f209ec3174de04179bfadd7994437e4c5a81c975" + +vuex@^2.2.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/vuex/-/vuex-2.3.1.tgz#cde8e997c1f9957719bc7dea154f9aa691d981a6" + +w3c-blob@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/w3c-blob/-/w3c-blob-0.0.1.tgz#b0cd352a1a50f515563420ffd5861f950f1d85b8" + +watchpack@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-1.3.1.tgz#7d8693907b28ce6013e7f3610aa2a1acf07dad87" + dependencies: + async "^2.1.2" + chokidar "^1.4.3" + graceful-fs "^4.1.2" + +weak-map@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/weak-map/-/weak-map-1.0.5.tgz#79691584d98607f5070bd3b70a40e6bb22e401eb" + +weakmap-shim@^1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/weakmap-shim/-/weakmap-shim-1.1.1.tgz#d65afd784109b2166e00ff571c33150ec2a40b49" + +webgl-context@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/webgl-context/-/webgl-context-2.2.0.tgz#8f37d7257cf6df1cd0a49e6a7b1b721b94cc86a0" + dependencies: + get-canvas-context "^1.0.1" + +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" + +webpack-dev-middleware@^1.9.0: + version "1.10.2" + resolved "https://registry.yarnpkg.com/webpack-dev-middleware/-/webpack-dev-middleware-1.10.2.tgz#2e252ce1dfb020dbda1ccb37df26f30ab014dbd1" + dependencies: + memory-fs "~0.4.1" + mime "^1.3.4" + path-is-absolute "^1.0.0" + range-parser "^1.0.3" + +webpack-hot-middleware@^2.14.0: + version "2.18.0" + resolved "https://registry.yarnpkg.com/webpack-hot-middleware/-/webpack-hot-middleware-2.18.0.tgz#a16bb535b83a6ac94a78ac5ebce4f3059e8274d3" + dependencies: + ansi-html "0.0.7" + html-entities "^1.2.0" + querystring "^0.2.0" + strip-ansi "^3.0.0" + +webpack-merge@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-4.1.0.tgz#6ad72223b3e0b837e531e4597c199f909361511e" + dependencies: + lodash "^4.17.4" + +webpack-sources@^0.1.0: + version "0.1.5" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.1.5.tgz#aa1f3abf0f0d74db7111c40e500b84f966640750" + dependencies: + source-list-map "~0.1.7" + source-map "~0.5.3" + +webpack-sources@^0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-0.2.3.tgz#17c62bfaf13c707f9d02c479e0dcdde8380697fb" + dependencies: + source-list-map "^1.1.1" + source-map "~0.5.3" + +webpack@^2.2.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-2.6.1.tgz#2e0457f0abb1ac5df3ab106c69c672f236785f07" + dependencies: + acorn "^5.0.0" + acorn-dynamic-import "^2.0.0" + ajv "^4.7.0" + ajv-keywords "^1.1.1" + async "^2.1.2" + enhanced-resolve "^3.0.0" + interpret "^1.0.0" + json-loader "^0.5.4" + json5 "^0.5.1" + loader-runner "^2.3.0" + loader-utils "^0.2.16" + memory-fs "~0.4.1" + mkdirp "~0.5.0" + node-libs-browser "^2.0.0" + source-map "^0.5.3" + supports-color "^3.1.0" + tapable "~0.2.5" + uglify-js "^2.8.27" + watchpack "^1.3.1" + webpack-sources "^0.2.3" + yargs "^6.0.0" + +webworkify@^1.3.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/webworkify/-/webworkify-1.4.0.tgz#71245d1e34cacf54e426bd955f8cc6ee12d024c2" + +wgs84@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/wgs84/-/wgs84-0.0.0.tgz#34fdc555917b6e57cf2a282ed043710c049cdc76" + +when@~3.6.x: + version "3.6.4" + resolved "https://registry.yarnpkg.com/when/-/when-3.6.4.tgz#473b517ec159e2b85005497a13983f095412e34e" + +whet.extend@~0.9.9: + version "0.9.9" + resolved "https://registry.yarnpkg.com/whet.extend/-/whet.extend-0.9.9.tgz#f877d5bf648c97e5aa542fadc16d6a259b9c11a1" + +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, which@^1.2.9: + version "1.2.14" + resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" + dependencies: + isexe "^2.0.0" + +whoots-js@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/whoots-js/-/whoots-js-2.1.0.tgz#bcb201c34e0eaf335fcce5ae2cf874579a99c487" + +wide-align@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.2.tgz#571e0f1b0604636ebc0dfc21b0339bbe31341710" + dependencies: + string-width "^1.0.2" + +window-size@0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" + +window-size@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.2.0.tgz#b4315bb4214a3d7058ebeee892e13fa24d98b075" + +wordwrap@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.2.tgz#b79669bb42ecb409f83d583cad52ca17eaa1643f" + +wordwrap@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + +world-calendars@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/world-calendars/-/world-calendars-1.0.3.tgz#b25c5032ba24128ffc41d09faf4a5ec1b9c14335" + dependencies: + object-assign "^4.1.0" + +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@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/write/-/write-0.2.1.tgz#5fc03828e264cea3fe91455476f7a3c566cb0757" + dependencies: + mkdirp "^0.5.1" + +wysiwyg.css@0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/wysiwyg.css/-/wysiwyg.css-0.0.2.tgz#1bb923ead4ef86cb5ceb60a824bd8a2755c2875c" + dependencies: + autoprefixer "^6.4.1" + minireset.css "0.0.2" + node-sass "^3.9.3" + postcss-cli "^2.6.0" + +xml-char-classes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" + +"xtend@>=4.0.0 <4.1.0-0", xtend@^4.0.0, xtend@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" + +xtend@^2.1.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.2.0.tgz#eef6b1f198c1c8deafad8b1765a04dad4a01c5a9" + +xtend@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-2.1.2.tgz#6efecc2a4dad8e6962c4901b337ce7ba87b5d28b" + dependencies: + object-keys "~0.4.0" + +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@^2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-2.4.1.tgz#85568de3cf150ff49fa51825f03a8c880ddcc5c4" + dependencies: + camelcase "^3.0.0" + lodash.assign "^4.0.6" + +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-parser@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" + dependencies: + camelcase "^3.0.0" + +yargs@^4.7.1: + version "4.8.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-4.8.1.tgz#c0c42924ca4aaa6b0e6da1739dfb216439f9ddc0" + dependencies: + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + lodash.assign "^4.0.3" + 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.1" + which-module "^1.0.0" + window-size "^0.2.0" + y18n "^3.2.1" + yargs-parser "^2.4.1" + +yargs@^6.0.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@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" + 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 "^5.0.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" + +zero-crossings@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/zero-crossings/-/zero-crossings-1.0.1.tgz#c562bd3113643f3443a245d12406b88b69b9a9ff" + dependencies: + cwise-compiler "^1.0.0"