├── .babelrc ├── .eslintrc ├── .github └── issue_template.md ├── .gitignore ├── .npmignore ├── .travis.yml ├── LICENSE ├── README.md ├── app.js ├── bin ├── build.js └── screenshot.js ├── demo ├── demo.js ├── package-lock.json └── package.json ├── package-lock.json ├── package.json └── src ├── filterEmulateInfos.js ├── index.js └── kits.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "targets": { 5 | "node": "6" 6 | } 7 | }] 8 | ], 9 | "plugins": ["transform-class-properties"] 10 | } -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "airbnb", 3 | "parser": "babel-eslint", 4 | "rules": { 5 | "no-else-return": "off", 6 | "jsx-a11y/href-no-hash": "off", 7 | "import/no-extraneous-dependencies": "off", 8 | "padded-blocks": ["error", { "classes": "always" }] 9 | }, 10 | "globals": { 11 | "describe": true, 12 | "it": true 13 | }, 14 | "parserOptions": { 15 | "ecmaVersion": 6, 16 | "sourceType": "module", 17 | "ecmaFeatures": { 18 | "modules": true 19 | }, 20 | "experimentalDecorators": true 21 | }, 22 | "env": { 23 | "browser": true, 24 | "node": true 25 | } 26 | } -------------------------------------------------------------------------------- /.github/issue_template.md: -------------------------------------------------------------------------------- 1 | #### Node.js & npm version 2 | Node.js: `node -v`; 3 | npm: `npm -v` 4 | #### Operating system: 5 | 6 | #### Description of the bug: 7 | 8 | #### Example CLI command or javascript code to reproduce the error 9 | ``` 10 | ``` 11 | 12 | #### Error infos: 13 | ```bash 14 | ``` 15 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (http://nodejs.org/api/addons.html) 33 | bin/build.js/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # Typescript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # Yarn Integrity file 55 | .yarn-integrity 56 | 57 | # dotenv environment variables file 58 | .env 59 | 60 | /.idea 61 | /lib 62 | /index.js 63 | /buildBin 64 | /.DS_Store 65 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | # Logs 2 | logs 3 | *.log 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Runtime data 9 | pids 10 | *.pid 11 | *.seed 12 | *.pid.lock 13 | 14 | # Directory for instrumented libs generated by jscoverage/JSCover 15 | lib-cov 16 | 17 | # Coverage directory used by tools like istanbul 18 | coverage 19 | 20 | # nyc test coverage 21 | .nyc_output 22 | 23 | # Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files) 24 | .grunt 25 | 26 | # Bower dependency directory (https://bower.io/) 27 | bower_components 28 | 29 | # node-waf configuration 30 | .lock-wscript 31 | 32 | # Compiled binary addons (http://nodejs.org/api/addons.html) 33 | bin/build.js/Release 34 | 35 | # Dependency directories 36 | node_modules/ 37 | jspm_packages/ 38 | 39 | # Typescript v1 declaration files 40 | typings/ 41 | 42 | # Optional npm cache directory 43 | .npm 44 | 45 | # Optional eslint cache 46 | .eslintcache 47 | 48 | # Optional REPL history 49 | .node_repl_history 50 | 51 | # Output of 'npm pack' 52 | *.tgz 53 | 54 | # Yarn Integrity file 55 | .yarn-integrity 56 | 57 | # dotenv environment variables file 58 | .env 59 | 60 | .idea/ 61 | demo/ 62 | src/ 63 | bin/ 64 | app.js 65 | .github/ 66 | 67 | .babelrc 68 | .eslintrc 69 | .travis.yml 70 | 71 | *.png 72 | *.jpg 73 | *.jpeg -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | dist: precise 3 | node_js: 4 | - lts/* 5 | script: 6 | - npm run build 7 | #deploy: 8 | # provider: npm 9 | # email: runjuu@icloud.com 10 | # api_key: 11 | # secure: pK/KLfnasV4eOhcwMKYAPXTm/eFOlMUm9AlRz7ZFZ0vk+EgMrlXlrCLSzB+9/UWsvz7hcoxVXkuU3Rj9HOIaEgdU//qlchtVfypQJmX84pTOns11LFW8i56C5zh3Ws5m27N2ywDz4M7OtrmCNsb5kydQerho2Uf7C/iHvYchi/WHiOzE55t0UStFTBmhatC2wLrApPzsp1ToqHMA1TNE7c7RgMQ/eLvwjY7Dv3b4nlFNjdz1EgrITKkQ13Pry1ic0Kocc5Qqj+t3cATSnoAdL3W3dPuPtzu04Nu3ZcP3U9lIHS35Bv9ivVOTJj/vAOwnijU6DRUU7fw5E9eWoaaTmRtd1uB6G0bzbq6KBrFBLXYZnndQ3l5o3RR3xgIZUy8a5AlY5NUCN0TFG5xcRTp/ZLoZf3tqcRayEY2tiRFSvPaesp4v8gplGQpPr1o0YDRisF2k9wfyV0p2xfJukIIMSfYpvMdzdHJq6u/6T/7SIQXgC3tXWGX+1r9ZHdXNNt9yZY58EmnSWdLZmURm9/H0BFZT3gltiPs6PvxWtzGPZ8nzoxlvcbeWJeL8pLuvYj2jdU0ghPLQcLAiCjf3ePrXP9g/P5aPGU3ctXmEqIHXyidaD3HjVcmgkzWVbWIFbOrZm2RxRXNN47bRNNH9tOevNHB00XEKceE6lrsAgax+iLk= 12 | # skip_cleanup: true 13 | # on: 14 | # tags: true 15 | # branch: master 16 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017 Huang 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # 📷 page2image 2 | 3 | [![npm version](https://badge.fury.io/js/page2image.svg)](https://www.npmjs.com/package/page2image) 4 | [![Total downloads](https://img.shields.io/npm/dt/page2image.svg)](https://www.npmjs.com/package/page2image) 5 | [![Build Status](https://travis-ci.org/Runjuu/page2image.svg?branch=master)](https://travis-ci.org/Runjuu/page2image) 6 | [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/Runjuu/page2image/pulls) 7 | [![Greenkeeper badge](https://badges.greenkeeper.io/Runjuu/page2image.svg)](https://greenkeeper.io/) 8 | [![MIT Licence](https://badges.frapsoft.com/os/mit/mit.svg?v=103)](https://opensource.org/licenses/mit-license.php) 9 | 10 | page2image is an npm package using [Headless Chrome](https://developers.google.com/web/updates/2017/04/headless-chrome) for taking screenshots which also provides [CLI](https://github.com/Runjuu/page2image#using-by-cli-️) command 11 | 12 | ## Using By Module 📦 13 | 14 | ### Install 15 | ```bash 16 | npm i page2image --save 17 | ``` 18 | 19 | ### Quick Examples 20 | ```js 21 | import Screenshot from 'page2image'; 22 | 23 | const screenshot = new Screenshot({ 24 | waitUntil: 'networkidle2', 25 | viewportConfig: { width: 1920, height: 1080 }, 26 | screenshotConfig: { fullPage: true, path: 'screenshot.png' }, 27 | }); 28 | 29 | screenshot 30 |  .takeScreenshot('https://github.com/Runjuu') 31 | .then(process.exit); 32 | 33 | ``` 34 | 35 | ### Methods 36 | 37 | #### takeScreenshot(url:string) 38 | Accept a url string as an argument and return an image Buffer 39 | 40 | #### init([Config](https://github.com/Runjuu/page2image#config)) 41 | Accept a [Config](https://github.com/Runjuu/page2image#config) object and next time calling takeScreenshot will using new config to take screenshot 42 | 43 | ### Config: {} 44 | - [waitUntil](https://github.com/GoogleChrome/puppeteer/blob/v1.2.0/docs/api.md#pagegotourl-options) 45 | - [evaluate](https://github.com/GoogleChrome/puppeteer/blob/v0.12.0/docs/api.md#pageevaluatepagefunction-args) 46 | - [viewportConfig](https://github.com/GoogleChrome/puppeteer/blob/v0.12.0/docs/api.md#pagesetviewportviewport) 47 | - [screenshotConfig](https://github.com/GoogleChrome/puppeteer/blob/v0.12.0/docs/api.md#pagescreenshotoptions) 48 | - disableJS <[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Boolean_type)> 49 | - whether or not to disable JavaScript on the page. Defaults to `false` 50 | - [emulateConfig](https://github.com/GoogleChrome/puppeteer/blob/v1.2.0/docs/api.md#pageemulateoptions) 51 | - [selector](https://github.com/GoogleChrome/puppeteer/blob/v1.2.0/docs/api.md#pageselector) 52 | - if `selector` is valid, page2image will [take screenshot for selected element](https://github.com/GoogleChrome/puppeteer/blob/v1.2.0/docs/api.md#elementhandlescreenshotoptions) 53 | --- 54 | ## Using By CLI ⌨️ 55 | 56 | ### Install 57 | ```bash 58 | npm i page2image --global 59 | ``` 60 | 61 | ### Quick Examples 62 | ```bash 63 | # Single page 64 | > page2image https://github.com/Runjuu --type=jpeg --quality=80 65 | 66 | # Multi-page 67 | > page2image https://github.com/Runjuu https://github.com/Runjuu --type=jpeg --quality=80 68 | 69 | # Local file 70 | > page2image ./index.html --type=jpeg --quality=80 71 | ``` 72 | 73 | ### Args \: \ 74 | 75 | #### width: 1366 76 | > Page width in pixels. 77 | 78 | #### height: 768 79 | > Page height in pixels, default will take a full page screenshot. 80 | 81 | #### type: png 82 | > Specify screenshot type, could be either 'jpeg' or 'png'. 83 | 84 | #### quality: 100 85 | > The quality of the image, between 0-100. Not applicable to png images. 86 | 87 | #### dpr: 2 88 | > Specify device scale factor. 89 | 90 | #### selector: null 91 | > take a screenshot for the selected element 92 | ```bash 93 | page2image https://github.com/Runjuu --selector=".js-contribution-graph" 94 | ``` 95 | 96 | #### disableJS: false 97 | > To disable JavaScript on the page. 98 | 99 | #### waitUntil: networkidle2 100 | > When to consider navigation succeeded. [more details](https://github.com/GoogleChrome/puppeteer/blob/v1.2.0/docs/api.md#pagegotourl-options) 101 | 102 | #### sleep: 0 103 | ##### if sleep is a number 104 | > Wait ${sleep} milliseconds to take screenshot. 105 | ##### if sleep is a selector 106 | > Wait for the selector to appear in page 107 | 108 | #### emulate: false 109 | > List of all available devices is available in the [source code](https://github.com/Runjuu/page2image/blob/master/src/filterEmulateInfos.js). Below is an example of using `emulate` args to emulate iPhone 6 110 | ```bash 111 | page2image https://github.com/Runjuu --emulate=iPhone6 112 | ``` 113 | 114 | #### scrollToBottom: false 115 | > Wait till viewport scroll to the bottom of the page 116 | 117 | #### named: \ 118 | > Name of screenshot 119 | 120 | #### path: \ 121 | > Path to save the screenshot 122 | ```bash 123 | page2image https://github.com/Runjuu --path=../ 124 | page2image https://github.com/Runjuu --path=/User/someone/ 125 | page2image https://github.com/Runjuu --path=~/Downloads 126 | ``` 127 | 128 |

129 | # To Do 130 | - [x] take screenshots via url 131 | - [x] take screenshots from local html file 132 | - [ ] take multiple screenshots from file 133 | 134 | ### 🤔 have any questions? 👉 [new issues](https://github.com/Runjuu/page2image/issues/new) 😉 135 | -------------------------------------------------------------------------------- /app.js: -------------------------------------------------------------------------------- 1 | import screenshot from './lib/'; 2 | 3 | export default screenshot; 4 | -------------------------------------------------------------------------------- /bin/build.js: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env node 2 | const shell = require('shelljs'); 3 | 4 | const babel = 'node_modules/.bin/babel'; 5 | const command = [ 6 | `${babel} app.js --out-file index.js`, 7 | `${babel} src --out-dir lib`, 8 | `${babel} bin --ignore build --out-dir buildBin`, 9 | ]; 10 | 11 | shell 12 | .exec(`${command.join(' && ')}`); 13 | -------------------------------------------------------------------------------- /bin/screenshot.js: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env node 2 | /* eslint-disable no-console */ 3 | 4 | const os = require('os'); 5 | const path = require('path'); 6 | const args = require('args-parser')(process.argv); 7 | const packageInfo = require('../package.json'); 8 | const { default: Screenshot } = require('../'); 9 | 10 | const isUrl = url => /[^\w]/g.test(url); 11 | const urls = Object.keys(args).filter(key => isUrl(key)); 12 | const { 13 | width = 1366, 14 | height, 15 | type = 'png', 16 | quality = 100, 17 | dpr: deviceScaleFactor = 2, 18 | emulate: emulateConfig, 19 | waitUntil = 'networkidle2', 20 | disableJS = false, 21 | scrollToBottom, 22 | sleep, 23 | named, 24 | path: outputPath = './', 25 | version, 26 | selector, 27 | V, 28 | } = args; 29 | 30 | if (version || V) console.log(packageInfo.version); 31 | 32 | function isValidLocalPath(localPath) { 33 | return localPath.replace(/\./g, '').indexOf('/') === 0; 34 | } 35 | 36 | function fileName(url) { 37 | let name; 38 | 39 | if (isValidLocalPath(url)) { 40 | name = `${path.basename(url, path.extname(url))}.${type}`; 41 | } else { 42 | name = `${url.replace(/http[^/]+\/\//, '').replace(/\//g, '_').replace(/\?.*/, '')}.${type}`; 43 | } 44 | 45 | if (!fileName.count) fileName.count = 0; 46 | if (named && named !== true) name = `${named}${fileName.count > 0 ? `_${fileName.count}` : ''}.${type}`; 47 | 48 | fileName.count += 1; 49 | return name; 50 | } 51 | 52 | function withOutputPath(savedName) { 53 | return path.join( 54 | outputPath.replace(/^~/, os.homedir()), 55 | savedName, 56 | ); 57 | } 58 | 59 | function getEvaluate() { 60 | if (sleep) { 61 | return { 62 | func: timeout => (new Promise((resolve) => { 63 | setTimeout(resolve, timeout); 64 | })), 65 | args: sleep, 66 | }; 67 | } else { 68 | return null; 69 | } 70 | } 71 | 72 | async function takeAllScreenshot(screenshot) { 73 | let url = urls.shift(); 74 | try { 75 | if (typeof url === 'string') { 76 | let savedName = fileName(url); 77 | 78 | if (isValidLocalPath(url)) { 79 | url = path.isAbsolute(url) ? url : path.resolve(url); 80 | savedName = fileName(url); 81 | 82 | url = `file://${url}`; 83 | } else if (url.indexOf('://') === -1) { 84 | url = `http://${url}`; 85 | savedName = fileName(url); 86 | } 87 | 88 | await screenshot.init({ 89 | evaluate: getEvaluate(), 90 | disableJS, 91 | waitUntil, 92 | emulateConfig, 93 | selector, 94 | screenshotConfig: Object.assign( 95 | { type, path: withOutputPath(savedName) }, 96 | type === 'jpeg' ? { quality } : null, // only jpeg have quality 97 | height ? null : { fullPage: true }, // when height is not specified, using fullPage 98 | ), 99 | }); 100 | 101 | console.log(`🤖 start take screenshot with ${url.path}`.data); 102 | await screenshot.takeScreenshot(url); 103 | console.log(`🎉 save ${url.path} at ${withOutputPath(savedName).info}`.data); 104 | } 105 | } catch (err) { 106 | console.error(`😿 cannot take screenshot with ${url.path}`.error); 107 | console.error(err); 108 | } 109 | if (urls.length > 0) await takeAllScreenshot(screenshot); 110 | } 111 | 112 | (async () => { 113 | const screenshot = new Screenshot({ 114 | waitUntil: 'networkidle2', 115 | waitForFunction: scrollToBottom ? () => { 116 | if (window.page2image.scrollToBottom()) { 117 | return window.page2image.checkIfImageBeenLoaded(); 118 | } 119 | return false; 120 | } : () => window.page2image.checkIfImageBeenLoaded(), 121 | viewportConfig: { width, height: height || 768, deviceScaleFactor }, 122 | }); 123 | await takeAllScreenshot(screenshot); 124 | process.exit(0); 125 | })(); 126 | -------------------------------------------------------------------------------- /demo/demo.js: -------------------------------------------------------------------------------- 1 | const Screenshot = require('../').default; 2 | 3 | const screenshot = new Screenshot({ 4 | waitUntil: 'networkidle2', 5 | viewportConfig: { width: 1920, height: 100 }, 6 | screenshotConfig: { fullPage: true, path: 'screenshot_with_full_page.png' }, 7 | launchConfig: { 8 | args: [ 9 | '--no-sandbox', 10 | '--disable-setuid-sandbox', 11 | ], 12 | }, 13 | }); 14 | 15 | screenshot.takeScreenshot('https://github.com/Runjuu') 16 | .then(() => { 17 | screenshot.updateConfig({ 18 | selector: '.js-contribution-graph', 19 | screenshotConfig: { path: 'screenshot_with_element.png' }, 20 | }); 21 | return screenshot.takeScreenshot('https://github.com/Runjuu'); 22 | }) 23 | .then(process.exit); 24 | -------------------------------------------------------------------------------- /demo/package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "demo", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@types/accepts": { 8 | "version": "1.3.2", 9 | "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.2.tgz", 10 | "integrity": "sha1-Uol61aUfBeovV/joE2CFx9HDhaU=" 11 | }, 12 | "@types/connect": { 13 | "version": "3.4.31", 14 | "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.31.tgz", 15 | "integrity": "sha512-OPSxsP6XqA3984KWDUXq/u05Hu8VWa/2rUVlw/aDUOx87BptIep6xb3NdCxCpKLfLdjZcCE5jR+gouTul3gjdA==", 16 | "requires": { 17 | "@types/node": "8.0.24" 18 | } 19 | }, 20 | "@types/cookies": { 21 | "version": "0.7.0", 22 | "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.7.0.tgz", 23 | "integrity": "sha512-lbLe3uddY92a2Zcd8GzJUhTwN5bxNGw//ew6PyTfeoQ87OuT/CJVJpdtttEBPMG/v9FG6vBjfQQRwicOKfvVFg==", 24 | "requires": { 25 | "@types/connect": "3.4.31", 26 | "@types/express": "4.0.37", 27 | "@types/keygrip": "1.0.1", 28 | "@types/node": "8.0.24" 29 | } 30 | }, 31 | "@types/express": { 32 | "version": "4.0.37", 33 | "resolved": "https://registry.npmjs.org/@types/express/-/express-4.0.37.tgz", 34 | "integrity": "sha512-tIULTLzQpFFs5/PKnFIAFOsXQxss76glppbVKR3/jddPK26SBsD5HF5grn5G2jOGtpRWSBvYmDYoduVv+3wOXg==", 35 | "requires": { 36 | "@types/express-serve-static-core": "4.0.50", 37 | "@types/serve-static": "1.7.32" 38 | } 39 | }, 40 | "@types/express-serve-static-core": { 41 | "version": "4.0.50", 42 | "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.0.50.tgz", 43 | "integrity": "sha512-0n1YgeUfZEIaMMu82LuOFIFDyMtFtcEP0yjQKihJlNjpCiygDVri7C26DC7jaUOwFXL6ZU2x4tGtNYNEgeO3tw==", 44 | "requires": { 45 | "@types/node": "8.0.24" 46 | } 47 | }, 48 | "@types/http-assert": { 49 | "version": "1.2.0", 50 | "resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.2.0.tgz", 51 | "integrity": "sha1-C4KZMDbobG/ylE4DO3O1foXM3Ks=" 52 | }, 53 | "@types/keygrip": { 54 | "version": "1.0.1", 55 | "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.1.tgz", 56 | "integrity": "sha1-/1QEYtL7TQqIRBzq8n0oewHD2Hg=" 57 | }, 58 | "@types/koa": { 59 | "version": "2.0.39", 60 | "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.0.39.tgz", 61 | "integrity": "sha1-RboSSdiEm5sP+MHW0vgLCDi4n/o=", 62 | "requires": { 63 | "@types/accepts": "1.3.2", 64 | "@types/cookies": "0.7.0", 65 | "@types/http-assert": "1.2.0", 66 | "@types/keygrip": "1.0.1", 67 | "@types/koa-compose": "3.2.2", 68 | "@types/node": "8.0.24" 69 | } 70 | }, 71 | "@types/koa-compose": { 72 | "version": "3.2.2", 73 | "resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.2.tgz", 74 | "integrity": "sha1-3BBuAAu/kqOskA91bfRzRIh+6Ec=" 75 | }, 76 | "@types/mime": { 77 | "version": "1.3.1", 78 | "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.1.tgz", 79 | "integrity": "sha512-rek8twk9C58gHYqIrUlJsx8NQMhlxqHzln9Z9ODqiNgv3/s+ZwIrfr+djqzsnVM12xe9hL98iJ20lj2RvCBv6A==" 80 | }, 81 | "@types/node": { 82 | "version": "8.0.24", 83 | "resolved": "https://registry.npmjs.org/@types/node/-/node-8.0.24.tgz", 84 | "integrity": "sha512-c3Npme+2JGqxW8+B+aXdN5SPIlCf1C8WxQC6Ea39rO/ASPosnMkWVR16mDJtRE+2dr2xwOQ7DiLxb+wO/TWuPg==" 85 | }, 86 | "@types/serve-static": { 87 | "version": "1.7.32", 88 | "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.7.32.tgz", 89 | "integrity": "sha512-WpI0g7M1FiOmJ/a97Qrjafq2I938tjAZ3hZr9O7sXyA6oUhH3bqUNZIt7r1KZg8TQAKxcvxt6JjQ5XuLfIBFvg==", 90 | "requires": { 91 | "@types/express-serve-static-core": "4.0.50", 92 | "@types/mime": "1.3.1" 93 | } 94 | }, 95 | "accepts": { 96 | "version": "1.3.4", 97 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.4.tgz", 98 | "integrity": "sha1-hiRnWMfdbSGmR0/whKR0DsBesh8=", 99 | "requires": { 100 | "mime-types": "2.1.16", 101 | "negotiator": "0.6.1" 102 | } 103 | }, 104 | "any-promise": { 105 | "version": "1.3.0", 106 | "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", 107 | "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=" 108 | }, 109 | "balanced-match": { 110 | "version": "1.0.0", 111 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 112 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 113 | }, 114 | "brace-expansion": { 115 | "version": "1.1.8", 116 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 117 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 118 | "requires": { 119 | "balanced-match": "1.0.0", 120 | "concat-map": "0.0.1" 121 | } 122 | }, 123 | "co": { 124 | "version": "4.6.0", 125 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 126 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" 127 | }, 128 | "concat-map": { 129 | "version": "0.0.1", 130 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 131 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 132 | }, 133 | "concat-stream": { 134 | "version": "1.6.0", 135 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", 136 | "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", 137 | "requires": { 138 | "inherits": "2.0.3", 139 | "readable-stream": "2.3.3", 140 | "typedarray": "0.0.6" 141 | } 142 | }, 143 | "content-disposition": { 144 | "version": "0.5.2", 145 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz", 146 | "integrity": "sha1-DPaLud318r55YcOoUXjLhdunjLQ=" 147 | }, 148 | "content-type": { 149 | "version": "1.0.2", 150 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.2.tgz", 151 | "integrity": "sha1-t9ETrueo3Se9IRM8TcJSnfFyHu0=" 152 | }, 153 | "cookies": { 154 | "version": "0.7.0", 155 | "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.7.0.tgz", 156 | "integrity": "sha1-C8lh2RDDUlSYD8fJ7/XaEgEbvwA=", 157 | "requires": { 158 | "depd": "1.1.1", 159 | "keygrip": "1.0.1" 160 | } 161 | }, 162 | "core-util-is": { 163 | "version": "1.0.2", 164 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 165 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 166 | }, 167 | "debug": { 168 | "version": "3.0.0", 169 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.0.0.tgz", 170 | "integrity": "sha512-XQkHxxqbsCb+zFurCHbotmJZl5jXsxvkRt952pT6Hpo7LmjWAJF12d9/kqBg5owjbLADbBDli1olravjSiSg8g==", 171 | "requires": { 172 | "ms": "2.0.0" 173 | } 174 | }, 175 | "deep-equal": { 176 | "version": "1.0.1", 177 | "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz", 178 | "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=" 179 | }, 180 | "delegates": { 181 | "version": "1.0.0", 182 | "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", 183 | "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" 184 | }, 185 | "depd": { 186 | "version": "1.1.1", 187 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", 188 | "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=" 189 | }, 190 | "destroy": { 191 | "version": "1.0.4", 192 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 193 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 194 | }, 195 | "ee-first": { 196 | "version": "1.1.1", 197 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 198 | "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" 199 | }, 200 | "error-inject": { 201 | "version": "1.0.0", 202 | "resolved": "https://registry.npmjs.org/error-inject/-/error-inject-1.0.0.tgz", 203 | "integrity": "sha1-4rPZG1Su1nLzCdlQ0VSFD6EdTzc=" 204 | }, 205 | "escape-html": { 206 | "version": "1.0.3", 207 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 208 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" 209 | }, 210 | "extract-zip": { 211 | "version": "1.6.5", 212 | "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.5.tgz", 213 | "integrity": "sha1-maBnNbbqIOqbcF13ms/8yHz/BEA=", 214 | "requires": { 215 | "concat-stream": "1.6.0", 216 | "debug": "2.2.0", 217 | "mkdirp": "0.5.0", 218 | "yauzl": "2.4.1" 219 | }, 220 | "dependencies": { 221 | "debug": { 222 | "version": "2.2.0", 223 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.2.0.tgz", 224 | "integrity": "sha1-+HBX6ZWxofauaklgZkE3vFbwOdo=", 225 | "requires": { 226 | "ms": "0.7.1" 227 | } 228 | }, 229 | "ms": { 230 | "version": "0.7.1", 231 | "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.1.tgz", 232 | "integrity": "sha1-nNE8A62/8ltl7/3nzoZO6VIBcJg=" 233 | } 234 | } 235 | }, 236 | "fd-slicer": { 237 | "version": "1.0.1", 238 | "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", 239 | "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", 240 | "requires": { 241 | "pend": "1.2.0" 242 | } 243 | }, 244 | "fresh": { 245 | "version": "0.5.0", 246 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.0.tgz", 247 | "integrity": "sha1-9HTKXmqSRtb9jglTz6m5yAWvp44=" 248 | }, 249 | "fs.realpath": { 250 | "version": "1.0.0", 251 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 252 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 253 | }, 254 | "glob": { 255 | "version": "7.1.2", 256 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 257 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 258 | "requires": { 259 | "fs.realpath": "1.0.0", 260 | "inflight": "1.0.6", 261 | "inherits": "2.0.3", 262 | "minimatch": "3.0.4", 263 | "once": "1.4.0", 264 | "path-is-absolute": "1.0.1" 265 | } 266 | }, 267 | "http-assert": { 268 | "version": "1.3.0", 269 | "resolved": "https://registry.npmjs.org/http-assert/-/http-assert-1.3.0.tgz", 270 | "integrity": "sha1-oxpc+IyHPsu1eWkH1NbxMujAHko=", 271 | "requires": { 272 | "deep-equal": "1.0.1", 273 | "http-errors": "1.6.2" 274 | } 275 | }, 276 | "http-errors": { 277 | "version": "1.6.2", 278 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", 279 | "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", 280 | "requires": { 281 | "depd": "1.1.1", 282 | "inherits": "2.0.3", 283 | "setprototypeof": "1.0.3", 284 | "statuses": "1.3.1" 285 | } 286 | }, 287 | "inflight": { 288 | "version": "1.0.6", 289 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 290 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 291 | "requires": { 292 | "once": "1.4.0", 293 | "wrappy": "1.0.2" 294 | } 295 | }, 296 | "inherits": { 297 | "version": "2.0.3", 298 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 299 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 300 | }, 301 | "is-generator-function": { 302 | "version": "1.0.6", 303 | "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.6.tgz", 304 | "integrity": "sha1-nnFlPNFf/zQcecQVFGChMdMen8Q=" 305 | }, 306 | "isarray": { 307 | "version": "1.0.0", 308 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 309 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 310 | }, 311 | "keygrip": { 312 | "version": "1.0.1", 313 | "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.0.1.tgz", 314 | "integrity": "sha1-sC+kgW7vIajEs1yp5Skh/8iaMOk=" 315 | }, 316 | "koa": { 317 | "version": "2.3.0", 318 | "resolved": "https://registry.npmjs.org/koa/-/koa-2.3.0.tgz", 319 | "integrity": "sha1-nh6OTaQBg5xXuFJ+rcV/dhJ1Vac=", 320 | "requires": { 321 | "accepts": "1.3.4", 322 | "content-disposition": "0.5.2", 323 | "content-type": "1.0.2", 324 | "cookies": "0.7.0", 325 | "debug": "3.0.0", 326 | "delegates": "1.0.0", 327 | "depd": "1.1.1", 328 | "destroy": "1.0.4", 329 | "error-inject": "1.0.0", 330 | "escape-html": "1.0.3", 331 | "fresh": "0.5.0", 332 | "http-assert": "1.3.0", 333 | "http-errors": "1.6.2", 334 | "is-generator-function": "1.0.6", 335 | "koa-compose": "4.0.0", 336 | "koa-convert": "1.2.0", 337 | "koa-is-json": "1.0.0", 338 | "mime-types": "2.1.16", 339 | "on-finished": "2.3.0", 340 | "only": "0.0.2", 341 | "parseurl": "1.3.1", 342 | "statuses": "1.3.1", 343 | "type-is": "1.6.15", 344 | "vary": "1.1.1" 345 | } 346 | }, 347 | "koa-compose": { 348 | "version": "4.0.0", 349 | "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-4.0.0.tgz", 350 | "integrity": "sha1-KAClE9nDYe8NY4UrA45Pby1adzw=" 351 | }, 352 | "koa-convert": { 353 | "version": "1.2.0", 354 | "resolved": "https://registry.npmjs.org/koa-convert/-/koa-convert-1.2.0.tgz", 355 | "integrity": "sha1-2kCHXfSd4FOQmNFwC1CCDOvNIdA=", 356 | "requires": { 357 | "co": "4.6.0", 358 | "koa-compose": "3.2.1" 359 | }, 360 | "dependencies": { 361 | "koa-compose": { 362 | "version": "3.2.1", 363 | "resolved": "https://registry.npmjs.org/koa-compose/-/koa-compose-3.2.1.tgz", 364 | "integrity": "sha1-qFzLQLfZhtjlo0Wzoazo6rz1Tec=", 365 | "requires": { 366 | "any-promise": "1.3.0" 367 | } 368 | } 369 | } 370 | }, 371 | "koa-is-json": { 372 | "version": "1.0.0", 373 | "resolved": "https://registry.npmjs.org/koa-is-json/-/koa-is-json-1.0.0.tgz", 374 | "integrity": "sha1-JzwH7c3Ljfaiwat9We52SRRR7BQ=" 375 | }, 376 | "media-typer": { 377 | "version": "0.3.0", 378 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 379 | "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 380 | }, 381 | "mime": { 382 | "version": "1.3.6", 383 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz", 384 | "integrity": "sha1-WR2E02U6awtKO5343lqoEI5y5eA=" 385 | }, 386 | "mime-db": { 387 | "version": "1.29.0", 388 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.29.0.tgz", 389 | "integrity": "sha1-SNJtI1WJZRcErFkWygYAGRQmaHg=" 390 | }, 391 | "mime-types": { 392 | "version": "2.1.16", 393 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.16.tgz", 394 | "integrity": "sha1-K4WKUuXs1RbbiXrCvodIeDBpjiM=", 395 | "requires": { 396 | "mime-db": "1.29.0" 397 | } 398 | }, 399 | "minimatch": { 400 | "version": "3.0.4", 401 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 402 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 403 | "requires": { 404 | "brace-expansion": "1.1.8" 405 | } 406 | }, 407 | "minimist": { 408 | "version": "0.0.8", 409 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 410 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 411 | }, 412 | "mkdirp": { 413 | "version": "0.5.0", 414 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", 415 | "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", 416 | "requires": { 417 | "minimist": "0.0.8" 418 | } 419 | }, 420 | "ms": { 421 | "version": "2.0.0", 422 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 423 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 424 | }, 425 | "negotiator": { 426 | "version": "0.6.1", 427 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.1.tgz", 428 | "integrity": "sha1-KzJxhOiZIQEXeyhWP7XnECrNDKk=" 429 | }, 430 | "on-finished": { 431 | "version": "2.3.0", 432 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 433 | "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", 434 | "requires": { 435 | "ee-first": "1.1.1" 436 | } 437 | }, 438 | "once": { 439 | "version": "1.4.0", 440 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 441 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 442 | "requires": { 443 | "wrappy": "1.0.2" 444 | } 445 | }, 446 | "only": { 447 | "version": "0.0.2", 448 | "resolved": "https://registry.npmjs.org/only/-/only-0.0.2.tgz", 449 | "integrity": "sha1-Kv3oTQPlC5qO3EROMGEKcCle37Q=" 450 | }, 451 | "page2image": { 452 | "version": "1.0.0", 453 | "resolved": "https://registry.npmjs.org/page2image/-/page2image-1.0.0.tgz", 454 | "integrity": "sha512-zxd8W8VtG0oZcwNTzBAa9L2q8mwyYBD4Y1B58A7S1MOw/4zGE9fB+nvGLDbI1LJf+ZBPGvSO6/XIIHSD6up7tA==", 455 | "requires": { 456 | "@types/koa": "2.0.39", 457 | "koa": "2.3.0", 458 | "puppeteer": "0.9.0" 459 | } 460 | }, 461 | "parseurl": { 462 | "version": "1.3.1", 463 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.1.tgz", 464 | "integrity": "sha1-yKuMkiO6NIiKpkopeyiFO+wY2lY=" 465 | }, 466 | "path-is-absolute": { 467 | "version": "1.0.1", 468 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 469 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 470 | }, 471 | "pend": { 472 | "version": "1.2.0", 473 | "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", 474 | "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" 475 | }, 476 | "process-nextick-args": { 477 | "version": "1.0.7", 478 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 479 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" 480 | }, 481 | "progress": { 482 | "version": "2.0.0", 483 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 484 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" 485 | }, 486 | "puppeteer": { 487 | "version": "0.9.0", 488 | "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-0.9.0.tgz", 489 | "integrity": "sha512-wlmYlLIQsySYnxFQxXTMp1ACB5oMyHI6y2pCJ4YoVqyp0Uml3T+HS64jGimxOD3x93T3G+FM3JI3nBmHCovNgA==", 490 | "requires": { 491 | "debug": "2.6.8", 492 | "extract-zip": "1.6.5", 493 | "mime": "1.3.6", 494 | "progress": "2.0.0", 495 | "rimraf": "2.6.1", 496 | "ws": "3.1.0" 497 | }, 498 | "dependencies": { 499 | "debug": { 500 | "version": "2.6.8", 501 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", 502 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", 503 | "requires": { 504 | "ms": "2.0.0" 505 | } 506 | } 507 | } 508 | }, 509 | "readable-stream": { 510 | "version": "2.3.3", 511 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 512 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 513 | "requires": { 514 | "core-util-is": "1.0.2", 515 | "inherits": "2.0.3", 516 | "isarray": "1.0.0", 517 | "process-nextick-args": "1.0.7", 518 | "safe-buffer": "5.1.1", 519 | "string_decoder": "1.0.3", 520 | "util-deprecate": "1.0.2" 521 | } 522 | }, 523 | "rimraf": { 524 | "version": "2.6.1", 525 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz", 526 | "integrity": "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=", 527 | "requires": { 528 | "glob": "7.1.2" 529 | } 530 | }, 531 | "safe-buffer": { 532 | "version": "5.1.1", 533 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 534 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 535 | }, 536 | "setprototypeof": { 537 | "version": "1.0.3", 538 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", 539 | "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=" 540 | }, 541 | "statuses": { 542 | "version": "1.3.1", 543 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", 544 | "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=" 545 | }, 546 | "string_decoder": { 547 | "version": "1.0.3", 548 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 549 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 550 | "requires": { 551 | "safe-buffer": "5.1.1" 552 | } 553 | }, 554 | "type-is": { 555 | "version": "1.6.15", 556 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.15.tgz", 557 | "integrity": "sha1-yrEPtJCeRByChC6v4a1kbIGARBA=", 558 | "requires": { 559 | "media-typer": "0.3.0", 560 | "mime-types": "2.1.16" 561 | } 562 | }, 563 | "typedarray": { 564 | "version": "0.0.6", 565 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 566 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 567 | }, 568 | "ultron": { 569 | "version": "1.1.0", 570 | "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.0.tgz", 571 | "integrity": "sha1-sHoualQagV/Go0zNRTO67DB8qGQ=" 572 | }, 573 | "util-deprecate": { 574 | "version": "1.0.2", 575 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 576 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 577 | }, 578 | "vary": { 579 | "version": "1.1.1", 580 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.1.tgz", 581 | "integrity": "sha1-Z1Neu2lMHVIldFeYRmUyP1h+jTc=" 582 | }, 583 | "wrappy": { 584 | "version": "1.0.2", 585 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 586 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 587 | }, 588 | "ws": { 589 | "version": "3.1.0", 590 | "resolved": "https://registry.npmjs.org/ws/-/ws-3.1.0.tgz", 591 | "integrity": "sha512-TU4/qKFlyQFqNITNWiqPCUY9GqlAhEotlzfcZcve6VT1YEngQl1dDMqwQQS3eMYruJ5r/UD3lcsWib6iVMDGDw==", 592 | "requires": { 593 | "safe-buffer": "5.1.1", 594 | "ultron": "1.1.0" 595 | } 596 | }, 597 | "yauzl": { 598 | "version": "2.4.1", 599 | "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", 600 | "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", 601 | "requires": { 602 | "fd-slicer": "1.0.1" 603 | } 604 | } 605 | } 606 | } 607 | -------------------------------------------------------------------------------- /demo/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "demo", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "demo.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "keywords": [], 10 | "author": "Runjuu", 11 | "license": "MIT", 12 | "dependencies": { 13 | "page2image": "^1.0.0" 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "page2image", 3 | "version": "2.0.1", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@babel/code-frame": { 8 | "version": "7.0.0-beta.44", 9 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0-beta.44.tgz", 10 | "integrity": "sha512-cuAuTTIQ9RqcFRJ/Y8PvTh+paepNcaGxwQwjIDRWPXmzzyAeCO4KqS9ikMvq0MCbRk6GlYKwfzStrcP3/jSL8g==", 11 | "dev": true, 12 | "requires": { 13 | "@babel/highlight": "7.0.0-beta.44" 14 | } 15 | }, 16 | "@babel/generator": { 17 | "version": "7.0.0-beta.44", 18 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.0.0-beta.44.tgz", 19 | "integrity": "sha512-5xVb7hlhjGcdkKpMXgicAVgx8syK5VJz193k0i/0sLP6DzE6lRrU1K3B/rFefgdo9LPGMAOOOAWW4jycj07ShQ==", 20 | "dev": true, 21 | "requires": { 22 | "@babel/types": "7.0.0-beta.44", 23 | "jsesc": "^2.5.1", 24 | "lodash": "^4.2.0", 25 | "source-map": "^0.5.0", 26 | "trim-right": "^1.0.1" 27 | }, 28 | "dependencies": { 29 | "jsesc": { 30 | "version": "2.5.1", 31 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.1.tgz", 32 | "integrity": "sha1-5CGiqOINawgZ3yiQj3glJrlt0f4=", 33 | "dev": true 34 | } 35 | } 36 | }, 37 | "@babel/helper-function-name": { 38 | "version": "7.0.0-beta.44", 39 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.0.0-beta.44.tgz", 40 | "integrity": "sha512-MHRG2qZMKMFaBavX0LWpfZ2e+hLloT++N7rfM3DYOMUOGCD8cVjqZpwiL8a0bOX3IYcQev1ruciT0gdFFRTxzg==", 41 | "dev": true, 42 | "requires": { 43 | "@babel/helper-get-function-arity": "7.0.0-beta.44", 44 | "@babel/template": "7.0.0-beta.44", 45 | "@babel/types": "7.0.0-beta.44" 46 | } 47 | }, 48 | "@babel/helper-get-function-arity": { 49 | "version": "7.0.0-beta.44", 50 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0-beta.44.tgz", 51 | "integrity": "sha512-w0YjWVwrM2HwP6/H3sEgrSQdkCaxppqFeJtAnB23pRiJB5E/O9Yp7JAAeWBl+gGEgmBFinnTyOv2RN7rcSmMiw==", 52 | "dev": true, 53 | "requires": { 54 | "@babel/types": "7.0.0-beta.44" 55 | } 56 | }, 57 | "@babel/helper-split-export-declaration": { 58 | "version": "7.0.0-beta.44", 59 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0-beta.44.tgz", 60 | "integrity": "sha512-aQ7QowtkgKKzPGf0j6u77kBMdUFVBKNHw2p/3HX/POt5/oz8ec5cs0GwlgM8Hz7ui5EwJnzyfRmkNF1Nx1N7aA==", 61 | "dev": true, 62 | "requires": { 63 | "@babel/types": "7.0.0-beta.44" 64 | } 65 | }, 66 | "@babel/highlight": { 67 | "version": "7.0.0-beta.44", 68 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0-beta.44.tgz", 69 | "integrity": "sha512-Il19yJvy7vMFm8AVAh6OZzaFoAd0hbkeMZiX3P5HGD+z7dyI7RzndHB0dg6Urh/VAFfHtpOIzDUSxmY6coyZWQ==", 70 | "dev": true, 71 | "requires": { 72 | "chalk": "^2.0.0", 73 | "esutils": "^2.0.2", 74 | "js-tokens": "^3.0.0" 75 | }, 76 | "dependencies": { 77 | "ansi-styles": { 78 | "version": "3.2.1", 79 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 80 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 81 | "dev": true, 82 | "requires": { 83 | "color-convert": "^1.9.0" 84 | } 85 | }, 86 | "chalk": { 87 | "version": "2.4.1", 88 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", 89 | "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", 90 | "dev": true, 91 | "requires": { 92 | "ansi-styles": "^3.2.1", 93 | "escape-string-regexp": "^1.0.5", 94 | "supports-color": "^5.3.0" 95 | } 96 | }, 97 | "has-flag": { 98 | "version": "3.0.0", 99 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 100 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 101 | "dev": true 102 | }, 103 | "supports-color": { 104 | "version": "5.4.0", 105 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", 106 | "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", 107 | "dev": true, 108 | "requires": { 109 | "has-flag": "^3.0.0" 110 | } 111 | } 112 | } 113 | }, 114 | "@babel/template": { 115 | "version": "7.0.0-beta.44", 116 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.0.0-beta.44.tgz", 117 | "integrity": "sha512-w750Sloq0UNifLx1rUqwfbnC6uSUk0mfwwgGRfdLiaUzfAOiH0tHJE6ILQIUi3KYkjiCDTskoIsnfqZvWLBDng==", 118 | "dev": true, 119 | "requires": { 120 | "@babel/code-frame": "7.0.0-beta.44", 121 | "@babel/types": "7.0.0-beta.44", 122 | "babylon": "7.0.0-beta.44", 123 | "lodash": "^4.2.0" 124 | }, 125 | "dependencies": { 126 | "babylon": { 127 | "version": "7.0.0-beta.44", 128 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.44.tgz", 129 | "integrity": "sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g==", 130 | "dev": true 131 | } 132 | } 133 | }, 134 | "@babel/traverse": { 135 | "version": "7.0.0-beta.44", 136 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.0.0-beta.44.tgz", 137 | "integrity": "sha512-UHuDz8ukQkJCDASKHf+oDt3FVUzFd+QYfuBIsiNu/4+/ix6pP/C+uQZJ6K1oEfbCMv/IKWbgDEh7fcsnIE5AtA==", 138 | "dev": true, 139 | "requires": { 140 | "@babel/code-frame": "7.0.0-beta.44", 141 | "@babel/generator": "7.0.0-beta.44", 142 | "@babel/helper-function-name": "7.0.0-beta.44", 143 | "@babel/helper-split-export-declaration": "7.0.0-beta.44", 144 | "@babel/types": "7.0.0-beta.44", 145 | "babylon": "7.0.0-beta.44", 146 | "debug": "^3.1.0", 147 | "globals": "^11.1.0", 148 | "invariant": "^2.2.0", 149 | "lodash": "^4.2.0" 150 | }, 151 | "dependencies": { 152 | "babylon": { 153 | "version": "7.0.0-beta.44", 154 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.44.tgz", 155 | "integrity": "sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g==", 156 | "dev": true 157 | }, 158 | "debug": { 159 | "version": "3.1.0", 160 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 161 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 162 | "dev": true, 163 | "requires": { 164 | "ms": "2.0.0" 165 | } 166 | }, 167 | "globals": { 168 | "version": "11.7.0", 169 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.7.0.tgz", 170 | "integrity": "sha512-K8BNSPySfeShBQXsahYB/AbbWruVOTyVpgoIDnl8odPpeSfP2J5QO2oLFFdl2j7GfDCtZj2bMKar2T49itTPCg==", 171 | "dev": true 172 | } 173 | } 174 | }, 175 | "@babel/types": { 176 | "version": "7.0.0-beta.44", 177 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.0.0-beta.44.tgz", 178 | "integrity": "sha512-5eTV4WRmqbaFM3v9gHAIljEQJU4Ssc6fxL61JN+Oe2ga/BwyjzjamwkCVVAQjHGuAX8i0BWo42dshL8eO5KfLQ==", 179 | "dev": true, 180 | "requires": { 181 | "esutils": "^2.0.2", 182 | "lodash": "^4.2.0", 183 | "to-fast-properties": "^2.0.0" 184 | }, 185 | "dependencies": { 186 | "to-fast-properties": { 187 | "version": "2.0.0", 188 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 189 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", 190 | "dev": true 191 | } 192 | } 193 | }, 194 | "acorn": { 195 | "version": "5.1.2", 196 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.1.2.tgz", 197 | "integrity": "sha512-o96FZLJBPY1lvTuJylGA9Bk3t/GKPPJG8H0ydQQl01crzwJgspa4AEIq/pVTXigmK0PHVQhiAtn8WMBLL9D2WA==", 198 | "dev": true 199 | }, 200 | "acorn-jsx": { 201 | "version": "3.0.1", 202 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", 203 | "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", 204 | "dev": true, 205 | "requires": { 206 | "acorn": "^3.0.4" 207 | }, 208 | "dependencies": { 209 | "acorn": { 210 | "version": "3.3.0", 211 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", 212 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", 213 | "dev": true 214 | } 215 | } 216 | }, 217 | "agent-base": { 218 | "version": "4.2.0", 219 | "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.0.tgz", 220 | "integrity": "sha512-c+R/U5X+2zz2+UCrCFv6odQzJdoqI+YecuhnAJLa1zYaMc13zPfwMwZrr91Pd1DYNo/yPRbiM4WVf9whgwFsIg==", 221 | "requires": { 222 | "es6-promisify": "^5.0.0" 223 | } 224 | }, 225 | "ajv": { 226 | "version": "5.2.3", 227 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.2.3.tgz", 228 | "integrity": "sha1-wG9Zh3jETGsWGrr+NGa4GtGBTtI=", 229 | "dev": true, 230 | "requires": { 231 | "co": "^4.6.0", 232 | "fast-deep-equal": "^1.0.0", 233 | "json-schema-traverse": "^0.3.0", 234 | "json-stable-stringify": "^1.0.1" 235 | } 236 | }, 237 | "ajv-keywords": { 238 | "version": "2.1.0", 239 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.0.tgz", 240 | "integrity": "sha1-opbhf3v658HOT34N5T0pyzIWLfA=", 241 | "dev": true 242 | }, 243 | "ansi-escapes": { 244 | "version": "3.0.0", 245 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.0.0.tgz", 246 | "integrity": "sha512-O/klc27mWNUigtv0F8NJWbLF00OcegQalkqKURWdosW08YZKi4m6CnSUSvIZG1otNJbTWhN01Hhz389DW7mvDQ==", 247 | "dev": true 248 | }, 249 | "ansi-regex": { 250 | "version": "2.1.1", 251 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 252 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 253 | "dev": true 254 | }, 255 | "ansi-styles": { 256 | "version": "2.2.1", 257 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 258 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 259 | "dev": true 260 | }, 261 | "anymatch": { 262 | "version": "1.3.2", 263 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", 264 | "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", 265 | "dev": true, 266 | "optional": true, 267 | "requires": { 268 | "micromatch": "^2.1.5", 269 | "normalize-path": "^2.0.0" 270 | } 271 | }, 272 | "argparse": { 273 | "version": "1.0.9", 274 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz", 275 | "integrity": "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=", 276 | "dev": true, 277 | "requires": { 278 | "sprintf-js": "~1.0.2" 279 | } 280 | }, 281 | "args-parser": { 282 | "version": "1.1.0", 283 | "resolved": "https://registry.npmjs.org/args-parser/-/args-parser-1.1.0.tgz", 284 | "integrity": "sha1-YlO/zWlNJ5/mPqr9eNYo0UoF/6k=" 285 | }, 286 | "aria-query": { 287 | "version": "0.7.0", 288 | "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-0.7.0.tgz", 289 | "integrity": "sha512-/r2lHl09V3o74+2MLKEdewoj37YZqiQZnfen1O4iNlrOjUgeKuu1U2yF3iKh6HJxqF+OXkLMfQv65Z/cvxD6vA==", 290 | "dev": true, 291 | "requires": { 292 | "ast-types-flow": "0.0.7" 293 | } 294 | }, 295 | "arr-diff": { 296 | "version": "2.0.0", 297 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", 298 | "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", 299 | "dev": true, 300 | "optional": true, 301 | "requires": { 302 | "arr-flatten": "^1.0.1" 303 | } 304 | }, 305 | "arr-flatten": { 306 | "version": "1.1.0", 307 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 308 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 309 | "dev": true, 310 | "optional": true 311 | }, 312 | "array-includes": { 313 | "version": "3.0.3", 314 | "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", 315 | "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", 316 | "dev": true, 317 | "requires": { 318 | "define-properties": "^1.1.2", 319 | "es-abstract": "^1.7.0" 320 | } 321 | }, 322 | "array-union": { 323 | "version": "1.0.2", 324 | "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", 325 | "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", 326 | "dev": true, 327 | "requires": { 328 | "array-uniq": "^1.0.1" 329 | } 330 | }, 331 | "array-uniq": { 332 | "version": "1.0.3", 333 | "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz", 334 | "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=", 335 | "dev": true 336 | }, 337 | "array-unique": { 338 | "version": "0.2.1", 339 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", 340 | "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", 341 | "dev": true, 342 | "optional": true 343 | }, 344 | "arrify": { 345 | "version": "1.0.1", 346 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 347 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", 348 | "dev": true 349 | }, 350 | "asap": { 351 | "version": "2.0.6", 352 | "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 353 | "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=", 354 | "dev": true 355 | }, 356 | "ast-types-flow": { 357 | "version": "0.0.7", 358 | "resolved": "https://registry.npmjs.org/ast-types-flow/-/ast-types-flow-0.0.7.tgz", 359 | "integrity": "sha1-9wtzXGvKGlycItmCw+Oef+ujva0=", 360 | "dev": true 361 | }, 362 | "async-each": { 363 | "version": "1.0.1", 364 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz", 365 | "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=", 366 | "dev": true, 367 | "optional": true 368 | }, 369 | "async-limiter": { 370 | "version": "1.0.0", 371 | "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", 372 | "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" 373 | }, 374 | "axobject-query": { 375 | "version": "0.1.0", 376 | "resolved": "https://registry.npmjs.org/axobject-query/-/axobject-query-0.1.0.tgz", 377 | "integrity": "sha1-YvWdvFnJ+SQnWco0mWDnov48NsA=", 378 | "dev": true, 379 | "requires": { 380 | "ast-types-flow": "0.0.7" 381 | } 382 | }, 383 | "babel-cli": { 384 | "version": "6.26.0", 385 | "resolved": "https://registry.npmjs.org/babel-cli/-/babel-cli-6.26.0.tgz", 386 | "integrity": "sha1-UCq1SHTX24itALiHoGODzgPQAvE=", 387 | "dev": true, 388 | "requires": { 389 | "babel-core": "^6.26.0", 390 | "babel-polyfill": "^6.26.0", 391 | "babel-register": "^6.26.0", 392 | "babel-runtime": "^6.26.0", 393 | "chokidar": "^1.6.1", 394 | "commander": "^2.11.0", 395 | "convert-source-map": "^1.5.0", 396 | "fs-readdir-recursive": "^1.0.0", 397 | "glob": "^7.1.2", 398 | "lodash": "^4.17.4", 399 | "output-file-sync": "^1.1.2", 400 | "path-is-absolute": "^1.0.1", 401 | "slash": "^1.0.0", 402 | "source-map": "^0.5.6", 403 | "v8flags": "^2.1.1" 404 | } 405 | }, 406 | "babel-code-frame": { 407 | "version": "6.26.0", 408 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 409 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 410 | "dev": true, 411 | "requires": { 412 | "chalk": "^1.1.3", 413 | "esutils": "^2.0.2", 414 | "js-tokens": "^3.0.2" 415 | } 416 | }, 417 | "babel-core": { 418 | "version": "6.26.3", 419 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", 420 | "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", 421 | "dev": true, 422 | "requires": { 423 | "babel-code-frame": "^6.26.0", 424 | "babel-generator": "^6.26.0", 425 | "babel-helpers": "^6.24.1", 426 | "babel-messages": "^6.23.0", 427 | "babel-register": "^6.26.0", 428 | "babel-runtime": "^6.26.0", 429 | "babel-template": "^6.26.0", 430 | "babel-traverse": "^6.26.0", 431 | "babel-types": "^6.26.0", 432 | "babylon": "^6.18.0", 433 | "convert-source-map": "^1.5.1", 434 | "debug": "^2.6.9", 435 | "json5": "^0.5.1", 436 | "lodash": "^4.17.4", 437 | "minimatch": "^3.0.4", 438 | "path-is-absolute": "^1.0.1", 439 | "private": "^0.1.8", 440 | "slash": "^1.0.0", 441 | "source-map": "^0.5.7" 442 | }, 443 | "dependencies": { 444 | "convert-source-map": { 445 | "version": "1.5.1", 446 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.1.tgz", 447 | "integrity": "sha1-uCeAl7m8IpNl3lxiz1/K7YtVmeU=", 448 | "dev": true 449 | } 450 | } 451 | }, 452 | "babel-eslint": { 453 | "version": "8.2.5", 454 | "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-8.2.5.tgz", 455 | "integrity": "sha512-TcdEGCHHquOPQOlH6Fe6MLwPWWWJLdeKhcGoLfOTShETpoH8XYWhjWJw38KCKaTca7c/EdxLolnbakixKxnXDg==", 456 | "dev": true, 457 | "requires": { 458 | "@babel/code-frame": "7.0.0-beta.44", 459 | "@babel/traverse": "7.0.0-beta.44", 460 | "@babel/types": "7.0.0-beta.44", 461 | "babylon": "7.0.0-beta.44", 462 | "eslint-scope": "~3.7.1", 463 | "eslint-visitor-keys": "^1.0.0" 464 | }, 465 | "dependencies": { 466 | "babylon": { 467 | "version": "7.0.0-beta.44", 468 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-7.0.0-beta.44.tgz", 469 | "integrity": "sha512-5Hlm13BJVAioCHpImtFqNOF2H3ieTOHd0fmFGMxOJ9jgeFqeAwsv3u5P5cR7CSeFrkgHsT19DgFJkHV0/Mcd8g==", 470 | "dev": true 471 | } 472 | } 473 | }, 474 | "babel-generator": { 475 | "version": "6.26.1", 476 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", 477 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", 478 | "dev": true, 479 | "requires": { 480 | "babel-messages": "^6.23.0", 481 | "babel-runtime": "^6.26.0", 482 | "babel-types": "^6.26.0", 483 | "detect-indent": "^4.0.0", 484 | "jsesc": "^1.3.0", 485 | "lodash": "^4.17.4", 486 | "source-map": "^0.5.7", 487 | "trim-right": "^1.0.1" 488 | } 489 | }, 490 | "babel-helper-builder-binary-assignment-operator-visitor": { 491 | "version": "6.24.1", 492 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", 493 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", 494 | "dev": true, 495 | "requires": { 496 | "babel-helper-explode-assignable-expression": "^6.24.1", 497 | "babel-runtime": "^6.22.0", 498 | "babel-types": "^6.24.1" 499 | } 500 | }, 501 | "babel-helper-call-delegate": { 502 | "version": "6.24.1", 503 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", 504 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", 505 | "dev": true, 506 | "requires": { 507 | "babel-helper-hoist-variables": "^6.24.1", 508 | "babel-runtime": "^6.22.0", 509 | "babel-traverse": "^6.24.1", 510 | "babel-types": "^6.24.1" 511 | } 512 | }, 513 | "babel-helper-define-map": { 514 | "version": "6.26.0", 515 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", 516 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", 517 | "dev": true, 518 | "requires": { 519 | "babel-helper-function-name": "^6.24.1", 520 | "babel-runtime": "^6.26.0", 521 | "babel-types": "^6.26.0", 522 | "lodash": "^4.17.4" 523 | } 524 | }, 525 | "babel-helper-explode-assignable-expression": { 526 | "version": "6.24.1", 527 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", 528 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", 529 | "dev": true, 530 | "requires": { 531 | "babel-runtime": "^6.22.0", 532 | "babel-traverse": "^6.24.1", 533 | "babel-types": "^6.24.1" 534 | } 535 | }, 536 | "babel-helper-function-name": { 537 | "version": "6.24.1", 538 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", 539 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", 540 | "dev": true, 541 | "requires": { 542 | "babel-helper-get-function-arity": "^6.24.1", 543 | "babel-runtime": "^6.22.0", 544 | "babel-template": "^6.24.1", 545 | "babel-traverse": "^6.24.1", 546 | "babel-types": "^6.24.1" 547 | } 548 | }, 549 | "babel-helper-get-function-arity": { 550 | "version": "6.24.1", 551 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", 552 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", 553 | "dev": true, 554 | "requires": { 555 | "babel-runtime": "^6.22.0", 556 | "babel-types": "^6.24.1" 557 | } 558 | }, 559 | "babel-helper-hoist-variables": { 560 | "version": "6.24.1", 561 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", 562 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", 563 | "dev": true, 564 | "requires": { 565 | "babel-runtime": "^6.22.0", 566 | "babel-types": "^6.24.1" 567 | } 568 | }, 569 | "babel-helper-optimise-call-expression": { 570 | "version": "6.24.1", 571 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", 572 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", 573 | "dev": true, 574 | "requires": { 575 | "babel-runtime": "^6.22.0", 576 | "babel-types": "^6.24.1" 577 | } 578 | }, 579 | "babel-helper-regex": { 580 | "version": "6.26.0", 581 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", 582 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", 583 | "dev": true, 584 | "requires": { 585 | "babel-runtime": "^6.26.0", 586 | "babel-types": "^6.26.0", 587 | "lodash": "^4.17.4" 588 | } 589 | }, 590 | "babel-helper-remap-async-to-generator": { 591 | "version": "6.24.1", 592 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", 593 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", 594 | "dev": true, 595 | "requires": { 596 | "babel-helper-function-name": "^6.24.1", 597 | "babel-runtime": "^6.22.0", 598 | "babel-template": "^6.24.1", 599 | "babel-traverse": "^6.24.1", 600 | "babel-types": "^6.24.1" 601 | } 602 | }, 603 | "babel-helper-replace-supers": { 604 | "version": "6.24.1", 605 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", 606 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", 607 | "dev": true, 608 | "requires": { 609 | "babel-helper-optimise-call-expression": "^6.24.1", 610 | "babel-messages": "^6.23.0", 611 | "babel-runtime": "^6.22.0", 612 | "babel-template": "^6.24.1", 613 | "babel-traverse": "^6.24.1", 614 | "babel-types": "^6.24.1" 615 | } 616 | }, 617 | "babel-helpers": { 618 | "version": "6.24.1", 619 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 620 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 621 | "dev": true, 622 | "requires": { 623 | "babel-runtime": "^6.22.0", 624 | "babel-template": "^6.24.1" 625 | } 626 | }, 627 | "babel-messages": { 628 | "version": "6.23.0", 629 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 630 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 631 | "dev": true, 632 | "requires": { 633 | "babel-runtime": "^6.22.0" 634 | } 635 | }, 636 | "babel-plugin-check-es2015-constants": { 637 | "version": "6.22.0", 638 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", 639 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", 640 | "dev": true, 641 | "requires": { 642 | "babel-runtime": "^6.22.0" 643 | } 644 | }, 645 | "babel-plugin-syntax-async-functions": { 646 | "version": "6.13.0", 647 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", 648 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", 649 | "dev": true 650 | }, 651 | "babel-plugin-syntax-class-properties": { 652 | "version": "6.13.0", 653 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", 654 | "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=", 655 | "dev": true 656 | }, 657 | "babel-plugin-syntax-exponentiation-operator": { 658 | "version": "6.13.0", 659 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", 660 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", 661 | "dev": true 662 | }, 663 | "babel-plugin-syntax-trailing-function-commas": { 664 | "version": "6.22.0", 665 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", 666 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", 667 | "dev": true 668 | }, 669 | "babel-plugin-transform-async-to-generator": { 670 | "version": "6.24.1", 671 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", 672 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", 673 | "dev": true, 674 | "requires": { 675 | "babel-helper-remap-async-to-generator": "^6.24.1", 676 | "babel-plugin-syntax-async-functions": "^6.8.0", 677 | "babel-runtime": "^6.22.0" 678 | } 679 | }, 680 | "babel-plugin-transform-class-properties": { 681 | "version": "6.24.1", 682 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", 683 | "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", 684 | "dev": true, 685 | "requires": { 686 | "babel-helper-function-name": "^6.24.1", 687 | "babel-plugin-syntax-class-properties": "^6.8.0", 688 | "babel-runtime": "^6.22.0", 689 | "babel-template": "^6.24.1" 690 | } 691 | }, 692 | "babel-plugin-transform-es2015-arrow-functions": { 693 | "version": "6.22.0", 694 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", 695 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", 696 | "dev": true, 697 | "requires": { 698 | "babel-runtime": "^6.22.0" 699 | } 700 | }, 701 | "babel-plugin-transform-es2015-block-scoped-functions": { 702 | "version": "6.22.0", 703 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", 704 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", 705 | "dev": true, 706 | "requires": { 707 | "babel-runtime": "^6.22.0" 708 | } 709 | }, 710 | "babel-plugin-transform-es2015-block-scoping": { 711 | "version": "6.26.0", 712 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", 713 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", 714 | "dev": true, 715 | "requires": { 716 | "babel-runtime": "^6.26.0", 717 | "babel-template": "^6.26.0", 718 | "babel-traverse": "^6.26.0", 719 | "babel-types": "^6.26.0", 720 | "lodash": "^4.17.4" 721 | } 722 | }, 723 | "babel-plugin-transform-es2015-classes": { 724 | "version": "6.24.1", 725 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", 726 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", 727 | "dev": true, 728 | "requires": { 729 | "babel-helper-define-map": "^6.24.1", 730 | "babel-helper-function-name": "^6.24.1", 731 | "babel-helper-optimise-call-expression": "^6.24.1", 732 | "babel-helper-replace-supers": "^6.24.1", 733 | "babel-messages": "^6.23.0", 734 | "babel-runtime": "^6.22.0", 735 | "babel-template": "^6.24.1", 736 | "babel-traverse": "^6.24.1", 737 | "babel-types": "^6.24.1" 738 | } 739 | }, 740 | "babel-plugin-transform-es2015-computed-properties": { 741 | "version": "6.24.1", 742 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", 743 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", 744 | "dev": true, 745 | "requires": { 746 | "babel-runtime": "^6.22.0", 747 | "babel-template": "^6.24.1" 748 | } 749 | }, 750 | "babel-plugin-transform-es2015-destructuring": { 751 | "version": "6.23.0", 752 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", 753 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", 754 | "dev": true, 755 | "requires": { 756 | "babel-runtime": "^6.22.0" 757 | } 758 | }, 759 | "babel-plugin-transform-es2015-duplicate-keys": { 760 | "version": "6.24.1", 761 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", 762 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", 763 | "dev": true, 764 | "requires": { 765 | "babel-runtime": "^6.22.0", 766 | "babel-types": "^6.24.1" 767 | } 768 | }, 769 | "babel-plugin-transform-es2015-for-of": { 770 | "version": "6.23.0", 771 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", 772 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", 773 | "dev": true, 774 | "requires": { 775 | "babel-runtime": "^6.22.0" 776 | } 777 | }, 778 | "babel-plugin-transform-es2015-function-name": { 779 | "version": "6.24.1", 780 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", 781 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", 782 | "dev": true, 783 | "requires": { 784 | "babel-helper-function-name": "^6.24.1", 785 | "babel-runtime": "^6.22.0", 786 | "babel-types": "^6.24.1" 787 | } 788 | }, 789 | "babel-plugin-transform-es2015-literals": { 790 | "version": "6.22.0", 791 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", 792 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", 793 | "dev": true, 794 | "requires": { 795 | "babel-runtime": "^6.22.0" 796 | } 797 | }, 798 | "babel-plugin-transform-es2015-modules-amd": { 799 | "version": "6.24.1", 800 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", 801 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", 802 | "dev": true, 803 | "requires": { 804 | "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", 805 | "babel-runtime": "^6.22.0", 806 | "babel-template": "^6.24.1" 807 | } 808 | }, 809 | "babel-plugin-transform-es2015-modules-commonjs": { 810 | "version": "6.26.2", 811 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", 812 | "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", 813 | "dev": true, 814 | "requires": { 815 | "babel-plugin-transform-strict-mode": "^6.24.1", 816 | "babel-runtime": "^6.26.0", 817 | "babel-template": "^6.26.0", 818 | "babel-types": "^6.26.0" 819 | } 820 | }, 821 | "babel-plugin-transform-es2015-modules-systemjs": { 822 | "version": "6.24.1", 823 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", 824 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", 825 | "dev": true, 826 | "requires": { 827 | "babel-helper-hoist-variables": "^6.24.1", 828 | "babel-runtime": "^6.22.0", 829 | "babel-template": "^6.24.1" 830 | } 831 | }, 832 | "babel-plugin-transform-es2015-modules-umd": { 833 | "version": "6.24.1", 834 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", 835 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", 836 | "dev": true, 837 | "requires": { 838 | "babel-plugin-transform-es2015-modules-amd": "^6.24.1", 839 | "babel-runtime": "^6.22.0", 840 | "babel-template": "^6.24.1" 841 | } 842 | }, 843 | "babel-plugin-transform-es2015-object-super": { 844 | "version": "6.24.1", 845 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", 846 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", 847 | "dev": true, 848 | "requires": { 849 | "babel-helper-replace-supers": "^6.24.1", 850 | "babel-runtime": "^6.22.0" 851 | } 852 | }, 853 | "babel-plugin-transform-es2015-parameters": { 854 | "version": "6.24.1", 855 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", 856 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", 857 | "dev": true, 858 | "requires": { 859 | "babel-helper-call-delegate": "^6.24.1", 860 | "babel-helper-get-function-arity": "^6.24.1", 861 | "babel-runtime": "^6.22.0", 862 | "babel-template": "^6.24.1", 863 | "babel-traverse": "^6.24.1", 864 | "babel-types": "^6.24.1" 865 | } 866 | }, 867 | "babel-plugin-transform-es2015-shorthand-properties": { 868 | "version": "6.24.1", 869 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", 870 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", 871 | "dev": true, 872 | "requires": { 873 | "babel-runtime": "^6.22.0", 874 | "babel-types": "^6.24.1" 875 | } 876 | }, 877 | "babel-plugin-transform-es2015-spread": { 878 | "version": "6.22.0", 879 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", 880 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", 881 | "dev": true, 882 | "requires": { 883 | "babel-runtime": "^6.22.0" 884 | } 885 | }, 886 | "babel-plugin-transform-es2015-sticky-regex": { 887 | "version": "6.24.1", 888 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", 889 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", 890 | "dev": true, 891 | "requires": { 892 | "babel-helper-regex": "^6.24.1", 893 | "babel-runtime": "^6.22.0", 894 | "babel-types": "^6.24.1" 895 | } 896 | }, 897 | "babel-plugin-transform-es2015-template-literals": { 898 | "version": "6.22.0", 899 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", 900 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", 901 | "dev": true, 902 | "requires": { 903 | "babel-runtime": "^6.22.0" 904 | } 905 | }, 906 | "babel-plugin-transform-es2015-typeof-symbol": { 907 | "version": "6.23.0", 908 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", 909 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", 910 | "dev": true, 911 | "requires": { 912 | "babel-runtime": "^6.22.0" 913 | } 914 | }, 915 | "babel-plugin-transform-es2015-unicode-regex": { 916 | "version": "6.24.1", 917 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", 918 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", 919 | "dev": true, 920 | "requires": { 921 | "babel-helper-regex": "^6.24.1", 922 | "babel-runtime": "^6.22.0", 923 | "regexpu-core": "^2.0.0" 924 | } 925 | }, 926 | "babel-plugin-transform-exponentiation-operator": { 927 | "version": "6.24.1", 928 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", 929 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", 930 | "dev": true, 931 | "requires": { 932 | "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", 933 | "babel-plugin-syntax-exponentiation-operator": "^6.8.0", 934 | "babel-runtime": "^6.22.0" 935 | } 936 | }, 937 | "babel-plugin-transform-regenerator": { 938 | "version": "6.26.0", 939 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", 940 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", 941 | "dev": true, 942 | "requires": { 943 | "regenerator-transform": "^0.10.0" 944 | } 945 | }, 946 | "babel-plugin-transform-strict-mode": { 947 | "version": "6.24.1", 948 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 949 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 950 | "dev": true, 951 | "requires": { 952 | "babel-runtime": "^6.22.0", 953 | "babel-types": "^6.24.1" 954 | } 955 | }, 956 | "babel-polyfill": { 957 | "version": "6.26.0", 958 | "resolved": "https://registry.npmjs.org/babel-polyfill/-/babel-polyfill-6.26.0.tgz", 959 | "integrity": "sha1-N5k3q8Z9eJWXCtxiHyhM2WbPIVM=", 960 | "dev": true, 961 | "requires": { 962 | "babel-runtime": "^6.26.0", 963 | "core-js": "^2.5.0", 964 | "regenerator-runtime": "^0.10.5" 965 | }, 966 | "dependencies": { 967 | "regenerator-runtime": { 968 | "version": "0.10.5", 969 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz", 970 | "integrity": "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=", 971 | "dev": true 972 | } 973 | } 974 | }, 975 | "babel-preset-env": { 976 | "version": "1.7.0", 977 | "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", 978 | "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", 979 | "dev": true, 980 | "requires": { 981 | "babel-plugin-check-es2015-constants": "^6.22.0", 982 | "babel-plugin-syntax-trailing-function-commas": "^6.22.0", 983 | "babel-plugin-transform-async-to-generator": "^6.22.0", 984 | "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", 985 | "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", 986 | "babel-plugin-transform-es2015-block-scoping": "^6.23.0", 987 | "babel-plugin-transform-es2015-classes": "^6.23.0", 988 | "babel-plugin-transform-es2015-computed-properties": "^6.22.0", 989 | "babel-plugin-transform-es2015-destructuring": "^6.23.0", 990 | "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", 991 | "babel-plugin-transform-es2015-for-of": "^6.23.0", 992 | "babel-plugin-transform-es2015-function-name": "^6.22.0", 993 | "babel-plugin-transform-es2015-literals": "^6.22.0", 994 | "babel-plugin-transform-es2015-modules-amd": "^6.22.0", 995 | "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", 996 | "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", 997 | "babel-plugin-transform-es2015-modules-umd": "^6.23.0", 998 | "babel-plugin-transform-es2015-object-super": "^6.22.0", 999 | "babel-plugin-transform-es2015-parameters": "^6.23.0", 1000 | "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", 1001 | "babel-plugin-transform-es2015-spread": "^6.22.0", 1002 | "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", 1003 | "babel-plugin-transform-es2015-template-literals": "^6.22.0", 1004 | "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", 1005 | "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", 1006 | "babel-plugin-transform-exponentiation-operator": "^6.22.0", 1007 | "babel-plugin-transform-regenerator": "^6.22.0", 1008 | "browserslist": "^3.2.6", 1009 | "invariant": "^2.2.2", 1010 | "semver": "^5.3.0" 1011 | } 1012 | }, 1013 | "babel-register": { 1014 | "version": "6.26.0", 1015 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 1016 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 1017 | "dev": true, 1018 | "requires": { 1019 | "babel-core": "^6.26.0", 1020 | "babel-runtime": "^6.26.0", 1021 | "core-js": "^2.5.0", 1022 | "home-or-tmp": "^2.0.0", 1023 | "lodash": "^4.17.4", 1024 | "mkdirp": "^0.5.1", 1025 | "source-map-support": "^0.4.15" 1026 | }, 1027 | "dependencies": { 1028 | "mkdirp": { 1029 | "version": "0.5.1", 1030 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 1031 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 1032 | "dev": true, 1033 | "requires": { 1034 | "minimist": "0.0.8" 1035 | } 1036 | } 1037 | } 1038 | }, 1039 | "babel-runtime": { 1040 | "version": "6.26.0", 1041 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 1042 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 1043 | "dev": true, 1044 | "requires": { 1045 | "core-js": "^2.4.0", 1046 | "regenerator-runtime": "^0.11.0" 1047 | } 1048 | }, 1049 | "babel-template": { 1050 | "version": "6.26.0", 1051 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 1052 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 1053 | "dev": true, 1054 | "requires": { 1055 | "babel-runtime": "^6.26.0", 1056 | "babel-traverse": "^6.26.0", 1057 | "babel-types": "^6.26.0", 1058 | "babylon": "^6.18.0", 1059 | "lodash": "^4.17.4" 1060 | } 1061 | }, 1062 | "babel-traverse": { 1063 | "version": "6.26.0", 1064 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 1065 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 1066 | "dev": true, 1067 | "requires": { 1068 | "babel-code-frame": "^6.26.0", 1069 | "babel-messages": "^6.23.0", 1070 | "babel-runtime": "^6.26.0", 1071 | "babel-types": "^6.26.0", 1072 | "babylon": "^6.18.0", 1073 | "debug": "^2.6.8", 1074 | "globals": "^9.18.0", 1075 | "invariant": "^2.2.2", 1076 | "lodash": "^4.17.4" 1077 | } 1078 | }, 1079 | "babel-types": { 1080 | "version": "6.26.0", 1081 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 1082 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 1083 | "dev": true, 1084 | "requires": { 1085 | "babel-runtime": "^6.26.0", 1086 | "esutils": "^2.0.2", 1087 | "lodash": "^4.17.4", 1088 | "to-fast-properties": "^1.0.3" 1089 | } 1090 | }, 1091 | "babylon": { 1092 | "version": "6.18.0", 1093 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 1094 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", 1095 | "dev": true 1096 | }, 1097 | "balanced-match": { 1098 | "version": "1.0.0", 1099 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 1100 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 1101 | }, 1102 | "binary-extensions": { 1103 | "version": "1.10.0", 1104 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.10.0.tgz", 1105 | "integrity": "sha1-muuabF6IY4qtFx4Wf1kAq+JINdA=", 1106 | "dev": true, 1107 | "optional": true 1108 | }, 1109 | "brace-expansion": { 1110 | "version": "1.1.8", 1111 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz", 1112 | "integrity": "sha1-wHshHHyVLsH479Uad+8NHTmQopI=", 1113 | "requires": { 1114 | "balanced-match": "^1.0.0", 1115 | "concat-map": "0.0.1" 1116 | } 1117 | }, 1118 | "braces": { 1119 | "version": "1.8.5", 1120 | "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", 1121 | "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", 1122 | "dev": true, 1123 | "optional": true, 1124 | "requires": { 1125 | "expand-range": "^1.8.1", 1126 | "preserve": "^0.2.0", 1127 | "repeat-element": "^1.1.2" 1128 | } 1129 | }, 1130 | "browserslist": { 1131 | "version": "3.2.8", 1132 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", 1133 | "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", 1134 | "dev": true, 1135 | "requires": { 1136 | "caniuse-lite": "^1.0.30000844", 1137 | "electron-to-chromium": "^1.3.47" 1138 | } 1139 | }, 1140 | "builtin-modules": { 1141 | "version": "1.1.1", 1142 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 1143 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", 1144 | "dev": true 1145 | }, 1146 | "caller-path": { 1147 | "version": "0.1.0", 1148 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", 1149 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", 1150 | "dev": true, 1151 | "requires": { 1152 | "callsites": "^0.2.0" 1153 | } 1154 | }, 1155 | "callsites": { 1156 | "version": "0.2.0", 1157 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", 1158 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", 1159 | "dev": true 1160 | }, 1161 | "caniuse-lite": { 1162 | "version": "1.0.30000865", 1163 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000865.tgz", 1164 | "integrity": "sha512-vs79o1mOSKRGv/1pSkp4EXgl4ZviWeYReXw60XfacPU64uQWZwJT6vZNmxRF9O+6zu71sJwMxLK5JXxbzuVrLw==", 1165 | "dev": true 1166 | }, 1167 | "chalk": { 1168 | "version": "1.1.3", 1169 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 1170 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 1171 | "dev": true, 1172 | "requires": { 1173 | "ansi-styles": "^2.2.1", 1174 | "escape-string-regexp": "^1.0.2", 1175 | "has-ansi": "^2.0.0", 1176 | "strip-ansi": "^3.0.0", 1177 | "supports-color": "^2.0.0" 1178 | } 1179 | }, 1180 | "chokidar": { 1181 | "version": "1.7.0", 1182 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", 1183 | "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", 1184 | "dev": true, 1185 | "optional": true, 1186 | "requires": { 1187 | "anymatch": "^1.3.0", 1188 | "async-each": "^1.0.0", 1189 | "fsevents": "^1.0.0", 1190 | "glob-parent": "^2.0.0", 1191 | "inherits": "^2.0.1", 1192 | "is-binary-path": "^1.0.0", 1193 | "is-glob": "^2.0.0", 1194 | "path-is-absolute": "^1.0.0", 1195 | "readdirp": "^2.0.0" 1196 | } 1197 | }, 1198 | "circular-json": { 1199 | "version": "0.3.3", 1200 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", 1201 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", 1202 | "dev": true 1203 | }, 1204 | "cli-cursor": { 1205 | "version": "2.1.0", 1206 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", 1207 | "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", 1208 | "dev": true, 1209 | "requires": { 1210 | "restore-cursor": "^2.0.0" 1211 | } 1212 | }, 1213 | "cli-width": { 1214 | "version": "2.2.0", 1215 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", 1216 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", 1217 | "dev": true 1218 | }, 1219 | "co": { 1220 | "version": "4.6.0", 1221 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", 1222 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", 1223 | "dev": true 1224 | }, 1225 | "color-convert": { 1226 | "version": "1.9.0", 1227 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz", 1228 | "integrity": "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=", 1229 | "dev": true, 1230 | "requires": { 1231 | "color-name": "^1.1.1" 1232 | } 1233 | }, 1234 | "color-name": { 1235 | "version": "1.1.3", 1236 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1237 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 1238 | "dev": true 1239 | }, 1240 | "colors": { 1241 | "version": "1.1.2", 1242 | "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", 1243 | "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=" 1244 | }, 1245 | "commander": { 1246 | "version": "2.11.0", 1247 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.11.0.tgz", 1248 | "integrity": "sha512-b0553uYA5YAEGgyYIGYROzKQ7X5RAqedkfjiZxwi0kL1g3bOaBNNZfYkzt/CL0umgD5wc9Jec2FbB98CjkMRvQ==", 1249 | "dev": true 1250 | }, 1251 | "concat-map": { 1252 | "version": "0.0.1", 1253 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1254 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 1255 | }, 1256 | "concat-stream": { 1257 | "version": "1.6.0", 1258 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz", 1259 | "integrity": "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=", 1260 | "requires": { 1261 | "inherits": "^2.0.3", 1262 | "readable-stream": "^2.2.2", 1263 | "typedarray": "^0.0.6" 1264 | } 1265 | }, 1266 | "contains-path": { 1267 | "version": "0.1.0", 1268 | "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", 1269 | "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", 1270 | "dev": true 1271 | }, 1272 | "convert-source-map": { 1273 | "version": "1.5.0", 1274 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz", 1275 | "integrity": "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=", 1276 | "dev": true 1277 | }, 1278 | "core-js": { 1279 | "version": "2.5.0", 1280 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.0.tgz", 1281 | "integrity": "sha1-VpwFCRi+ZIazg3VSAorgRmtxcIY=", 1282 | "dev": true 1283 | }, 1284 | "core-util-is": { 1285 | "version": "1.0.2", 1286 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1287 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 1288 | }, 1289 | "cross-spawn": { 1290 | "version": "5.1.0", 1291 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", 1292 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", 1293 | "dev": true, 1294 | "requires": { 1295 | "lru-cache": "^4.0.1", 1296 | "shebang-command": "^1.2.0", 1297 | "which": "^1.2.9" 1298 | } 1299 | }, 1300 | "damerau-levenshtein": { 1301 | "version": "1.0.4", 1302 | "resolved": "https://registry.npmjs.org/damerau-levenshtein/-/damerau-levenshtein-1.0.4.tgz", 1303 | "integrity": "sha1-AxkcQyy27qFou3fzpV/9zLiXhRQ=", 1304 | "dev": true 1305 | }, 1306 | "debug": { 1307 | "version": "2.6.9", 1308 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1309 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1310 | "requires": { 1311 | "ms": "2.0.0" 1312 | } 1313 | }, 1314 | "deep-is": { 1315 | "version": "0.1.3", 1316 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1317 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 1318 | "dev": true 1319 | }, 1320 | "define-properties": { 1321 | "version": "1.1.2", 1322 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", 1323 | "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", 1324 | "dev": true, 1325 | "requires": { 1326 | "foreach": "^2.0.5", 1327 | "object-keys": "^1.0.8" 1328 | } 1329 | }, 1330 | "del": { 1331 | "version": "2.2.2", 1332 | "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz", 1333 | "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", 1334 | "dev": true, 1335 | "requires": { 1336 | "globby": "^5.0.0", 1337 | "is-path-cwd": "^1.0.0", 1338 | "is-path-in-cwd": "^1.0.0", 1339 | "object-assign": "^4.0.1", 1340 | "pify": "^2.0.0", 1341 | "pinkie-promise": "^2.0.0", 1342 | "rimraf": "^2.2.8" 1343 | } 1344 | }, 1345 | "detect-indent": { 1346 | "version": "4.0.0", 1347 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 1348 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 1349 | "dev": true, 1350 | "requires": { 1351 | "repeating": "^2.0.0" 1352 | } 1353 | }, 1354 | "doctrine": { 1355 | "version": "2.0.0", 1356 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz", 1357 | "integrity": "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=", 1358 | "dev": true, 1359 | "requires": { 1360 | "esutils": "^2.0.2", 1361 | "isarray": "^1.0.0" 1362 | } 1363 | }, 1364 | "electron-to-chromium": { 1365 | "version": "1.3.52", 1366 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz", 1367 | "integrity": "sha1-0tnxJwuko7lnuDHEDvcftNmrXOA=", 1368 | "dev": true 1369 | }, 1370 | "emoji-regex": { 1371 | "version": "6.5.1", 1372 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-6.5.1.tgz", 1373 | "integrity": "sha512-PAHp6TxrCy7MGMFidro8uikr+zlJJKJ/Q6mm2ExZ7HwkyR9lSVFfE3kt36qcwa24BQL7y0G9axycGjK1A/0uNQ==", 1374 | "dev": true 1375 | }, 1376 | "encoding": { 1377 | "version": "0.1.12", 1378 | "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", 1379 | "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", 1380 | "dev": true, 1381 | "requires": { 1382 | "iconv-lite": "~0.4.13" 1383 | } 1384 | }, 1385 | "error-ex": { 1386 | "version": "1.3.2", 1387 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1388 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1389 | "dev": true, 1390 | "requires": { 1391 | "is-arrayish": "^0.2.1" 1392 | } 1393 | }, 1394 | "es-abstract": { 1395 | "version": "1.8.0", 1396 | "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.8.0.tgz", 1397 | "integrity": "sha512-Cf9/h5MrXtExM20gSS55YFrGKCyPrRBjIVBtVyy8vmlsDfe0NPKMWj65tPLgzyfPuapWxh5whpXCtW4+AW5mRg==", 1398 | "dev": true, 1399 | "requires": { 1400 | "es-to-primitive": "^1.1.1", 1401 | "function-bind": "^1.1.0", 1402 | "has": "^1.0.1", 1403 | "is-callable": "^1.1.3", 1404 | "is-regex": "^1.0.4" 1405 | } 1406 | }, 1407 | "es-to-primitive": { 1408 | "version": "1.1.1", 1409 | "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", 1410 | "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", 1411 | "dev": true, 1412 | "requires": { 1413 | "is-callable": "^1.1.1", 1414 | "is-date-object": "^1.0.1", 1415 | "is-symbol": "^1.0.1" 1416 | } 1417 | }, 1418 | "es6-promise": { 1419 | "version": "4.2.4", 1420 | "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.4.tgz", 1421 | "integrity": "sha512-/NdNZVJg+uZgtm9eS3O6lrOLYmQag2DjdEXuPaHlZ6RuVqgqaVZfgYCepEIKsLqwdQArOPtC3XzRLqGGfT8KQQ==" 1422 | }, 1423 | "es6-promisify": { 1424 | "version": "5.0.0", 1425 | "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", 1426 | "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", 1427 | "requires": { 1428 | "es6-promise": "^4.0.3" 1429 | } 1430 | }, 1431 | "escape-string-regexp": { 1432 | "version": "1.0.5", 1433 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1434 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1435 | "dev": true 1436 | }, 1437 | "eslint": { 1438 | "version": "4.8.0", 1439 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.8.0.tgz", 1440 | "integrity": "sha1-Ip7w41Tg5h2DfHqA/fuoJeGZgV4=", 1441 | "dev": true, 1442 | "requires": { 1443 | "ajv": "^5.2.0", 1444 | "babel-code-frame": "^6.22.0", 1445 | "chalk": "^2.1.0", 1446 | "concat-stream": "^1.6.0", 1447 | "cross-spawn": "^5.1.0", 1448 | "debug": "^3.0.1", 1449 | "doctrine": "^2.0.0", 1450 | "eslint-scope": "^3.7.1", 1451 | "espree": "^3.5.1", 1452 | "esquery": "^1.0.0", 1453 | "estraverse": "^4.2.0", 1454 | "esutils": "^2.0.2", 1455 | "file-entry-cache": "^2.0.0", 1456 | "functional-red-black-tree": "^1.0.1", 1457 | "glob": "^7.1.2", 1458 | "globals": "^9.17.0", 1459 | "ignore": "^3.3.3", 1460 | "imurmurhash": "^0.1.4", 1461 | "inquirer": "^3.0.6", 1462 | "is-resolvable": "^1.0.0", 1463 | "js-yaml": "^3.9.1", 1464 | "json-stable-stringify": "^1.0.1", 1465 | "levn": "^0.3.0", 1466 | "lodash": "^4.17.4", 1467 | "minimatch": "^3.0.2", 1468 | "mkdirp": "^0.5.1", 1469 | "natural-compare": "^1.4.0", 1470 | "optionator": "^0.8.2", 1471 | "path-is-inside": "^1.0.2", 1472 | "pluralize": "^7.0.0", 1473 | "progress": "^2.0.0", 1474 | "require-uncached": "^1.0.3", 1475 | "semver": "^5.3.0", 1476 | "strip-ansi": "^4.0.0", 1477 | "strip-json-comments": "~2.0.1", 1478 | "table": "^4.0.1", 1479 | "text-table": "~0.2.0" 1480 | }, 1481 | "dependencies": { 1482 | "ansi-regex": { 1483 | "version": "3.0.0", 1484 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 1485 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 1486 | "dev": true 1487 | }, 1488 | "ansi-styles": { 1489 | "version": "3.2.0", 1490 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", 1491 | "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", 1492 | "dev": true, 1493 | "requires": { 1494 | "color-convert": "^1.9.0" 1495 | } 1496 | }, 1497 | "chalk": { 1498 | "version": "2.1.0", 1499 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", 1500 | "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", 1501 | "dev": true, 1502 | "requires": { 1503 | "ansi-styles": "^3.1.0", 1504 | "escape-string-regexp": "^1.0.5", 1505 | "supports-color": "^4.0.0" 1506 | } 1507 | }, 1508 | "debug": { 1509 | "version": "3.1.0", 1510 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 1511 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 1512 | "dev": true, 1513 | "requires": { 1514 | "ms": "2.0.0" 1515 | } 1516 | }, 1517 | "strip-ansi": { 1518 | "version": "4.0.0", 1519 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 1520 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 1521 | "dev": true, 1522 | "requires": { 1523 | "ansi-regex": "^3.0.0" 1524 | } 1525 | }, 1526 | "supports-color": { 1527 | "version": "4.4.0", 1528 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 1529 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 1530 | "dev": true, 1531 | "requires": { 1532 | "has-flag": "^2.0.0" 1533 | } 1534 | } 1535 | } 1536 | }, 1537 | "eslint-config-airbnb": { 1538 | "version": "16.0.0", 1539 | "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-16.0.0.tgz", 1540 | "integrity": "sha512-QWl/uGjvG71Bap0RTKZ1DPnZzhY5UFGQh4PUYS7q5dksfhgwyQ9WLL6f7OV4o1P8HdR0VuLs0FQI5dHkLIUOjQ==", 1541 | "dev": true, 1542 | "requires": { 1543 | "eslint-config-airbnb-base": "^12.0.2" 1544 | } 1545 | }, 1546 | "eslint-config-airbnb-base": { 1547 | "version": "12.0.2", 1548 | "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-12.0.2.tgz", 1549 | "integrity": "sha512-rQqOvAzrMC3BBCH6Dd/1RenDi+RW4vdgnh8xcPf6sgd324ad6aX7hSZ52L1SfDGe2VsZR2yB5uPvDfXYvxHZmA==", 1550 | "dev": true, 1551 | "requires": { 1552 | "eslint-restricted-globals": "^0.1.1" 1553 | } 1554 | }, 1555 | "eslint-import-resolver-node": { 1556 | "version": "0.3.2", 1557 | "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", 1558 | "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", 1559 | "dev": true, 1560 | "requires": { 1561 | "debug": "^2.6.9", 1562 | "resolve": "^1.5.0" 1563 | }, 1564 | "dependencies": { 1565 | "resolve": { 1566 | "version": "1.8.1", 1567 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", 1568 | "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", 1569 | "dev": true, 1570 | "requires": { 1571 | "path-parse": "^1.0.5" 1572 | } 1573 | } 1574 | } 1575 | }, 1576 | "eslint-module-utils": { 1577 | "version": "2.2.0", 1578 | "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.2.0.tgz", 1579 | "integrity": "sha1-snA2LNiLGkitMIl2zn+lTphBF0Y=", 1580 | "dev": true, 1581 | "requires": { 1582 | "debug": "^2.6.8", 1583 | "pkg-dir": "^1.0.0" 1584 | } 1585 | }, 1586 | "eslint-plugin-import": { 1587 | "version": "2.13.0", 1588 | "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.13.0.tgz", 1589 | "integrity": "sha512-t6hGKQDMIt9N8R7vLepsYXgDfeuhp6ZJSgtrLEDxonpSubyxUZHjhm6LsAaZX8q6GYVxkbT3kTsV9G5mBCFR6A==", 1590 | "dev": true, 1591 | "requires": { 1592 | "contains-path": "^0.1.0", 1593 | "debug": "^2.6.8", 1594 | "doctrine": "1.5.0", 1595 | "eslint-import-resolver-node": "^0.3.1", 1596 | "eslint-module-utils": "^2.2.0", 1597 | "has": "^1.0.1", 1598 | "lodash": "^4.17.4", 1599 | "minimatch": "^3.0.3", 1600 | "read-pkg-up": "^2.0.0", 1601 | "resolve": "^1.6.0" 1602 | }, 1603 | "dependencies": { 1604 | "doctrine": { 1605 | "version": "1.5.0", 1606 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", 1607 | "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", 1608 | "dev": true, 1609 | "requires": { 1610 | "esutils": "^2.0.2", 1611 | "isarray": "^1.0.0" 1612 | } 1613 | }, 1614 | "resolve": { 1615 | "version": "1.8.1", 1616 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz", 1617 | "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", 1618 | "dev": true, 1619 | "requires": { 1620 | "path-parse": "^1.0.5" 1621 | } 1622 | } 1623 | } 1624 | }, 1625 | "eslint-plugin-jsx-a11y": { 1626 | "version": "6.0.2", 1627 | "resolved": "https://registry.npmjs.org/eslint-plugin-jsx-a11y/-/eslint-plugin-jsx-a11y-6.0.2.tgz", 1628 | "integrity": "sha1-ZZJ3p1iwNsMFp+ShMFfDAc075z8=", 1629 | "dev": true, 1630 | "requires": { 1631 | "aria-query": "^0.7.0", 1632 | "array-includes": "^3.0.3", 1633 | "ast-types-flow": "0.0.7", 1634 | "axobject-query": "^0.1.0", 1635 | "damerau-levenshtein": "^1.0.0", 1636 | "emoji-regex": "^6.1.0", 1637 | "jsx-ast-utils": "^1.4.0" 1638 | } 1639 | }, 1640 | "eslint-plugin-react": { 1641 | "version": "7.4.0", 1642 | "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.4.0.tgz", 1643 | "integrity": "sha512-tvjU9u3VqmW2vVuYnE8Qptq+6ji4JltjOjJ9u7VAOxVYkUkyBZWRvNYKbDv5fN+L6wiA+4we9+qQahZ0m63XEA==", 1644 | "dev": true, 1645 | "requires": { 1646 | "doctrine": "^2.0.0", 1647 | "has": "^1.0.1", 1648 | "jsx-ast-utils": "^2.0.0", 1649 | "prop-types": "^15.5.10" 1650 | }, 1651 | "dependencies": { 1652 | "jsx-ast-utils": { 1653 | "version": "2.0.1", 1654 | "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-2.0.1.tgz", 1655 | "integrity": "sha1-6AGxs5mF4g//yHtA43SAgOLcrH8=", 1656 | "dev": true, 1657 | "requires": { 1658 | "array-includes": "^3.0.3" 1659 | } 1660 | } 1661 | } 1662 | }, 1663 | "eslint-restricted-globals": { 1664 | "version": "0.1.1", 1665 | "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz", 1666 | "integrity": "sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=", 1667 | "dev": true 1668 | }, 1669 | "eslint-scope": { 1670 | "version": "3.7.1", 1671 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz", 1672 | "integrity": "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=", 1673 | "dev": true, 1674 | "requires": { 1675 | "esrecurse": "^4.1.0", 1676 | "estraverse": "^4.1.1" 1677 | } 1678 | }, 1679 | "eslint-visitor-keys": { 1680 | "version": "1.0.0", 1681 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", 1682 | "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", 1683 | "dev": true 1684 | }, 1685 | "espree": { 1686 | "version": "3.5.1", 1687 | "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.1.tgz", 1688 | "integrity": "sha1-DJiLirRttTEAoZVK5LqZXd0n2H4=", 1689 | "dev": true, 1690 | "requires": { 1691 | "acorn": "^5.1.1", 1692 | "acorn-jsx": "^3.0.0" 1693 | } 1694 | }, 1695 | "esprima": { 1696 | "version": "4.0.0", 1697 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz", 1698 | "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==", 1699 | "dev": true 1700 | }, 1701 | "esquery": { 1702 | "version": "1.0.0", 1703 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz", 1704 | "integrity": "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=", 1705 | "dev": true, 1706 | "requires": { 1707 | "estraverse": "^4.0.0" 1708 | } 1709 | }, 1710 | "esrecurse": { 1711 | "version": "4.2.0", 1712 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz", 1713 | "integrity": "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=", 1714 | "dev": true, 1715 | "requires": { 1716 | "estraverse": "^4.1.0", 1717 | "object-assign": "^4.0.1" 1718 | } 1719 | }, 1720 | "estraverse": { 1721 | "version": "4.2.0", 1722 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 1723 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", 1724 | "dev": true 1725 | }, 1726 | "esutils": { 1727 | "version": "2.0.2", 1728 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1729 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", 1730 | "dev": true 1731 | }, 1732 | "expand-brackets": { 1733 | "version": "0.1.5", 1734 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", 1735 | "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", 1736 | "dev": true, 1737 | "optional": true, 1738 | "requires": { 1739 | "is-posix-bracket": "^0.1.0" 1740 | } 1741 | }, 1742 | "expand-range": { 1743 | "version": "1.8.2", 1744 | "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", 1745 | "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", 1746 | "dev": true, 1747 | "optional": true, 1748 | "requires": { 1749 | "fill-range": "^2.1.0" 1750 | } 1751 | }, 1752 | "external-editor": { 1753 | "version": "2.0.5", 1754 | "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.0.5.tgz", 1755 | "integrity": "sha512-Msjo64WT5W+NhOpQXh0nOHm+n0RfU1QUwDnKYvJ8dEJ8zlwLrqXNTv5mSUTJpepf41PDJGyhueTw2vNZW+Fr/w==", 1756 | "dev": true, 1757 | "requires": { 1758 | "iconv-lite": "^0.4.17", 1759 | "jschardet": "^1.4.2", 1760 | "tmp": "^0.0.33" 1761 | } 1762 | }, 1763 | "extglob": { 1764 | "version": "0.3.2", 1765 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", 1766 | "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", 1767 | "dev": true, 1768 | "optional": true, 1769 | "requires": { 1770 | "is-extglob": "^1.0.0" 1771 | } 1772 | }, 1773 | "extract-zip": { 1774 | "version": "1.6.6", 1775 | "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.6.6.tgz", 1776 | "integrity": "sha1-EpDt6NINCHK0Kf0/NRyhKOxe+Fw=", 1777 | "requires": { 1778 | "concat-stream": "1.6.0", 1779 | "debug": "2.6.9", 1780 | "mkdirp": "0.5.0", 1781 | "yauzl": "2.4.1" 1782 | }, 1783 | "dependencies": { 1784 | "debug": { 1785 | "version": "2.6.9", 1786 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1787 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1788 | "requires": { 1789 | "ms": "2.0.0" 1790 | } 1791 | }, 1792 | "mkdirp": { 1793 | "version": "0.5.0", 1794 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.0.tgz", 1795 | "integrity": "sha1-HXMHam35hs2TROFecfzAWkyavxI=", 1796 | "requires": { 1797 | "minimist": "0.0.8" 1798 | } 1799 | } 1800 | } 1801 | }, 1802 | "fast-deep-equal": { 1803 | "version": "1.0.0", 1804 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.0.0.tgz", 1805 | "integrity": "sha1-liVqO8l1WV6zbYLpkp0GDYk0Of8=", 1806 | "dev": true 1807 | }, 1808 | "fast-levenshtein": { 1809 | "version": "2.0.6", 1810 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1811 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1812 | "dev": true 1813 | }, 1814 | "fbjs": { 1815 | "version": "0.8.16", 1816 | "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.8.16.tgz", 1817 | "integrity": "sha1-XmdDL1UNxBtXK/VYR7ispk5TN9s=", 1818 | "dev": true, 1819 | "requires": { 1820 | "core-js": "^1.0.0", 1821 | "isomorphic-fetch": "^2.1.1", 1822 | "loose-envify": "^1.0.0", 1823 | "object-assign": "^4.1.0", 1824 | "promise": "^7.1.1", 1825 | "setimmediate": "^1.0.5", 1826 | "ua-parser-js": "^0.7.9" 1827 | }, 1828 | "dependencies": { 1829 | "core-js": { 1830 | "version": "1.2.7", 1831 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", 1832 | "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=", 1833 | "dev": true 1834 | } 1835 | } 1836 | }, 1837 | "fd-slicer": { 1838 | "version": "1.0.1", 1839 | "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", 1840 | "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", 1841 | "requires": { 1842 | "pend": "~1.2.0" 1843 | } 1844 | }, 1845 | "figures": { 1846 | "version": "2.0.0", 1847 | "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", 1848 | "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", 1849 | "dev": true, 1850 | "requires": { 1851 | "escape-string-regexp": "^1.0.5" 1852 | } 1853 | }, 1854 | "file-entry-cache": { 1855 | "version": "2.0.0", 1856 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", 1857 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", 1858 | "dev": true, 1859 | "requires": { 1860 | "flat-cache": "^1.2.1", 1861 | "object-assign": "^4.0.1" 1862 | } 1863 | }, 1864 | "filename-regex": { 1865 | "version": "2.0.1", 1866 | "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", 1867 | "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", 1868 | "dev": true, 1869 | "optional": true 1870 | }, 1871 | "fill-range": { 1872 | "version": "2.2.4", 1873 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", 1874 | "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", 1875 | "dev": true, 1876 | "optional": true, 1877 | "requires": { 1878 | "is-number": "^2.1.0", 1879 | "isobject": "^2.0.0", 1880 | "randomatic": "^3.0.0", 1881 | "repeat-element": "^1.1.2", 1882 | "repeat-string": "^1.5.2" 1883 | }, 1884 | "dependencies": { 1885 | "kind-of": { 1886 | "version": "6.0.2", 1887 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", 1888 | "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", 1889 | "dev": true, 1890 | "optional": true 1891 | }, 1892 | "randomatic": { 1893 | "version": "3.0.0", 1894 | "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", 1895 | "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", 1896 | "dev": true, 1897 | "optional": true, 1898 | "requires": { 1899 | "is-number": "^4.0.0", 1900 | "kind-of": "^6.0.0", 1901 | "math-random": "^1.0.1" 1902 | }, 1903 | "dependencies": { 1904 | "is-number": { 1905 | "version": "4.0.0", 1906 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", 1907 | "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", 1908 | "dev": true, 1909 | "optional": true 1910 | } 1911 | } 1912 | } 1913 | } 1914 | }, 1915 | "find-up": { 1916 | "version": "1.1.2", 1917 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 1918 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 1919 | "dev": true, 1920 | "requires": { 1921 | "path-exists": "^2.0.0", 1922 | "pinkie-promise": "^2.0.0" 1923 | } 1924 | }, 1925 | "flat-cache": { 1926 | "version": "1.3.0", 1927 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz", 1928 | "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=", 1929 | "dev": true, 1930 | "requires": { 1931 | "circular-json": "^0.3.1", 1932 | "del": "^2.0.2", 1933 | "graceful-fs": "^4.1.2", 1934 | "write": "^0.2.1" 1935 | } 1936 | }, 1937 | "for-in": { 1938 | "version": "1.0.2", 1939 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1940 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1941 | "dev": true, 1942 | "optional": true 1943 | }, 1944 | "for-own": { 1945 | "version": "0.1.5", 1946 | "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", 1947 | "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", 1948 | "dev": true, 1949 | "optional": true, 1950 | "requires": { 1951 | "for-in": "^1.0.1" 1952 | } 1953 | }, 1954 | "foreach": { 1955 | "version": "2.0.5", 1956 | "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", 1957 | "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", 1958 | "dev": true 1959 | }, 1960 | "fs-readdir-recursive": { 1961 | "version": "1.0.0", 1962 | "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.0.0.tgz", 1963 | "integrity": "sha1-jNF0XItPiinIyuw5JHaSG6GV9WA=", 1964 | "dev": true 1965 | }, 1966 | "fs.realpath": { 1967 | "version": "1.0.0", 1968 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1969 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 1970 | }, 1971 | "fsevents": { 1972 | "version": "1.1.2", 1973 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.2.tgz", 1974 | "integrity": "sha512-Sn44E5wQW4bTHXvQmvSHwqbuiXtduD6Rrjm2ZtUEGbyrig+nUH3t/QD4M4/ZXViY556TBpRgZkHLDx3JxPwxiw==", 1975 | "dev": true, 1976 | "optional": true, 1977 | "requires": { 1978 | "nan": "^2.3.0", 1979 | "node-pre-gyp": "^0.6.36" 1980 | }, 1981 | "dependencies": { 1982 | "abbrev": { 1983 | "version": "1.1.0", 1984 | "bundled": true, 1985 | "dev": true, 1986 | "optional": true 1987 | }, 1988 | "ajv": { 1989 | "version": "4.11.8", 1990 | "bundled": true, 1991 | "dev": true, 1992 | "optional": true, 1993 | "requires": { 1994 | "co": "^4.6.0", 1995 | "json-stable-stringify": "^1.0.1" 1996 | } 1997 | }, 1998 | "ansi-regex": { 1999 | "version": "2.1.1", 2000 | "bundled": true, 2001 | "dev": true 2002 | }, 2003 | "aproba": { 2004 | "version": "1.1.1", 2005 | "bundled": true, 2006 | "dev": true, 2007 | "optional": true 2008 | }, 2009 | "are-we-there-yet": { 2010 | "version": "1.1.4", 2011 | "bundled": true, 2012 | "dev": true, 2013 | "optional": true, 2014 | "requires": { 2015 | "delegates": "^1.0.0", 2016 | "readable-stream": "^2.0.6" 2017 | } 2018 | }, 2019 | "asn1": { 2020 | "version": "0.2.3", 2021 | "bundled": true, 2022 | "dev": true, 2023 | "optional": true 2024 | }, 2025 | "assert-plus": { 2026 | "version": "0.2.0", 2027 | "bundled": true, 2028 | "dev": true, 2029 | "optional": true 2030 | }, 2031 | "asynckit": { 2032 | "version": "0.4.0", 2033 | "bundled": true, 2034 | "dev": true, 2035 | "optional": true 2036 | }, 2037 | "aws-sign2": { 2038 | "version": "0.6.0", 2039 | "bundled": true, 2040 | "dev": true, 2041 | "optional": true 2042 | }, 2043 | "aws4": { 2044 | "version": "1.6.0", 2045 | "bundled": true, 2046 | "dev": true, 2047 | "optional": true 2048 | }, 2049 | "balanced-match": { 2050 | "version": "0.4.2", 2051 | "bundled": true, 2052 | "dev": true 2053 | }, 2054 | "bcrypt-pbkdf": { 2055 | "version": "1.0.1", 2056 | "bundled": true, 2057 | "dev": true, 2058 | "optional": true, 2059 | "requires": { 2060 | "tweetnacl": "^0.14.3" 2061 | } 2062 | }, 2063 | "block-stream": { 2064 | "version": "0.0.9", 2065 | "bundled": true, 2066 | "dev": true, 2067 | "requires": { 2068 | "inherits": "~2.0.0" 2069 | } 2070 | }, 2071 | "boom": { 2072 | "version": "2.10.1", 2073 | "bundled": true, 2074 | "dev": true, 2075 | "requires": { 2076 | "hoek": "2.x.x" 2077 | } 2078 | }, 2079 | "brace-expansion": { 2080 | "version": "1.1.7", 2081 | "bundled": true, 2082 | "dev": true, 2083 | "requires": { 2084 | "balanced-match": "^0.4.1", 2085 | "concat-map": "0.0.1" 2086 | } 2087 | }, 2088 | "buffer-shims": { 2089 | "version": "1.0.0", 2090 | "bundled": true, 2091 | "dev": true 2092 | }, 2093 | "caseless": { 2094 | "version": "0.12.0", 2095 | "bundled": true, 2096 | "dev": true, 2097 | "optional": true 2098 | }, 2099 | "co": { 2100 | "version": "4.6.0", 2101 | "bundled": true, 2102 | "dev": true, 2103 | "optional": true 2104 | }, 2105 | "code-point-at": { 2106 | "version": "1.1.0", 2107 | "bundled": true, 2108 | "dev": true 2109 | }, 2110 | "combined-stream": { 2111 | "version": "1.0.5", 2112 | "bundled": true, 2113 | "dev": true, 2114 | "requires": { 2115 | "delayed-stream": "~1.0.0" 2116 | } 2117 | }, 2118 | "concat-map": { 2119 | "version": "0.0.1", 2120 | "bundled": true, 2121 | "dev": true 2122 | }, 2123 | "console-control-strings": { 2124 | "version": "1.1.0", 2125 | "bundled": true, 2126 | "dev": true 2127 | }, 2128 | "core-util-is": { 2129 | "version": "1.0.2", 2130 | "bundled": true, 2131 | "dev": true 2132 | }, 2133 | "cryptiles": { 2134 | "version": "2.0.5", 2135 | "bundled": true, 2136 | "dev": true, 2137 | "optional": true, 2138 | "requires": { 2139 | "boom": "2.x.x" 2140 | } 2141 | }, 2142 | "dashdash": { 2143 | "version": "1.14.1", 2144 | "bundled": true, 2145 | "dev": true, 2146 | "optional": true, 2147 | "requires": { 2148 | "assert-plus": "^1.0.0" 2149 | }, 2150 | "dependencies": { 2151 | "assert-plus": { 2152 | "version": "1.0.0", 2153 | "bundled": true, 2154 | "dev": true, 2155 | "optional": true 2156 | } 2157 | } 2158 | }, 2159 | "debug": { 2160 | "version": "2.6.8", 2161 | "bundled": true, 2162 | "dev": true, 2163 | "optional": true, 2164 | "requires": { 2165 | "ms": "2.0.0" 2166 | } 2167 | }, 2168 | "deep-extend": { 2169 | "version": "0.4.2", 2170 | "bundled": true, 2171 | "dev": true, 2172 | "optional": true 2173 | }, 2174 | "delayed-stream": { 2175 | "version": "1.0.0", 2176 | "bundled": true, 2177 | "dev": true 2178 | }, 2179 | "delegates": { 2180 | "version": "1.0.0", 2181 | "bundled": true, 2182 | "dev": true, 2183 | "optional": true 2184 | }, 2185 | "ecc-jsbn": { 2186 | "version": "0.1.1", 2187 | "bundled": true, 2188 | "dev": true, 2189 | "optional": true, 2190 | "requires": { 2191 | "jsbn": "~0.1.0" 2192 | } 2193 | }, 2194 | "extend": { 2195 | "version": "3.0.1", 2196 | "bundled": true, 2197 | "dev": true, 2198 | "optional": true 2199 | }, 2200 | "extsprintf": { 2201 | "version": "1.0.2", 2202 | "bundled": true, 2203 | "dev": true 2204 | }, 2205 | "forever-agent": { 2206 | "version": "0.6.1", 2207 | "bundled": true, 2208 | "dev": true, 2209 | "optional": true 2210 | }, 2211 | "form-data": { 2212 | "version": "2.1.4", 2213 | "bundled": true, 2214 | "dev": true, 2215 | "optional": true, 2216 | "requires": { 2217 | "asynckit": "^0.4.0", 2218 | "combined-stream": "^1.0.5", 2219 | "mime-types": "^2.1.12" 2220 | } 2221 | }, 2222 | "fs.realpath": { 2223 | "version": "1.0.0", 2224 | "bundled": true, 2225 | "dev": true 2226 | }, 2227 | "fstream": { 2228 | "version": "1.0.11", 2229 | "bundled": true, 2230 | "dev": true, 2231 | "requires": { 2232 | "graceful-fs": "^4.1.2", 2233 | "inherits": "~2.0.0", 2234 | "mkdirp": ">=0.5 0", 2235 | "rimraf": "2" 2236 | } 2237 | }, 2238 | "fstream-ignore": { 2239 | "version": "1.0.5", 2240 | "bundled": true, 2241 | "dev": true, 2242 | "optional": true, 2243 | "requires": { 2244 | "fstream": "^1.0.0", 2245 | "inherits": "2", 2246 | "minimatch": "^3.0.0" 2247 | } 2248 | }, 2249 | "gauge": { 2250 | "version": "2.7.4", 2251 | "bundled": true, 2252 | "dev": true, 2253 | "optional": true, 2254 | "requires": { 2255 | "aproba": "^1.0.3", 2256 | "console-control-strings": "^1.0.0", 2257 | "has-unicode": "^2.0.0", 2258 | "object-assign": "^4.1.0", 2259 | "signal-exit": "^3.0.0", 2260 | "string-width": "^1.0.1", 2261 | "strip-ansi": "^3.0.1", 2262 | "wide-align": "^1.1.0" 2263 | } 2264 | }, 2265 | "getpass": { 2266 | "version": "0.1.7", 2267 | "bundled": true, 2268 | "dev": true, 2269 | "optional": true, 2270 | "requires": { 2271 | "assert-plus": "^1.0.0" 2272 | }, 2273 | "dependencies": { 2274 | "assert-plus": { 2275 | "version": "1.0.0", 2276 | "bundled": true, 2277 | "dev": true, 2278 | "optional": true 2279 | } 2280 | } 2281 | }, 2282 | "glob": { 2283 | "version": "7.1.2", 2284 | "bundled": true, 2285 | "dev": true, 2286 | "requires": { 2287 | "fs.realpath": "^1.0.0", 2288 | "inflight": "^1.0.4", 2289 | "inherits": "2", 2290 | "minimatch": "^3.0.4", 2291 | "once": "^1.3.0", 2292 | "path-is-absolute": "^1.0.0" 2293 | } 2294 | }, 2295 | "graceful-fs": { 2296 | "version": "4.1.11", 2297 | "bundled": true, 2298 | "dev": true 2299 | }, 2300 | "har-schema": { 2301 | "version": "1.0.5", 2302 | "bundled": true, 2303 | "dev": true, 2304 | "optional": true 2305 | }, 2306 | "har-validator": { 2307 | "version": "4.2.1", 2308 | "bundled": true, 2309 | "dev": true, 2310 | "optional": true, 2311 | "requires": { 2312 | "ajv": "^4.9.1", 2313 | "har-schema": "^1.0.5" 2314 | } 2315 | }, 2316 | "has-unicode": { 2317 | "version": "2.0.1", 2318 | "bundled": true, 2319 | "dev": true, 2320 | "optional": true 2321 | }, 2322 | "hawk": { 2323 | "version": "3.1.3", 2324 | "bundled": true, 2325 | "dev": true, 2326 | "optional": true, 2327 | "requires": { 2328 | "boom": "2.x.x", 2329 | "cryptiles": "2.x.x", 2330 | "hoek": "2.x.x", 2331 | "sntp": "1.x.x" 2332 | } 2333 | }, 2334 | "hoek": { 2335 | "version": "2.16.3", 2336 | "bundled": true, 2337 | "dev": true 2338 | }, 2339 | "http-signature": { 2340 | "version": "1.1.1", 2341 | "bundled": true, 2342 | "dev": true, 2343 | "optional": true, 2344 | "requires": { 2345 | "assert-plus": "^0.2.0", 2346 | "jsprim": "^1.2.2", 2347 | "sshpk": "^1.7.0" 2348 | } 2349 | }, 2350 | "inflight": { 2351 | "version": "1.0.6", 2352 | "bundled": true, 2353 | "dev": true, 2354 | "requires": { 2355 | "once": "^1.3.0", 2356 | "wrappy": "1" 2357 | } 2358 | }, 2359 | "inherits": { 2360 | "version": "2.0.3", 2361 | "bundled": true, 2362 | "dev": true 2363 | }, 2364 | "ini": { 2365 | "version": "1.3.4", 2366 | "bundled": true, 2367 | "dev": true, 2368 | "optional": true 2369 | }, 2370 | "is-fullwidth-code-point": { 2371 | "version": "1.0.0", 2372 | "bundled": true, 2373 | "dev": true, 2374 | "requires": { 2375 | "number-is-nan": "^1.0.0" 2376 | } 2377 | }, 2378 | "is-typedarray": { 2379 | "version": "1.0.0", 2380 | "bundled": true, 2381 | "dev": true, 2382 | "optional": true 2383 | }, 2384 | "isarray": { 2385 | "version": "1.0.0", 2386 | "bundled": true, 2387 | "dev": true 2388 | }, 2389 | "isstream": { 2390 | "version": "0.1.2", 2391 | "bundled": true, 2392 | "dev": true, 2393 | "optional": true 2394 | }, 2395 | "jodid25519": { 2396 | "version": "1.0.2", 2397 | "bundled": true, 2398 | "dev": true, 2399 | "optional": true, 2400 | "requires": { 2401 | "jsbn": "~0.1.0" 2402 | } 2403 | }, 2404 | "jsbn": { 2405 | "version": "0.1.1", 2406 | "bundled": true, 2407 | "dev": true, 2408 | "optional": true 2409 | }, 2410 | "json-schema": { 2411 | "version": "0.2.3", 2412 | "bundled": true, 2413 | "dev": true, 2414 | "optional": true 2415 | }, 2416 | "json-stable-stringify": { 2417 | "version": "1.0.1", 2418 | "bundled": true, 2419 | "dev": true, 2420 | "optional": true, 2421 | "requires": { 2422 | "jsonify": "~0.0.0" 2423 | } 2424 | }, 2425 | "json-stringify-safe": { 2426 | "version": "5.0.1", 2427 | "bundled": true, 2428 | "dev": true, 2429 | "optional": true 2430 | }, 2431 | "jsonify": { 2432 | "version": "0.0.0", 2433 | "bundled": true, 2434 | "dev": true, 2435 | "optional": true 2436 | }, 2437 | "jsprim": { 2438 | "version": "1.4.0", 2439 | "bundled": true, 2440 | "dev": true, 2441 | "optional": true, 2442 | "requires": { 2443 | "assert-plus": "1.0.0", 2444 | "extsprintf": "1.0.2", 2445 | "json-schema": "0.2.3", 2446 | "verror": "1.3.6" 2447 | }, 2448 | "dependencies": { 2449 | "assert-plus": { 2450 | "version": "1.0.0", 2451 | "bundled": true, 2452 | "dev": true, 2453 | "optional": true 2454 | } 2455 | } 2456 | }, 2457 | "mime-db": { 2458 | "version": "1.27.0", 2459 | "bundled": true, 2460 | "dev": true 2461 | }, 2462 | "mime-types": { 2463 | "version": "2.1.15", 2464 | "bundled": true, 2465 | "dev": true, 2466 | "requires": { 2467 | "mime-db": "~1.27.0" 2468 | } 2469 | }, 2470 | "minimatch": { 2471 | "version": "3.0.4", 2472 | "bundled": true, 2473 | "dev": true, 2474 | "requires": { 2475 | "brace-expansion": "^1.1.7" 2476 | } 2477 | }, 2478 | "minimist": { 2479 | "version": "0.0.8", 2480 | "bundled": true, 2481 | "dev": true 2482 | }, 2483 | "mkdirp": { 2484 | "version": "0.5.1", 2485 | "bundled": true, 2486 | "dev": true, 2487 | "requires": { 2488 | "minimist": "0.0.8" 2489 | } 2490 | }, 2491 | "ms": { 2492 | "version": "2.0.0", 2493 | "bundled": true, 2494 | "dev": true, 2495 | "optional": true 2496 | }, 2497 | "node-pre-gyp": { 2498 | "version": "0.6.36", 2499 | "bundled": true, 2500 | "dev": true, 2501 | "optional": true, 2502 | "requires": { 2503 | "mkdirp": "^0.5.1", 2504 | "nopt": "^4.0.1", 2505 | "npmlog": "^4.0.2", 2506 | "rc": "^1.1.7", 2507 | "request": "^2.81.0", 2508 | "rimraf": "^2.6.1", 2509 | "semver": "^5.3.0", 2510 | "tar": "^2.2.1", 2511 | "tar-pack": "^3.4.0" 2512 | } 2513 | }, 2514 | "nopt": { 2515 | "version": "4.0.1", 2516 | "bundled": true, 2517 | "dev": true, 2518 | "optional": true, 2519 | "requires": { 2520 | "abbrev": "1", 2521 | "osenv": "^0.1.4" 2522 | } 2523 | }, 2524 | "npmlog": { 2525 | "version": "4.1.0", 2526 | "bundled": true, 2527 | "dev": true, 2528 | "optional": true, 2529 | "requires": { 2530 | "are-we-there-yet": "~1.1.2", 2531 | "console-control-strings": "~1.1.0", 2532 | "gauge": "~2.7.3", 2533 | "set-blocking": "~2.0.0" 2534 | } 2535 | }, 2536 | "number-is-nan": { 2537 | "version": "1.0.1", 2538 | "bundled": true, 2539 | "dev": true 2540 | }, 2541 | "oauth-sign": { 2542 | "version": "0.8.2", 2543 | "bundled": true, 2544 | "dev": true, 2545 | "optional": true 2546 | }, 2547 | "object-assign": { 2548 | "version": "4.1.1", 2549 | "bundled": true, 2550 | "dev": true, 2551 | "optional": true 2552 | }, 2553 | "once": { 2554 | "version": "1.4.0", 2555 | "bundled": true, 2556 | "dev": true, 2557 | "requires": { 2558 | "wrappy": "1" 2559 | } 2560 | }, 2561 | "os-homedir": { 2562 | "version": "1.0.2", 2563 | "bundled": true, 2564 | "dev": true, 2565 | "optional": true 2566 | }, 2567 | "os-tmpdir": { 2568 | "version": "1.0.2", 2569 | "bundled": true, 2570 | "dev": true, 2571 | "optional": true 2572 | }, 2573 | "osenv": { 2574 | "version": "0.1.4", 2575 | "bundled": true, 2576 | "dev": true, 2577 | "optional": true, 2578 | "requires": { 2579 | "os-homedir": "^1.0.0", 2580 | "os-tmpdir": "^1.0.0" 2581 | } 2582 | }, 2583 | "path-is-absolute": { 2584 | "version": "1.0.1", 2585 | "bundled": true, 2586 | "dev": true 2587 | }, 2588 | "performance-now": { 2589 | "version": "0.2.0", 2590 | "bundled": true, 2591 | "dev": true, 2592 | "optional": true 2593 | }, 2594 | "process-nextick-args": { 2595 | "version": "1.0.7", 2596 | "bundled": true, 2597 | "dev": true 2598 | }, 2599 | "punycode": { 2600 | "version": "1.4.1", 2601 | "bundled": true, 2602 | "dev": true, 2603 | "optional": true 2604 | }, 2605 | "qs": { 2606 | "version": "6.4.0", 2607 | "bundled": true, 2608 | "dev": true, 2609 | "optional": true 2610 | }, 2611 | "rc": { 2612 | "version": "1.2.1", 2613 | "bundled": true, 2614 | "dev": true, 2615 | "optional": true, 2616 | "requires": { 2617 | "deep-extend": "~0.4.0", 2618 | "ini": "~1.3.0", 2619 | "minimist": "^1.2.0", 2620 | "strip-json-comments": "~2.0.1" 2621 | }, 2622 | "dependencies": { 2623 | "minimist": { 2624 | "version": "1.2.0", 2625 | "bundled": true, 2626 | "dev": true, 2627 | "optional": true 2628 | } 2629 | } 2630 | }, 2631 | "readable-stream": { 2632 | "version": "2.2.9", 2633 | "bundled": true, 2634 | "dev": true, 2635 | "requires": { 2636 | "buffer-shims": "~1.0.0", 2637 | "core-util-is": "~1.0.0", 2638 | "inherits": "~2.0.1", 2639 | "isarray": "~1.0.0", 2640 | "process-nextick-args": "~1.0.6", 2641 | "string_decoder": "~1.0.0", 2642 | "util-deprecate": "~1.0.1" 2643 | } 2644 | }, 2645 | "request": { 2646 | "version": "2.81.0", 2647 | "bundled": true, 2648 | "dev": true, 2649 | "optional": true, 2650 | "requires": { 2651 | "aws-sign2": "~0.6.0", 2652 | "aws4": "^1.2.1", 2653 | "caseless": "~0.12.0", 2654 | "combined-stream": "~1.0.5", 2655 | "extend": "~3.0.0", 2656 | "forever-agent": "~0.6.1", 2657 | "form-data": "~2.1.1", 2658 | "har-validator": "~4.2.1", 2659 | "hawk": "~3.1.3", 2660 | "http-signature": "~1.1.0", 2661 | "is-typedarray": "~1.0.0", 2662 | "isstream": "~0.1.2", 2663 | "json-stringify-safe": "~5.0.1", 2664 | "mime-types": "~2.1.7", 2665 | "oauth-sign": "~0.8.1", 2666 | "performance-now": "^0.2.0", 2667 | "qs": "~6.4.0", 2668 | "safe-buffer": "^5.0.1", 2669 | "stringstream": "~0.0.4", 2670 | "tough-cookie": "~2.3.0", 2671 | "tunnel-agent": "^0.6.0", 2672 | "uuid": "^3.0.0" 2673 | } 2674 | }, 2675 | "rimraf": { 2676 | "version": "2.6.1", 2677 | "bundled": true, 2678 | "dev": true, 2679 | "requires": { 2680 | "glob": "^7.0.5" 2681 | } 2682 | }, 2683 | "safe-buffer": { 2684 | "version": "5.0.1", 2685 | "bundled": true, 2686 | "dev": true 2687 | }, 2688 | "semver": { 2689 | "version": "5.3.0", 2690 | "bundled": true, 2691 | "dev": true, 2692 | "optional": true 2693 | }, 2694 | "set-blocking": { 2695 | "version": "2.0.0", 2696 | "bundled": true, 2697 | "dev": true, 2698 | "optional": true 2699 | }, 2700 | "signal-exit": { 2701 | "version": "3.0.2", 2702 | "bundled": true, 2703 | "dev": true, 2704 | "optional": true 2705 | }, 2706 | "sntp": { 2707 | "version": "1.0.9", 2708 | "bundled": true, 2709 | "dev": true, 2710 | "optional": true, 2711 | "requires": { 2712 | "hoek": "2.x.x" 2713 | } 2714 | }, 2715 | "sshpk": { 2716 | "version": "1.13.0", 2717 | "bundled": true, 2718 | "dev": true, 2719 | "optional": true, 2720 | "requires": { 2721 | "asn1": "~0.2.3", 2722 | "assert-plus": "^1.0.0", 2723 | "bcrypt-pbkdf": "^1.0.0", 2724 | "dashdash": "^1.12.0", 2725 | "ecc-jsbn": "~0.1.1", 2726 | "getpass": "^0.1.1", 2727 | "jodid25519": "^1.0.0", 2728 | "jsbn": "~0.1.0", 2729 | "tweetnacl": "~0.14.0" 2730 | }, 2731 | "dependencies": { 2732 | "assert-plus": { 2733 | "version": "1.0.0", 2734 | "bundled": true, 2735 | "dev": true, 2736 | "optional": true 2737 | } 2738 | } 2739 | }, 2740 | "string-width": { 2741 | "version": "1.0.2", 2742 | "bundled": true, 2743 | "dev": true, 2744 | "requires": { 2745 | "code-point-at": "^1.0.0", 2746 | "is-fullwidth-code-point": "^1.0.0", 2747 | "strip-ansi": "^3.0.0" 2748 | } 2749 | }, 2750 | "string_decoder": { 2751 | "version": "1.0.1", 2752 | "bundled": true, 2753 | "dev": true, 2754 | "requires": { 2755 | "safe-buffer": "^5.0.1" 2756 | } 2757 | }, 2758 | "stringstream": { 2759 | "version": "0.0.5", 2760 | "bundled": true, 2761 | "dev": true, 2762 | "optional": true 2763 | }, 2764 | "strip-ansi": { 2765 | "version": "3.0.1", 2766 | "bundled": true, 2767 | "dev": true, 2768 | "requires": { 2769 | "ansi-regex": "^2.0.0" 2770 | } 2771 | }, 2772 | "strip-json-comments": { 2773 | "version": "2.0.1", 2774 | "bundled": true, 2775 | "dev": true, 2776 | "optional": true 2777 | }, 2778 | "tar": { 2779 | "version": "2.2.1", 2780 | "bundled": true, 2781 | "dev": true, 2782 | "requires": { 2783 | "block-stream": "*", 2784 | "fstream": "^1.0.2", 2785 | "inherits": "2" 2786 | } 2787 | }, 2788 | "tar-pack": { 2789 | "version": "3.4.0", 2790 | "bundled": true, 2791 | "dev": true, 2792 | "optional": true, 2793 | "requires": { 2794 | "debug": "^2.2.0", 2795 | "fstream": "^1.0.10", 2796 | "fstream-ignore": "^1.0.5", 2797 | "once": "^1.3.3", 2798 | "readable-stream": "^2.1.4", 2799 | "rimraf": "^2.5.1", 2800 | "tar": "^2.2.1", 2801 | "uid-number": "^0.0.6" 2802 | } 2803 | }, 2804 | "tough-cookie": { 2805 | "version": "2.3.2", 2806 | "bundled": true, 2807 | "dev": true, 2808 | "optional": true, 2809 | "requires": { 2810 | "punycode": "^1.4.1" 2811 | } 2812 | }, 2813 | "tunnel-agent": { 2814 | "version": "0.6.0", 2815 | "bundled": true, 2816 | "dev": true, 2817 | "optional": true, 2818 | "requires": { 2819 | "safe-buffer": "^5.0.1" 2820 | } 2821 | }, 2822 | "tweetnacl": { 2823 | "version": "0.14.5", 2824 | "bundled": true, 2825 | "dev": true, 2826 | "optional": true 2827 | }, 2828 | "uid-number": { 2829 | "version": "0.0.6", 2830 | "bundled": true, 2831 | "dev": true, 2832 | "optional": true 2833 | }, 2834 | "util-deprecate": { 2835 | "version": "1.0.2", 2836 | "bundled": true, 2837 | "dev": true 2838 | }, 2839 | "uuid": { 2840 | "version": "3.0.1", 2841 | "bundled": true, 2842 | "dev": true, 2843 | "optional": true 2844 | }, 2845 | "verror": { 2846 | "version": "1.3.6", 2847 | "bundled": true, 2848 | "dev": true, 2849 | "optional": true, 2850 | "requires": { 2851 | "extsprintf": "1.0.2" 2852 | } 2853 | }, 2854 | "wide-align": { 2855 | "version": "1.1.2", 2856 | "bundled": true, 2857 | "dev": true, 2858 | "optional": true, 2859 | "requires": { 2860 | "string-width": "^1.0.2" 2861 | } 2862 | }, 2863 | "wrappy": { 2864 | "version": "1.0.2", 2865 | "bundled": true, 2866 | "dev": true 2867 | } 2868 | } 2869 | }, 2870 | "function-bind": { 2871 | "version": "1.1.0", 2872 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.0.tgz", 2873 | "integrity": "sha1-FhdnFMgBeY5Ojyz391KUZ7tKV3E=", 2874 | "dev": true 2875 | }, 2876 | "functional-red-black-tree": { 2877 | "version": "1.0.1", 2878 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 2879 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 2880 | "dev": true 2881 | }, 2882 | "glob": { 2883 | "version": "7.1.2", 2884 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz", 2885 | "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", 2886 | "requires": { 2887 | "fs.realpath": "^1.0.0", 2888 | "inflight": "^1.0.4", 2889 | "inherits": "2", 2890 | "minimatch": "^3.0.4", 2891 | "once": "^1.3.0", 2892 | "path-is-absolute": "^1.0.0" 2893 | } 2894 | }, 2895 | "glob-base": { 2896 | "version": "0.3.0", 2897 | "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", 2898 | "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", 2899 | "dev": true, 2900 | "optional": true, 2901 | "requires": { 2902 | "glob-parent": "^2.0.0", 2903 | "is-glob": "^2.0.0" 2904 | } 2905 | }, 2906 | "glob-parent": { 2907 | "version": "2.0.0", 2908 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", 2909 | "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", 2910 | "dev": true, 2911 | "requires": { 2912 | "is-glob": "^2.0.0" 2913 | } 2914 | }, 2915 | "globals": { 2916 | "version": "9.18.0", 2917 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 2918 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 2919 | "dev": true 2920 | }, 2921 | "globby": { 2922 | "version": "5.0.0", 2923 | "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz", 2924 | "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", 2925 | "dev": true, 2926 | "requires": { 2927 | "array-union": "^1.0.1", 2928 | "arrify": "^1.0.0", 2929 | "glob": "^7.0.3", 2930 | "object-assign": "^4.0.1", 2931 | "pify": "^2.0.0", 2932 | "pinkie-promise": "^2.0.0" 2933 | } 2934 | }, 2935 | "graceful-fs": { 2936 | "version": "4.1.11", 2937 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", 2938 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=", 2939 | "dev": true 2940 | }, 2941 | "has": { 2942 | "version": "1.0.1", 2943 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.1.tgz", 2944 | "integrity": "sha1-hGFzP1OLCDfJNh45qauelwTcLyg=", 2945 | "dev": true, 2946 | "requires": { 2947 | "function-bind": "^1.0.2" 2948 | } 2949 | }, 2950 | "has-ansi": { 2951 | "version": "2.0.0", 2952 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 2953 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 2954 | "dev": true, 2955 | "requires": { 2956 | "ansi-regex": "^2.0.0" 2957 | } 2958 | }, 2959 | "has-flag": { 2960 | "version": "2.0.0", 2961 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", 2962 | "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", 2963 | "dev": true 2964 | }, 2965 | "home-or-tmp": { 2966 | "version": "2.0.0", 2967 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 2968 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 2969 | "dev": true, 2970 | "requires": { 2971 | "os-homedir": "^1.0.0", 2972 | "os-tmpdir": "^1.0.1" 2973 | } 2974 | }, 2975 | "hosted-git-info": { 2976 | "version": "2.7.1", 2977 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.7.1.tgz", 2978 | "integrity": "sha512-7T/BxH19zbcCTa8XkMlbK5lTo1WtgkFi3GvdWEyNuc4Vex7/9Dqbnpsf4JMydcfj9HCg4zUWFTL3Za6lapg5/w==", 2979 | "dev": true 2980 | }, 2981 | "https-proxy-agent": { 2982 | "version": "2.2.0", 2983 | "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.0.tgz", 2984 | "integrity": "sha512-uUWcfXHvy/dwfM9bqa6AozvAjS32dZSTUYd/4SEpYKRg6LEcPLshksnQYRudM9AyNvUARMfAg5TLjUDyX/K4vA==", 2985 | "requires": { 2986 | "agent-base": "^4.1.0", 2987 | "debug": "^3.1.0" 2988 | }, 2989 | "dependencies": { 2990 | "debug": { 2991 | "version": "3.1.0", 2992 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", 2993 | "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", 2994 | "requires": { 2995 | "ms": "2.0.0" 2996 | } 2997 | } 2998 | } 2999 | }, 3000 | "iconv-lite": { 3001 | "version": "0.4.19", 3002 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", 3003 | "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", 3004 | "dev": true 3005 | }, 3006 | "ignore": { 3007 | "version": "3.3.5", 3008 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.5.tgz", 3009 | "integrity": "sha512-JLH93mL8amZQhh/p6mfQgVBH3M6epNq3DfsXsTSuSrInVjwyYlFE1nv2AgfRCC8PoOhM0jwQ5v8s9LgbK7yGDw==", 3010 | "dev": true 3011 | }, 3012 | "imurmurhash": { 3013 | "version": "0.1.4", 3014 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 3015 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 3016 | "dev": true 3017 | }, 3018 | "inflight": { 3019 | "version": "1.0.6", 3020 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 3021 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 3022 | "requires": { 3023 | "once": "^1.3.0", 3024 | "wrappy": "1" 3025 | } 3026 | }, 3027 | "inherits": { 3028 | "version": "2.0.3", 3029 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 3030 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 3031 | }, 3032 | "inquirer": { 3033 | "version": "3.3.0", 3034 | "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", 3035 | "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", 3036 | "dev": true, 3037 | "requires": { 3038 | "ansi-escapes": "^3.0.0", 3039 | "chalk": "^2.0.0", 3040 | "cli-cursor": "^2.1.0", 3041 | "cli-width": "^2.0.0", 3042 | "external-editor": "^2.0.4", 3043 | "figures": "^2.0.0", 3044 | "lodash": "^4.3.0", 3045 | "mute-stream": "0.0.7", 3046 | "run-async": "^2.2.0", 3047 | "rx-lite": "^4.0.8", 3048 | "rx-lite-aggregates": "^4.0.8", 3049 | "string-width": "^2.1.0", 3050 | "strip-ansi": "^4.0.0", 3051 | "through": "^2.3.6" 3052 | }, 3053 | "dependencies": { 3054 | "ansi-regex": { 3055 | "version": "3.0.0", 3056 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3057 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3058 | "dev": true 3059 | }, 3060 | "ansi-styles": { 3061 | "version": "3.2.0", 3062 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", 3063 | "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", 3064 | "dev": true, 3065 | "requires": { 3066 | "color-convert": "^1.9.0" 3067 | } 3068 | }, 3069 | "chalk": { 3070 | "version": "2.1.0", 3071 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", 3072 | "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", 3073 | "dev": true, 3074 | "requires": { 3075 | "ansi-styles": "^3.1.0", 3076 | "escape-string-regexp": "^1.0.5", 3077 | "supports-color": "^4.0.0" 3078 | } 3079 | }, 3080 | "strip-ansi": { 3081 | "version": "4.0.0", 3082 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 3083 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 3084 | "dev": true, 3085 | "requires": { 3086 | "ansi-regex": "^3.0.0" 3087 | } 3088 | }, 3089 | "supports-color": { 3090 | "version": "4.4.0", 3091 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 3092 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 3093 | "dev": true, 3094 | "requires": { 3095 | "has-flag": "^2.0.0" 3096 | } 3097 | } 3098 | } 3099 | }, 3100 | "interpret": { 3101 | "version": "1.1.0", 3102 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz", 3103 | "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=", 3104 | "dev": true 3105 | }, 3106 | "invariant": { 3107 | "version": "2.2.2", 3108 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz", 3109 | "integrity": "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=", 3110 | "dev": true, 3111 | "requires": { 3112 | "loose-envify": "^1.0.0" 3113 | } 3114 | }, 3115 | "is-arrayish": { 3116 | "version": "0.2.1", 3117 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 3118 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 3119 | "dev": true 3120 | }, 3121 | "is-binary-path": { 3122 | "version": "1.0.1", 3123 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 3124 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 3125 | "dev": true, 3126 | "optional": true, 3127 | "requires": { 3128 | "binary-extensions": "^1.0.0" 3129 | } 3130 | }, 3131 | "is-buffer": { 3132 | "version": "1.1.5", 3133 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz", 3134 | "integrity": "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=", 3135 | "dev": true 3136 | }, 3137 | "is-builtin-module": { 3138 | "version": "1.0.0", 3139 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", 3140 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", 3141 | "dev": true, 3142 | "requires": { 3143 | "builtin-modules": "^1.0.0" 3144 | } 3145 | }, 3146 | "is-callable": { 3147 | "version": "1.1.3", 3148 | "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.3.tgz", 3149 | "integrity": "sha1-hut1OSgF3cM69xySoO7fdO52BLI=", 3150 | "dev": true 3151 | }, 3152 | "is-date-object": { 3153 | "version": "1.0.1", 3154 | "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", 3155 | "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", 3156 | "dev": true 3157 | }, 3158 | "is-dotfile": { 3159 | "version": "1.0.3", 3160 | "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", 3161 | "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", 3162 | "dev": true, 3163 | "optional": true 3164 | }, 3165 | "is-equal-shallow": { 3166 | "version": "0.1.3", 3167 | "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", 3168 | "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", 3169 | "dev": true, 3170 | "optional": true, 3171 | "requires": { 3172 | "is-primitive": "^2.0.0" 3173 | } 3174 | }, 3175 | "is-extendable": { 3176 | "version": "0.1.1", 3177 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 3178 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 3179 | "dev": true, 3180 | "optional": true 3181 | }, 3182 | "is-extglob": { 3183 | "version": "1.0.0", 3184 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", 3185 | "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", 3186 | "dev": true 3187 | }, 3188 | "is-finite": { 3189 | "version": "1.0.2", 3190 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", 3191 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", 3192 | "dev": true, 3193 | "requires": { 3194 | "number-is-nan": "^1.0.0" 3195 | } 3196 | }, 3197 | "is-fullwidth-code-point": { 3198 | "version": "2.0.0", 3199 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 3200 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 3201 | "dev": true 3202 | }, 3203 | "is-glob": { 3204 | "version": "2.0.1", 3205 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", 3206 | "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", 3207 | "dev": true, 3208 | "requires": { 3209 | "is-extglob": "^1.0.0" 3210 | } 3211 | }, 3212 | "is-number": { 3213 | "version": "2.1.0", 3214 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", 3215 | "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", 3216 | "dev": true, 3217 | "optional": true, 3218 | "requires": { 3219 | "kind-of": "^3.0.2" 3220 | } 3221 | }, 3222 | "is-path-cwd": { 3223 | "version": "1.0.0", 3224 | "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz", 3225 | "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=", 3226 | "dev": true 3227 | }, 3228 | "is-path-in-cwd": { 3229 | "version": "1.0.0", 3230 | "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz", 3231 | "integrity": "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=", 3232 | "dev": true, 3233 | "requires": { 3234 | "is-path-inside": "^1.0.0" 3235 | } 3236 | }, 3237 | "is-path-inside": { 3238 | "version": "1.0.0", 3239 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz", 3240 | "integrity": "sha1-/AbloWg/vaE95mev9xe7wQpI838=", 3241 | "dev": true, 3242 | "requires": { 3243 | "path-is-inside": "^1.0.1" 3244 | } 3245 | }, 3246 | "is-posix-bracket": { 3247 | "version": "0.1.1", 3248 | "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", 3249 | "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", 3250 | "dev": true, 3251 | "optional": true 3252 | }, 3253 | "is-primitive": { 3254 | "version": "2.0.0", 3255 | "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", 3256 | "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", 3257 | "dev": true 3258 | }, 3259 | "is-promise": { 3260 | "version": "2.1.0", 3261 | "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", 3262 | "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=", 3263 | "dev": true 3264 | }, 3265 | "is-regex": { 3266 | "version": "1.0.4", 3267 | "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", 3268 | "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", 3269 | "dev": true, 3270 | "requires": { 3271 | "has": "^1.0.1" 3272 | } 3273 | }, 3274 | "is-resolvable": { 3275 | "version": "1.0.0", 3276 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz", 3277 | "integrity": "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=", 3278 | "dev": true, 3279 | "requires": { 3280 | "tryit": "^1.0.1" 3281 | } 3282 | }, 3283 | "is-stream": { 3284 | "version": "1.1.0", 3285 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 3286 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 3287 | "dev": true 3288 | }, 3289 | "is-symbol": { 3290 | "version": "1.0.1", 3291 | "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", 3292 | "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", 3293 | "dev": true 3294 | }, 3295 | "isarray": { 3296 | "version": "1.0.0", 3297 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 3298 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 3299 | }, 3300 | "isexe": { 3301 | "version": "2.0.0", 3302 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 3303 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 3304 | "dev": true 3305 | }, 3306 | "isobject": { 3307 | "version": "2.1.0", 3308 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 3309 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 3310 | "dev": true, 3311 | "optional": true, 3312 | "requires": { 3313 | "isarray": "1.0.0" 3314 | } 3315 | }, 3316 | "isomorphic-fetch": { 3317 | "version": "2.2.1", 3318 | "resolved": "https://registry.npmjs.org/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz", 3319 | "integrity": "sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk=", 3320 | "dev": true, 3321 | "requires": { 3322 | "node-fetch": "^1.0.1", 3323 | "whatwg-fetch": ">=0.10.0" 3324 | } 3325 | }, 3326 | "js-tokens": { 3327 | "version": "3.0.2", 3328 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 3329 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 3330 | "dev": true 3331 | }, 3332 | "js-yaml": { 3333 | "version": "3.10.0", 3334 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.10.0.tgz", 3335 | "integrity": "sha512-O2v52ffjLa9VeM43J4XocZE//WT9N0IiwDa3KSHH7Tu8CtH+1qM8SIZvnsTh6v+4yFy5KUY3BHUVwjpfAWsjIA==", 3336 | "dev": true, 3337 | "requires": { 3338 | "argparse": "^1.0.7", 3339 | "esprima": "^4.0.0" 3340 | } 3341 | }, 3342 | "jschardet": { 3343 | "version": "1.5.1", 3344 | "resolved": "https://registry.npmjs.org/jschardet/-/jschardet-1.5.1.tgz", 3345 | "integrity": "sha512-vE2hT1D0HLZCLLclfBSfkfTTedhVj0fubHpJBHKwwUWX0nSbhPAfk+SG9rTX95BYNmau8rGFfCeaT6T5OW1C2A==", 3346 | "dev": true 3347 | }, 3348 | "jsesc": { 3349 | "version": "1.3.0", 3350 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 3351 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", 3352 | "dev": true 3353 | }, 3354 | "json-schema-traverse": { 3355 | "version": "0.3.1", 3356 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", 3357 | "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=", 3358 | "dev": true 3359 | }, 3360 | "json-stable-stringify": { 3361 | "version": "1.0.1", 3362 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", 3363 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", 3364 | "dev": true, 3365 | "requires": { 3366 | "jsonify": "~0.0.0" 3367 | } 3368 | }, 3369 | "json5": { 3370 | "version": "0.5.1", 3371 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 3372 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 3373 | "dev": true 3374 | }, 3375 | "jsonify": { 3376 | "version": "0.0.0", 3377 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 3378 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 3379 | "dev": true 3380 | }, 3381 | "jsx-ast-utils": { 3382 | "version": "1.4.1", 3383 | "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-1.4.1.tgz", 3384 | "integrity": "sha1-OGchPo3Xm/Ho8jAMDPwe+xgsDfE=", 3385 | "dev": true 3386 | }, 3387 | "kind-of": { 3388 | "version": "3.2.2", 3389 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3390 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3391 | "dev": true, 3392 | "requires": { 3393 | "is-buffer": "^1.1.5" 3394 | } 3395 | }, 3396 | "levn": { 3397 | "version": "0.3.0", 3398 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 3399 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 3400 | "dev": true, 3401 | "requires": { 3402 | "prelude-ls": "~1.1.2", 3403 | "type-check": "~0.3.2" 3404 | } 3405 | }, 3406 | "load-json-file": { 3407 | "version": "2.0.0", 3408 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 3409 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 3410 | "dev": true, 3411 | "requires": { 3412 | "graceful-fs": "^4.1.2", 3413 | "parse-json": "^2.2.0", 3414 | "pify": "^2.0.0", 3415 | "strip-bom": "^3.0.0" 3416 | } 3417 | }, 3418 | "locate-path": { 3419 | "version": "2.0.0", 3420 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 3421 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 3422 | "dev": true, 3423 | "requires": { 3424 | "p-locate": "^2.0.0", 3425 | "path-exists": "^3.0.0" 3426 | }, 3427 | "dependencies": { 3428 | "path-exists": { 3429 | "version": "3.0.0", 3430 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 3431 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 3432 | "dev": true 3433 | } 3434 | } 3435 | }, 3436 | "lodash": { 3437 | "version": "4.17.10", 3438 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", 3439 | "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==", 3440 | "dev": true 3441 | }, 3442 | "loose-envify": { 3443 | "version": "1.3.1", 3444 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz", 3445 | "integrity": "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=", 3446 | "dev": true, 3447 | "requires": { 3448 | "js-tokens": "^3.0.0" 3449 | } 3450 | }, 3451 | "lru-cache": { 3452 | "version": "4.1.1", 3453 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz", 3454 | "integrity": "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==", 3455 | "dev": true, 3456 | "requires": { 3457 | "pseudomap": "^1.0.2", 3458 | "yallist": "^2.1.2" 3459 | } 3460 | }, 3461 | "math-random": { 3462 | "version": "1.0.1", 3463 | "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", 3464 | "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", 3465 | "dev": true, 3466 | "optional": true 3467 | }, 3468 | "micromatch": { 3469 | "version": "2.3.11", 3470 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", 3471 | "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", 3472 | "dev": true, 3473 | "optional": true, 3474 | "requires": { 3475 | "arr-diff": "^2.0.0", 3476 | "array-unique": "^0.2.1", 3477 | "braces": "^1.8.2", 3478 | "expand-brackets": "^0.1.4", 3479 | "extglob": "^0.3.1", 3480 | "filename-regex": "^2.0.0", 3481 | "is-extglob": "^1.0.0", 3482 | "is-glob": "^2.0.1", 3483 | "kind-of": "^3.0.2", 3484 | "normalize-path": "^2.0.1", 3485 | "object.omit": "^2.0.0", 3486 | "parse-glob": "^3.0.4", 3487 | "regex-cache": "^0.4.2" 3488 | } 3489 | }, 3490 | "mime": { 3491 | "version": "1.6.0", 3492 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 3493 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" 3494 | }, 3495 | "mimic-fn": { 3496 | "version": "1.1.0", 3497 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz", 3498 | "integrity": "sha1-5md4PZLonb00KBi1IwudYqZyrRg=", 3499 | "dev": true 3500 | }, 3501 | "minimatch": { 3502 | "version": "3.0.4", 3503 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 3504 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 3505 | "requires": { 3506 | "brace-expansion": "^1.1.7" 3507 | } 3508 | }, 3509 | "minimist": { 3510 | "version": "0.0.8", 3511 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 3512 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 3513 | }, 3514 | "mkdirp": { 3515 | "version": "0.5.1", 3516 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 3517 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 3518 | "dev": true, 3519 | "requires": { 3520 | "minimist": "0.0.8" 3521 | } 3522 | }, 3523 | "ms": { 3524 | "version": "2.0.0", 3525 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 3526 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 3527 | }, 3528 | "mute-stream": { 3529 | "version": "0.0.7", 3530 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", 3531 | "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=", 3532 | "dev": true 3533 | }, 3534 | "nan": { 3535 | "version": "2.6.2", 3536 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.6.2.tgz", 3537 | "integrity": "sha1-5P805slf37WuzAjeZZb0NgWn20U=", 3538 | "dev": true, 3539 | "optional": true 3540 | }, 3541 | "natural-compare": { 3542 | "version": "1.4.0", 3543 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 3544 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 3545 | "dev": true 3546 | }, 3547 | "node-fetch": { 3548 | "version": "1.7.3", 3549 | "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-1.7.3.tgz", 3550 | "integrity": "sha512-NhZ4CsKx7cYm2vSrBAr2PvFOe6sWDf0UYLRqA6svUYg7+/TSfVAu49jYC4BvQ4Sms9SZgdqGBgroqfDhJdTyKQ==", 3551 | "dev": true, 3552 | "requires": { 3553 | "encoding": "^0.1.11", 3554 | "is-stream": "^1.0.1" 3555 | } 3556 | }, 3557 | "normalize-package-data": { 3558 | "version": "2.4.0", 3559 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.4.0.tgz", 3560 | "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", 3561 | "dev": true, 3562 | "requires": { 3563 | "hosted-git-info": "^2.1.4", 3564 | "is-builtin-module": "^1.0.0", 3565 | "semver": "2 || 3 || 4 || 5", 3566 | "validate-npm-package-license": "^3.0.1" 3567 | } 3568 | }, 3569 | "normalize-path": { 3570 | "version": "2.1.1", 3571 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 3572 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 3573 | "dev": true, 3574 | "requires": { 3575 | "remove-trailing-separator": "^1.0.1" 3576 | } 3577 | }, 3578 | "number-is-nan": { 3579 | "version": "1.0.1", 3580 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 3581 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 3582 | "dev": true 3583 | }, 3584 | "object-assign": { 3585 | "version": "4.1.1", 3586 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3587 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 3588 | "dev": true 3589 | }, 3590 | "object-keys": { 3591 | "version": "1.0.11", 3592 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.11.tgz", 3593 | "integrity": "sha1-xUYBd4rVYPEULODgG8yotW0TQm0=", 3594 | "dev": true 3595 | }, 3596 | "object.omit": { 3597 | "version": "2.0.1", 3598 | "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", 3599 | "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", 3600 | "dev": true, 3601 | "optional": true, 3602 | "requires": { 3603 | "for-own": "^0.1.4", 3604 | "is-extendable": "^0.1.1" 3605 | } 3606 | }, 3607 | "once": { 3608 | "version": "1.4.0", 3609 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3610 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3611 | "requires": { 3612 | "wrappy": "1" 3613 | } 3614 | }, 3615 | "onetime": { 3616 | "version": "2.0.1", 3617 | "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", 3618 | "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", 3619 | "dev": true, 3620 | "requires": { 3621 | "mimic-fn": "^1.0.0" 3622 | } 3623 | }, 3624 | "optionator": { 3625 | "version": "0.8.2", 3626 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 3627 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 3628 | "dev": true, 3629 | "requires": { 3630 | "deep-is": "~0.1.3", 3631 | "fast-levenshtein": "~2.0.4", 3632 | "levn": "~0.3.0", 3633 | "prelude-ls": "~1.1.2", 3634 | "type-check": "~0.3.2", 3635 | "wordwrap": "~1.0.0" 3636 | } 3637 | }, 3638 | "os-homedir": { 3639 | "version": "1.0.2", 3640 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 3641 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 3642 | "dev": true 3643 | }, 3644 | "os-tmpdir": { 3645 | "version": "1.0.2", 3646 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 3647 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 3648 | "dev": true 3649 | }, 3650 | "output-file-sync": { 3651 | "version": "1.1.2", 3652 | "resolved": "https://registry.npmjs.org/output-file-sync/-/output-file-sync-1.1.2.tgz", 3653 | "integrity": "sha1-0KM+7+YaIF+suQCS6CZZjVJFznY=", 3654 | "dev": true, 3655 | "requires": { 3656 | "graceful-fs": "^4.1.4", 3657 | "mkdirp": "^0.5.1", 3658 | "object-assign": "^4.1.0" 3659 | }, 3660 | "dependencies": { 3661 | "mkdirp": { 3662 | "version": "0.5.1", 3663 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 3664 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 3665 | "dev": true, 3666 | "requires": { 3667 | "minimist": "0.0.8" 3668 | } 3669 | } 3670 | } 3671 | }, 3672 | "p-limit": { 3673 | "version": "1.3.0", 3674 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", 3675 | "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", 3676 | "dev": true, 3677 | "requires": { 3678 | "p-try": "^1.0.0" 3679 | } 3680 | }, 3681 | "p-locate": { 3682 | "version": "2.0.0", 3683 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 3684 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 3685 | "dev": true, 3686 | "requires": { 3687 | "p-limit": "^1.1.0" 3688 | } 3689 | }, 3690 | "p-try": { 3691 | "version": "1.0.0", 3692 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", 3693 | "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", 3694 | "dev": true 3695 | }, 3696 | "parse-glob": { 3697 | "version": "3.0.4", 3698 | "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", 3699 | "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", 3700 | "dev": true, 3701 | "optional": true, 3702 | "requires": { 3703 | "glob-base": "^0.3.0", 3704 | "is-dotfile": "^1.0.0", 3705 | "is-extglob": "^1.0.0", 3706 | "is-glob": "^2.0.0" 3707 | } 3708 | }, 3709 | "parse-json": { 3710 | "version": "2.2.0", 3711 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 3712 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 3713 | "dev": true, 3714 | "requires": { 3715 | "error-ex": "^1.2.0" 3716 | } 3717 | }, 3718 | "path-exists": { 3719 | "version": "2.1.0", 3720 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 3721 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 3722 | "dev": true, 3723 | "requires": { 3724 | "pinkie-promise": "^2.0.0" 3725 | } 3726 | }, 3727 | "path-is-absolute": { 3728 | "version": "1.0.1", 3729 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3730 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 3731 | }, 3732 | "path-is-inside": { 3733 | "version": "1.0.2", 3734 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", 3735 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", 3736 | "dev": true 3737 | }, 3738 | "path-parse": { 3739 | "version": "1.0.5", 3740 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz", 3741 | "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", 3742 | "dev": true 3743 | }, 3744 | "path-type": { 3745 | "version": "2.0.0", 3746 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", 3747 | "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", 3748 | "dev": true, 3749 | "requires": { 3750 | "pify": "^2.0.0" 3751 | } 3752 | }, 3753 | "pend": { 3754 | "version": "1.2.0", 3755 | "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", 3756 | "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=" 3757 | }, 3758 | "pify": { 3759 | "version": "2.3.0", 3760 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 3761 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 3762 | "dev": true 3763 | }, 3764 | "pinkie": { 3765 | "version": "2.0.4", 3766 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 3767 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 3768 | "dev": true 3769 | }, 3770 | "pinkie-promise": { 3771 | "version": "2.0.1", 3772 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 3773 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 3774 | "dev": true, 3775 | "requires": { 3776 | "pinkie": "^2.0.0" 3777 | } 3778 | }, 3779 | "pkg-dir": { 3780 | "version": "1.0.0", 3781 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", 3782 | "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", 3783 | "dev": true, 3784 | "requires": { 3785 | "find-up": "^1.0.0" 3786 | } 3787 | }, 3788 | "pluralize": { 3789 | "version": "7.0.0", 3790 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", 3791 | "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", 3792 | "dev": true 3793 | }, 3794 | "prelude-ls": { 3795 | "version": "1.1.2", 3796 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 3797 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 3798 | "dev": true 3799 | }, 3800 | "preserve": { 3801 | "version": "0.2.0", 3802 | "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", 3803 | "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", 3804 | "dev": true, 3805 | "optional": true 3806 | }, 3807 | "private": { 3808 | "version": "0.1.8", 3809 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 3810 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", 3811 | "dev": true 3812 | }, 3813 | "process-nextick-args": { 3814 | "version": "1.0.7", 3815 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", 3816 | "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" 3817 | }, 3818 | "progress": { 3819 | "version": "2.0.0", 3820 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz", 3821 | "integrity": "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" 3822 | }, 3823 | "promise": { 3824 | "version": "7.3.1", 3825 | "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", 3826 | "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", 3827 | "dev": true, 3828 | "requires": { 3829 | "asap": "~2.0.3" 3830 | } 3831 | }, 3832 | "prop-types": { 3833 | "version": "15.6.0", 3834 | "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.6.0.tgz", 3835 | "integrity": "sha1-zq8IMCL8RrSjX2nhPvda7Q1jmFY=", 3836 | "dev": true, 3837 | "requires": { 3838 | "fbjs": "^0.8.16", 3839 | "loose-envify": "^1.3.1", 3840 | "object-assign": "^4.1.1" 3841 | } 3842 | }, 3843 | "proxy-from-env": { 3844 | "version": "1.0.0", 3845 | "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz", 3846 | "integrity": "sha1-M8UDmPcOp+uW0h97gXYwpVeRx+4=" 3847 | }, 3848 | "pseudomap": { 3849 | "version": "1.0.2", 3850 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 3851 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 3852 | "dev": true 3853 | }, 3854 | "puppeteer": { 3855 | "version": "1.2.0", 3856 | "resolved": "https://registry.npmjs.org/puppeteer/-/puppeteer-1.2.0.tgz", 3857 | "integrity": "sha512-4sY/6mB7+kNPGAzPGKq65tH0VG3ohUEkXHuOReB9K/tw3m1TqifYmxnMR/uDeci/UPwyk5K1gWYh8rw0U0Zscw==", 3858 | "requires": { 3859 | "debug": "^2.6.8", 3860 | "extract-zip": "^1.6.5", 3861 | "https-proxy-agent": "^2.1.0", 3862 | "mime": "^1.3.4", 3863 | "progress": "^2.0.0", 3864 | "proxy-from-env": "^1.0.0", 3865 | "rimraf": "^2.6.1", 3866 | "ws": "^3.0.0" 3867 | } 3868 | }, 3869 | "read-pkg": { 3870 | "version": "2.0.0", 3871 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", 3872 | "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", 3873 | "dev": true, 3874 | "requires": { 3875 | "load-json-file": "^2.0.0", 3876 | "normalize-package-data": "^2.3.2", 3877 | "path-type": "^2.0.0" 3878 | } 3879 | }, 3880 | "read-pkg-up": { 3881 | "version": "2.0.0", 3882 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", 3883 | "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", 3884 | "dev": true, 3885 | "requires": { 3886 | "find-up": "^2.0.0", 3887 | "read-pkg": "^2.0.0" 3888 | }, 3889 | "dependencies": { 3890 | "find-up": { 3891 | "version": "2.1.0", 3892 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 3893 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 3894 | "dev": true, 3895 | "requires": { 3896 | "locate-path": "^2.0.0" 3897 | } 3898 | } 3899 | } 3900 | }, 3901 | "readable-stream": { 3902 | "version": "2.3.3", 3903 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.3.tgz", 3904 | "integrity": "sha512-m+qzzcn7KUxEmd1gMbchF+Y2eIUbieUaxkWtptyHywrX0rE8QEYqPC07Vuy4Wm32/xE16NcdBctb8S0Xe/5IeQ==", 3905 | "requires": { 3906 | "core-util-is": "~1.0.0", 3907 | "inherits": "~2.0.3", 3908 | "isarray": "~1.0.0", 3909 | "process-nextick-args": "~1.0.6", 3910 | "safe-buffer": "~5.1.1", 3911 | "string_decoder": "~1.0.3", 3912 | "util-deprecate": "~1.0.1" 3913 | } 3914 | }, 3915 | "readdirp": { 3916 | "version": "2.1.0", 3917 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.1.0.tgz", 3918 | "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", 3919 | "dev": true, 3920 | "optional": true, 3921 | "requires": { 3922 | "graceful-fs": "^4.1.2", 3923 | "minimatch": "^3.0.2", 3924 | "readable-stream": "^2.0.2", 3925 | "set-immediate-shim": "^1.0.1" 3926 | } 3927 | }, 3928 | "rechoir": { 3929 | "version": "0.6.2", 3930 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", 3931 | "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", 3932 | "dev": true, 3933 | "requires": { 3934 | "resolve": "^1.1.6" 3935 | } 3936 | }, 3937 | "regenerate": { 3938 | "version": "1.4.0", 3939 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 3940 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", 3941 | "dev": true 3942 | }, 3943 | "regenerator-runtime": { 3944 | "version": "0.11.0", 3945 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.0.tgz", 3946 | "integrity": "sha512-/aA0kLeRb5N9K0d4fw7ooEbI+xDe+DKD499EQqygGqeS8N3xto15p09uY2xj7ixP81sNPXvRLnAQIqdVStgb1A==", 3947 | "dev": true 3948 | }, 3949 | "regenerator-transform": { 3950 | "version": "0.10.1", 3951 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", 3952 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", 3953 | "dev": true, 3954 | "requires": { 3955 | "babel-runtime": "^6.18.0", 3956 | "babel-types": "^6.19.0", 3957 | "private": "^0.1.6" 3958 | } 3959 | }, 3960 | "regex-cache": { 3961 | "version": "0.4.3", 3962 | "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz", 3963 | "integrity": "sha1-mxpsNdTQ3871cRrmUejp09cRQUU=", 3964 | "dev": true, 3965 | "optional": true, 3966 | "requires": { 3967 | "is-equal-shallow": "^0.1.3", 3968 | "is-primitive": "^2.0.0" 3969 | } 3970 | }, 3971 | "regexpu-core": { 3972 | "version": "2.0.0", 3973 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", 3974 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", 3975 | "dev": true, 3976 | "requires": { 3977 | "regenerate": "^1.2.1", 3978 | "regjsgen": "^0.2.0", 3979 | "regjsparser": "^0.1.4" 3980 | } 3981 | }, 3982 | "regjsgen": { 3983 | "version": "0.2.0", 3984 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", 3985 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", 3986 | "dev": true 3987 | }, 3988 | "regjsparser": { 3989 | "version": "0.1.5", 3990 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", 3991 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", 3992 | "dev": true, 3993 | "requires": { 3994 | "jsesc": "~0.5.0" 3995 | }, 3996 | "dependencies": { 3997 | "jsesc": { 3998 | "version": "0.5.0", 3999 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 4000 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 4001 | "dev": true 4002 | } 4003 | } 4004 | }, 4005 | "remove-trailing-separator": { 4006 | "version": "1.1.0", 4007 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 4008 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 4009 | "dev": true 4010 | }, 4011 | "repeat-element": { 4012 | "version": "1.1.2", 4013 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", 4014 | "integrity": "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=", 4015 | "dev": true 4016 | }, 4017 | "repeat-string": { 4018 | "version": "1.6.1", 4019 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 4020 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 4021 | "dev": true, 4022 | "optional": true 4023 | }, 4024 | "repeating": { 4025 | "version": "2.0.1", 4026 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 4027 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 4028 | "dev": true, 4029 | "requires": { 4030 | "is-finite": "^1.0.0" 4031 | } 4032 | }, 4033 | "require-uncached": { 4034 | "version": "1.0.3", 4035 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", 4036 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", 4037 | "dev": true, 4038 | "requires": { 4039 | "caller-path": "^0.1.0", 4040 | "resolve-from": "^1.0.0" 4041 | } 4042 | }, 4043 | "resolve": { 4044 | "version": "1.4.0", 4045 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.4.0.tgz", 4046 | "integrity": "sha512-aW7sVKPufyHqOmyyLzg/J+8606v5nevBgaliIlV7nUpVMsDnoBGV/cbSLNjZAg9q0Cfd/+easKVKQ8vOu8fn1Q==", 4047 | "dev": true, 4048 | "requires": { 4049 | "path-parse": "^1.0.5" 4050 | } 4051 | }, 4052 | "resolve-from": { 4053 | "version": "1.0.1", 4054 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", 4055 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", 4056 | "dev": true 4057 | }, 4058 | "restore-cursor": { 4059 | "version": "2.0.0", 4060 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", 4061 | "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", 4062 | "dev": true, 4063 | "requires": { 4064 | "onetime": "^2.0.0", 4065 | "signal-exit": "^3.0.2" 4066 | } 4067 | }, 4068 | "rimraf": { 4069 | "version": "2.6.2", 4070 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz", 4071 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", 4072 | "requires": { 4073 | "glob": "^7.0.5" 4074 | } 4075 | }, 4076 | "run-async": { 4077 | "version": "2.3.0", 4078 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", 4079 | "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", 4080 | "dev": true, 4081 | "requires": { 4082 | "is-promise": "^2.1.0" 4083 | } 4084 | }, 4085 | "rx-lite": { 4086 | "version": "4.0.8", 4087 | "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", 4088 | "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", 4089 | "dev": true 4090 | }, 4091 | "rx-lite-aggregates": { 4092 | "version": "4.0.8", 4093 | "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", 4094 | "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", 4095 | "dev": true, 4096 | "requires": { 4097 | "rx-lite": "*" 4098 | } 4099 | }, 4100 | "safe-buffer": { 4101 | "version": "5.1.1", 4102 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", 4103 | "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 4104 | }, 4105 | "semver": { 4106 | "version": "5.4.1", 4107 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.4.1.tgz", 4108 | "integrity": "sha512-WfG/X9+oATh81XtllIo/I8gOiY9EXRdv1cQdyykeXK17YcUW3EXUAi2To4pcH6nZtJPr7ZOpM5OMyWJZm+8Rsg==", 4109 | "dev": true 4110 | }, 4111 | "set-immediate-shim": { 4112 | "version": "1.0.1", 4113 | "resolved": "https://registry.npmjs.org/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz", 4114 | "integrity": "sha1-SysbJ+uAip+NzEgaWOXlb1mfP2E=", 4115 | "dev": true, 4116 | "optional": true 4117 | }, 4118 | "setimmediate": { 4119 | "version": "1.0.5", 4120 | "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz", 4121 | "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=", 4122 | "dev": true 4123 | }, 4124 | "shebang-command": { 4125 | "version": "1.2.0", 4126 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 4127 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 4128 | "dev": true, 4129 | "requires": { 4130 | "shebang-regex": "^1.0.0" 4131 | } 4132 | }, 4133 | "shebang-regex": { 4134 | "version": "1.0.0", 4135 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 4136 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 4137 | "dev": true 4138 | }, 4139 | "shelljs": { 4140 | "version": "0.8.1", 4141 | "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.1.tgz", 4142 | "integrity": "sha512-YA/iYtZpzFe5HyWVGrb02FjPxc4EMCfpoU/Phg9fQoyMC72u9598OUBrsU8IrtwAKG0tO8IYaqbaLIw+k3IRGA==", 4143 | "dev": true, 4144 | "requires": { 4145 | "glob": "^7.0.0", 4146 | "interpret": "^1.0.0", 4147 | "rechoir": "^0.6.2" 4148 | } 4149 | }, 4150 | "signal-exit": { 4151 | "version": "3.0.2", 4152 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", 4153 | "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", 4154 | "dev": true 4155 | }, 4156 | "slash": { 4157 | "version": "1.0.0", 4158 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 4159 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", 4160 | "dev": true 4161 | }, 4162 | "slice-ansi": { 4163 | "version": "1.0.0", 4164 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", 4165 | "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", 4166 | "dev": true, 4167 | "requires": { 4168 | "is-fullwidth-code-point": "^2.0.0" 4169 | } 4170 | }, 4171 | "source-map": { 4172 | "version": "0.5.7", 4173 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 4174 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 4175 | "dev": true 4176 | }, 4177 | "source-map-support": { 4178 | "version": "0.4.16", 4179 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.16.tgz", 4180 | "integrity": "sha512-A6vlydY7H/ljr4L2UOhDSajQdZQ6dMD7cLH0pzwcmwLyc9u8PNI4WGtnfDDzX7uzGL6c/T+ORL97Zlh+S4iOrg==", 4181 | "dev": true, 4182 | "requires": { 4183 | "source-map": "^0.5.6" 4184 | } 4185 | }, 4186 | "spdx-correct": { 4187 | "version": "3.0.0", 4188 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", 4189 | "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", 4190 | "dev": true, 4191 | "requires": { 4192 | "spdx-expression-parse": "^3.0.0", 4193 | "spdx-license-ids": "^3.0.0" 4194 | } 4195 | }, 4196 | "spdx-exceptions": { 4197 | "version": "2.1.0", 4198 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.1.0.tgz", 4199 | "integrity": "sha512-4K1NsmrlCU1JJgUrtgEeTVyfx8VaYea9J9LvARxhbHtVtohPs/gFGG5yy49beySjlIMhhXZ4QqujIZEfS4l6Cg==", 4200 | "dev": true 4201 | }, 4202 | "spdx-expression-parse": { 4203 | "version": "3.0.0", 4204 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.0.tgz", 4205 | "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", 4206 | "dev": true, 4207 | "requires": { 4208 | "spdx-exceptions": "^2.1.0", 4209 | "spdx-license-ids": "^3.0.0" 4210 | } 4211 | }, 4212 | "spdx-license-ids": { 4213 | "version": "3.0.0", 4214 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.0.tgz", 4215 | "integrity": "sha512-2+EPwgbnmOIl8HjGBXXMd9NAu02vLjOO1nWw4kmeRDFyHn+M/ETfHxQUK0oXg8ctgVnl9t3rosNVsZ1jG61nDA==", 4216 | "dev": true 4217 | }, 4218 | "sprintf-js": { 4219 | "version": "1.0.3", 4220 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 4221 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 4222 | "dev": true 4223 | }, 4224 | "string-width": { 4225 | "version": "2.1.1", 4226 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 4227 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 4228 | "dev": true, 4229 | "requires": { 4230 | "is-fullwidth-code-point": "^2.0.0", 4231 | "strip-ansi": "^4.0.0" 4232 | }, 4233 | "dependencies": { 4234 | "ansi-regex": { 4235 | "version": "3.0.0", 4236 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 4237 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 4238 | "dev": true 4239 | }, 4240 | "strip-ansi": { 4241 | "version": "4.0.0", 4242 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 4243 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 4244 | "dev": true, 4245 | "requires": { 4246 | "ansi-regex": "^3.0.0" 4247 | } 4248 | } 4249 | } 4250 | }, 4251 | "string_decoder": { 4252 | "version": "1.0.3", 4253 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz", 4254 | "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==", 4255 | "requires": { 4256 | "safe-buffer": "~5.1.0" 4257 | } 4258 | }, 4259 | "strip-ansi": { 4260 | "version": "3.0.1", 4261 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 4262 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 4263 | "dev": true, 4264 | "requires": { 4265 | "ansi-regex": "^2.0.0" 4266 | } 4267 | }, 4268 | "strip-bom": { 4269 | "version": "3.0.0", 4270 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 4271 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 4272 | "dev": true 4273 | }, 4274 | "strip-json-comments": { 4275 | "version": "2.0.1", 4276 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", 4277 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", 4278 | "dev": true 4279 | }, 4280 | "supports-color": { 4281 | "version": "2.0.0", 4282 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 4283 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 4284 | "dev": true 4285 | }, 4286 | "table": { 4287 | "version": "4.0.2", 4288 | "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", 4289 | "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", 4290 | "dev": true, 4291 | "requires": { 4292 | "ajv": "^5.2.3", 4293 | "ajv-keywords": "^2.1.0", 4294 | "chalk": "^2.1.0", 4295 | "lodash": "^4.17.4", 4296 | "slice-ansi": "1.0.0", 4297 | "string-width": "^2.1.1" 4298 | }, 4299 | "dependencies": { 4300 | "ansi-styles": { 4301 | "version": "3.2.0", 4302 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.0.tgz", 4303 | "integrity": "sha512-NnSOmMEYtVR2JVMIGTzynRkkaxtiq1xnFBcdQD/DnNCYPoEPsVJhM98BDyaoNOQIi7p4okdi3E27eN7GQbsUug==", 4304 | "dev": true, 4305 | "requires": { 4306 | "color-convert": "^1.9.0" 4307 | } 4308 | }, 4309 | "chalk": { 4310 | "version": "2.1.0", 4311 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.1.0.tgz", 4312 | "integrity": "sha512-LUHGS/dge4ujbXMJrnihYMcL4AoOweGnw9Tp3kQuqy1Kx5c1qKjqvMJZ6nVJPMWJtKCTN72ZogH3oeSO9g9rXQ==", 4313 | "dev": true, 4314 | "requires": { 4315 | "ansi-styles": "^3.1.0", 4316 | "escape-string-regexp": "^1.0.5", 4317 | "supports-color": "^4.0.0" 4318 | } 4319 | }, 4320 | "supports-color": { 4321 | "version": "4.4.0", 4322 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", 4323 | "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", 4324 | "dev": true, 4325 | "requires": { 4326 | "has-flag": "^2.0.0" 4327 | } 4328 | } 4329 | } 4330 | }, 4331 | "text-table": { 4332 | "version": "0.2.0", 4333 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 4334 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 4335 | "dev": true 4336 | }, 4337 | "through": { 4338 | "version": "2.3.8", 4339 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 4340 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", 4341 | "dev": true 4342 | }, 4343 | "tmp": { 4344 | "version": "0.0.33", 4345 | "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", 4346 | "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", 4347 | "dev": true, 4348 | "requires": { 4349 | "os-tmpdir": "~1.0.2" 4350 | } 4351 | }, 4352 | "to-fast-properties": { 4353 | "version": "1.0.3", 4354 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 4355 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", 4356 | "dev": true 4357 | }, 4358 | "trim-right": { 4359 | "version": "1.0.1", 4360 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 4361 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", 4362 | "dev": true 4363 | }, 4364 | "tryit": { 4365 | "version": "1.0.3", 4366 | "resolved": "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz", 4367 | "integrity": "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=", 4368 | "dev": true 4369 | }, 4370 | "type-check": { 4371 | "version": "0.3.2", 4372 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 4373 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 4374 | "dev": true, 4375 | "requires": { 4376 | "prelude-ls": "~1.1.2" 4377 | } 4378 | }, 4379 | "typedarray": { 4380 | "version": "0.0.6", 4381 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", 4382 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 4383 | }, 4384 | "ua-parser-js": { 4385 | "version": "0.7.14", 4386 | "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.14.tgz", 4387 | "integrity": "sha1-EQ1T+kw/MmwSEpK76skE0uAzh8o=", 4388 | "dev": true 4389 | }, 4390 | "ultron": { 4391 | "version": "1.1.1", 4392 | "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", 4393 | "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" 4394 | }, 4395 | "user-home": { 4396 | "version": "1.1.1", 4397 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-1.1.1.tgz", 4398 | "integrity": "sha1-K1viOjK2Onyd640PKNSFcko98ZA=", 4399 | "dev": true 4400 | }, 4401 | "util-deprecate": { 4402 | "version": "1.0.2", 4403 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4404 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 4405 | }, 4406 | "v8flags": { 4407 | "version": "2.1.1", 4408 | "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-2.1.1.tgz", 4409 | "integrity": "sha1-qrGh+jDUX4jdMhFIh1rALAtV5bQ=", 4410 | "dev": true, 4411 | "requires": { 4412 | "user-home": "^1.1.1" 4413 | } 4414 | }, 4415 | "validate-npm-package-license": { 4416 | "version": "3.0.3", 4417 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", 4418 | "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", 4419 | "dev": true, 4420 | "requires": { 4421 | "spdx-correct": "^3.0.0", 4422 | "spdx-expression-parse": "^3.0.0" 4423 | } 4424 | }, 4425 | "whatwg-fetch": { 4426 | "version": "2.0.3", 4427 | "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-2.0.3.tgz", 4428 | "integrity": "sha1-nITsLc9oGH/wC8ZOEnS0QhduHIQ=", 4429 | "dev": true 4430 | }, 4431 | "which": { 4432 | "version": "1.3.0", 4433 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz", 4434 | "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==", 4435 | "dev": true, 4436 | "requires": { 4437 | "isexe": "^2.0.0" 4438 | } 4439 | }, 4440 | "wordwrap": { 4441 | "version": "1.0.0", 4442 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 4443 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 4444 | "dev": true 4445 | }, 4446 | "wrappy": { 4447 | "version": "1.0.2", 4448 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 4449 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 4450 | }, 4451 | "write": { 4452 | "version": "0.2.1", 4453 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", 4454 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", 4455 | "dev": true, 4456 | "requires": { 4457 | "mkdirp": "^0.5.1" 4458 | } 4459 | }, 4460 | "ws": { 4461 | "version": "3.3.3", 4462 | "resolved": "https://registry.npmjs.org/ws/-/ws-3.3.3.tgz", 4463 | "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", 4464 | "requires": { 4465 | "async-limiter": "~1.0.0", 4466 | "safe-buffer": "~5.1.0", 4467 | "ultron": "~1.1.0" 4468 | } 4469 | }, 4470 | "yallist": { 4471 | "version": "2.1.2", 4472 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 4473 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 4474 | "dev": true 4475 | }, 4476 | "yauzl": { 4477 | "version": "2.4.1", 4478 | "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.4.1.tgz", 4479 | "integrity": "sha1-lSj0QtqxsihOWLQ3m7GU4i4MQAU=", 4480 | "requires": { 4481 | "fd-slicer": "~1.0.1" 4482 | } 4483 | } 4484 | } 4485 | } 4486 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "page2image", 3 | "version": "2.1.0", 4 | "description": "📷 page2image is an npm package for taking screenshot which also provides CLI command", 5 | "main": "index.js", 6 | "scripts": { 7 | "build": "node bin/build.js", 8 | "dev_build": "npm run build && npm link", 9 | "demo": "npm run build && node demo/demo.js", 10 | "test": "echo \"Error: no test specified\" && exit 1" 11 | }, 12 | "bin": { 13 | "page2image": "buildBin/screenshot.js" 14 | }, 15 | "repository": { 16 | "type": "git", 17 | "url": "git+https://github.com/Runjuu/page2image.git" 18 | }, 19 | "bugs": { 20 | "url": "https://github.com/Runjuu/page2image/issues" 21 | }, 22 | "homepage": "https://github.com/Runjuu/page2image#readme", 23 | "keywords": [ 24 | "page2image", 25 | "screenshot", 26 | "puppeteer", 27 | "headless-chrome", 28 | "cli" 29 | ], 30 | "author": "Runjuu", 31 | "license": "MIT", 32 | "dependencies": { 33 | "args-parser": "^1.1.0", 34 | "colors": "^1.1.2", 35 | "puppeteer": "^1.2.0" 36 | }, 37 | "devDependencies": { 38 | "babel-cli": "^6.26.0", 39 | "babel-core": "^6.26.3", 40 | "babel-eslint": "^8.2.5", 41 | "babel-plugin-transform-class-properties": "^6.24.1", 42 | "babel-preset-env": "^1.7.0", 43 | "eslint": "^4.8.0", 44 | "eslint-config-airbnb": "^16.0.0", 45 | "eslint-plugin-import": "^2.13.0", 46 | "eslint-plugin-jsx-a11y": "^6.0.2", 47 | "eslint-plugin-react": "^7.4.0", 48 | "shelljs": "^0.8.0" 49 | } 50 | } 51 | -------------------------------------------------------------------------------- /src/filterEmulateInfos.js: -------------------------------------------------------------------------------- 1 | import devices from 'puppeteer/DeviceDescriptors'; 2 | 3 | const supportDevice = { 4 | BlackberryPlayBook: 'Blackberry PlayBook', 5 | BlackberryPlayBookLandscape: 'Blackberry PlayBook landscape', 6 | BlackBerryZ30: 'BlackBerry Z30', 7 | BlackBerryZ30Landscape: 'BlackBerry Z30 landscape', 8 | GalaxyNote3: 'Galaxy Note 3', 9 | GalaxyNote3Landscape: 'Galaxy Note 3 landscape', 10 | GalaxyNoteII: 'Galaxy Note II', 11 | GalaxyNoteIILandscape: 'Galaxy Note II landscape', 12 | GalaxySIII: 'Galaxy S III', 13 | GalaxySIIILandscape: 'Galaxy S III landscape', 14 | GalaxyS5: 'Galaxy S5', 15 | GalaxyS5Landscape: 'Galaxy S5 landscape', 16 | iPad: 'iPad', 17 | iPadLandscape: 'iPad landscape', 18 | iPadMini: 'iPad Mini', 19 | iPadMiniLandscape: 'iPad Mini landscape', 20 | iPadPro: 'iPad Pro', 21 | iPadProLandscape: 'iPad Pro landscape', 22 | iPhone4: 'iPhone 4', 23 | iPhone4Landscape: 'iPhone 4 landscape', 24 | iPhone5: 'iPhone 5', 25 | iPhone5Landscape: 'iPhone 5 landscape', 26 | iPhone6: 'iPhone 6', 27 | iPhone6Landscape: 'iPhone 6 landscape', 28 | iPhone6Plus: 'iPhone 6 Plus', 29 | iPhone6PlusLandscape: 'iPhone 6 Plus landscape', 30 | KindleFireHDX: 'Kindle Fire HDX', 31 | KindleFireHDXLandscape: 'Kindle Fire HDX landscape', 32 | LGOptimusL70: 'LG Optimus L70', 33 | LGOptimusL70Landscape: 'LG Optimus L70 landscape', 34 | MicrosoftLumia550: 'Microsoft Lumia 550', 35 | MicrosoftLumia950: 'Microsoft Lumia 950', 36 | MicrosoftLumia950Landscape: 'Microsoft Lumia 950 landscape', 37 | Nexus10: 'Nexus 10', 38 | Nexus10Landscape: 'Nexus 10 landscape', 39 | Nexus4: 'Nexus 4', 40 | Nexus4Landscape: 'Nexus 4 landscape', 41 | Nexus5: 'Nexus 5', 42 | Nexus5Landscape: 'Nexus 5 landscape', 43 | Nexus5X: 'Nexus 5X', 44 | Nexus5XLandscape: 'Nexus 5X landscape', 45 | Nexus6: 'Nexus 6', 46 | Nexus6Landscape: 'Nexus 6 landscape', 47 | Nexus6P: 'Nexus 6P', 48 | Nexus6PLandscape: 'Nexus 6P landscape', 49 | Nexus7: 'Nexus 7', 50 | Nexus7Landscape: 'Nexus 7 landscape', 51 | NokiaLumia520: 'Nokia Lumia 520', 52 | NokiaLumia520Landscape: 'Nokia Lumia 520 landscape', 53 | NokiaN9: 'Nokia N9', 54 | NokiaN9Landscape: 'Nokia N9 landscape', 55 | }; 56 | 57 | const checkIfOptions = options => (typeof options === 'object' && 'viewport' in options && 'userAgent' in options); 58 | const checkIfSupportDevice = device => supportDevice[device] !== undefined; 59 | 60 | function filterEmulateInfos(options) { 61 | switch (true) { 62 | case checkIfOptions(options): 63 | return options; 64 | case checkIfSupportDevice(options): 65 | return devices[supportDevice[options]]; 66 | default: 67 | // eslint-disable-next-line no-console 68 | if (options !== undefined) console.warn('skip page.emulate'.warn); 69 | return false; 70 | } 71 | } 72 | 73 | export default filterEmulateInfos; 74 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | import puppeteer from 'puppeteer'; 2 | import colors from 'colors'; 3 | import filterEmulateInfos from './filterEmulateInfos'; 4 | import initPage2imageKits from './kits'; 5 | 6 | colors.setTheme({ 7 | info: 'green', 8 | data: 'grey', 9 | warn: 'yellow', 10 | debug: 'blue', 11 | error: 'red', 12 | path: 'white', 13 | }); 14 | 15 | function checkBeforeRun(config, callback) { 16 | if (config) return callback(config); 17 | return Promise.resolve('skip'); 18 | } 19 | 20 | class Screenshot { 21 | 22 | async init(config) { 23 | this.updateConfig(config); 24 | if (!this.browser) this.browser = await puppeteer.launch(this.config.launchConfig); 25 | } 26 | 27 | updateConfig(config) { 28 | Object.assign(this.config, config); 29 | } 30 | 31 | async takeScreenshot(url) { 32 | if (!url) return null; 33 | 34 | await checkBeforeRun(!this.browser, this.init.bind(this)); 35 | 36 | const page = await this.browser.newPage(); 37 | const { 38 | evaluate, waitUntil, 39 | screenshotConfig, viewportConfig, emulateConfig, 40 | disableJS, selector, 41 | } = this.config; 42 | 43 | if (screenshotConfig.path) screenshotConfig.path = screenshotConfig.path.replace(/\?.*\./, '.'); // ? Symbol will cause windows user cannot save file 44 | 45 | await checkBeforeRun(viewportConfig, page.setViewport.bind(page)); 46 | await checkBeforeRun(filterEmulateInfos(emulateConfig), page.emulate.bind(page)); 47 | await checkBeforeRun(disableJS, page.setJavaScriptEnabled.bind(page, false)); 48 | 49 | await page.goto(url, { waitUntil }); 50 | 51 | await page.evaluate(initPage2imageKits); 52 | await checkBeforeRun(evaluate, () => ( 53 | page.evaluate(evaluate.func, evaluate.args) 54 | )); 55 | 56 | async function takeScreenshot() { 57 | if (selector) { 58 | delete screenshotConfig.fullPage; 59 | const element = await page.$(selector); 60 | 61 | if (!element) throw new Error(`element selector "${selector}" can not find any element`); 62 | 63 | return element.screenshot(screenshotConfig); 64 | } else { 65 | return page.screenshot(screenshotConfig); 66 | } 67 | } 68 | 69 | const pic = await takeScreenshot(); 70 | 71 | page.close(); 72 | 73 | return pic; 74 | } 75 | 76 | constructor(config) { 77 | this.config = Object.assign({ 78 | evaluate: null, 79 | waitUntil: null, 80 | viewportConfig: null, 81 | selector: null, 82 | screenshotConfig: { 83 | quality: 80, 84 | type: 'jpeg', 85 | fullPage: true, 86 | }, 87 | }, config); 88 | } 89 | 90 | } 91 | 92 | export default Screenshot; 93 | -------------------------------------------------------------------------------- /src/kits.js: -------------------------------------------------------------------------------- 1 | function initPage2imageKits() { 2 | 3 | function autoScrollToBottom() { 4 | autoScrollToBottom.start = true; 5 | autoScrollToBottom.end = false; 6 | 7 | function scroll() { 8 | const { clientHeight } = document.documentElement; 9 | const scrollTimes = document.body.scrollHeight / clientHeight; 10 | 11 | autoScrollToBottom.count = autoScrollToBottom.count + 1 || 0; 12 | 13 | if (autoScrollToBottom.count < scrollTimes) { 14 | window.scrollTo(0, autoScrollToBottom.count * clientHeight); 15 | setTimeout(scroll, 300); 16 | } else { 17 | autoScrollToBottom.end = true; 18 | } 19 | } 20 | 21 | scroll(); 22 | } 23 | 24 | function scrollToBottom() { 25 | if (!autoScrollToBottom.start) autoScrollToBottom(); 26 | return autoScrollToBottom.end; 27 | } 28 | 29 | function checkIfImageBeenLoaded() { 30 | const imageList = Array.from(document.getElementsByTagName('img')); 31 | 32 | return imageList.length <= imageList.reduce((loaded, imageElm) => ( 33 | imageElm.complete ? loaded + 1 : loaded 34 | ), 0); 35 | } 36 | 37 | window.page2image = { 38 | scrollToBottom, 39 | checkIfImageBeenLoaded, 40 | }; 41 | } 42 | 43 | export default initPage2imageKits; 44 | --------------------------------------------------------------------------------