├── .DS_Store ├── .babelrc ├── .gitignore ├── LICENSE ├── README.md ├── app ├── .DS_Store ├── controllers │ └── svgGenerator.js ├── public │ └── scripts │ │ ├── app.js │ │ └── svg_renderer.js ├── routes │ └── index.js └── utils │ └── helper.js ├── package-lock.json ├── package.json └── server.js /.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SystangoTechnologies/react-node-dynamic-svg-generator/8f754555dae1951a2a46c5ea471dba839e64e558/.DS_Store -------------------------------------------------------------------------------- /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["es2015", "stage-0", "react"] 3 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2019 Vaibhav Gurnani 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 | ## Problem(Why this repo is published ?) 2 | There comes this case of customizing SVG according to our requirements and need to reuse the same SVG with different configurations. So to keep at frontend and customize according to out requirements will increase complexity and decrease performance and we can not re-use the same logics in different application or platform(in several client side apps). Also it makes no sense to serve millions of SVG’s via static files or via bucket storage. How about a solution where we can generate our SVG’s in run time & provide it to our client side applications which runs on all platforms 3 | This project was bootstrapped with React, Node with Express framework. 4 | 5 | ## Solution to the Problem: 6 | We can make any type of complex SVG as well using React and also we can use any npm libraries to make things easier. 7 | 8 | But the concern is We need to customize at backend and get customized SVG on frontend. React has no real DOM dependency, so you can render it on a server easily. 9 | 10 | We will be using an API endpoint from Node Express app to get SVG from backend(Rendered via React DOM) using SSR. 11 | Node Js + Express - Provide an API with proper code structure and routings. 12 | React Js - Provide a customized SVG with using any NPM library as well! 13 | So, We will be needing an approach that will utilize Node js, Express and React features. 14 | 15 | ## Demo URL: 16 | https://react-node-svg-generator.herokuapp.com/api/svg?header=React%20Node&title=Dynamic&subHeader=SVG 17 | 18 | Try changing these query params: 19 | `header` 20 | `title` 21 | `subHeader` 22 | 23 | You'll be able to see dyamic content rendering in SVG. 24 | 25 | ## Before installing, download and install Node.js. Node.js 0.10 or higher is required. 26 | 27 | ## Install dependencies 28 | `npm install` 29 | 30 | ## Serve App on Dev Environment 31 | `npm start` 32 | 33 | Runs the app in the development mode.
34 | Open [http://localhost:51132/api/svg?header=React11%20Node&title=Dynamic&subHeader=SVG] to view it in the browser. 35 | 36 | ## Technology/Library Used 37 | React 38 | Node 39 | Express 40 | Babel 41 | 42 | ## SVG 43 | Scalable Vector Graphics (SVG) is an XML-based vector image format for two-dimensional graphics with support for interactivity and animation. 44 | SVG supports JavaScript. Browsers will only run the JavaScript. 45 | 46 | ## React 47 | React is a JavaScript library for building user interfaces. 48 | React works with the DOM, So we can work with SVG with the same way that work with HTML without any difference. 49 | 50 | ## Node + Express 51 | To render React app as a server side and Make an utility to serve dynamic generated SVG for any client (Mobile/Web). 52 | 53 | ## Let's Explore the Codebase Shared in this repo: 54 | 55 | ## server.js 56 | Initial file to run the backend code 57 | We use simple Express app that handles incoming requests for SVG graphs (server.js): 58 | ``` 59 | require("babel-register"); 60 | const express = require('express'); 61 | const app = express(); 62 | const routes = require('./app/routes'); 63 | const bodyParser = require('body-parser') 64 | 65 | app.use(bodyParser.urlencoded({ extended: false })) 66 | app.use(bodyParser.json()) 67 | app.use(function(req, res, next) { 68 | res.header("Access-Control-Allow-Origin", "*"); //here configure your origin pointing to your app 69 | res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); 70 | next(); 71 | }); 72 | 73 | app.use('/api', routes); 74 | const server = app.listen(3006, function () { 75 | const host = server.address().address; 76 | const port = server.address().port; 77 | console.log('XML parser and SVG, JSON generator app listening at http://%s:%s', host, port); 78 | }); 79 | ``` 80 | 81 | 82 | ## routes/index.js 83 | Contain all routes. 84 | ``` 85 | const express = require('express'); 86 | const router = express.Router(); 87 | const svgGenerator = require('../controllers/svgGenerator'); 88 | 89 | router.get('/svg', svgGenerator.getSVG); // this route returns the SVG generated from react app 90 | module.exports = router;` 91 | 92 | ## controllers/svgGenerator.js 93 | As you can see, only these lines are really from our application, rest server.js had generic boilerplate code for node express app: 94 | ` 95 | const svgRenderer = require('../public/scripts/svg_renderer').default; 96 | 97 | exports.getSVG = function(req, res) { 98 | const svg = svgRenderer(req.query); 99 | res.send(svg); 100 | } 101 | ``` 102 | 103 | ## public/scripts/svg_render.js 104 | To pass parameter to make dynamic SVG and return SVG to the express route. 105 | ``` 106 | import React from 'react'; 107 | import ReactDOMServer from 'react-dom/server'; 108 | import App from './app' 109 | export default function(data) { 110 | return ReactDOMServer.renderToStaticMarkup(); 111 | } 112 | ``` 113 | 114 | ## public/scripts/app.js 115 | In this script, we will create a configurable SVG. 116 | ``` 117 | import React from 'react'; 118 | export default class App extends React.Component { 119 | render() { 120 | const { data } = this.props; 121 | const { header, title, subHeader } = data; 122 | return ( 123 | 125 | 126 | 127 | 128 | 129 | 130 | { header ? header : "React Node" } 131 | { title ? title : "Dynamic"} 132 | { subHeader ? subHeader : "SVG"} 133 | 134 | 135 | ) 136 | } 137 | } 138 | ``` 139 | 140 | ## Now Run `node server.js` 141 | To test it, we would run command: 142 | 143 | Open : 144 | http://localhost:3000/api/svg?header=React%20Node&title=Dynamic&subHeader=SVG 145 | 146 | ## Conclusion 147 | We successfully generated dynamic SVG and now we can easily reuse it with dynamic data at any platform(Server-side rendering!). Here we’re using custom data rendered from query params in the api call ‘/svg?header=React Node&title=Dynamic&subHeader=SVG’ , similarly we can configure and GET OR POST route with custom query params or request body to achieve dynamic rendering by passing necessary template/xml/json data. 148 | 149 | Hope this will help you to achieve your requirements, you can easily change all the SVG configuration/generator logic at server end can easily change without breaking any external dependencies. We can also handle complex SVG with animations and custom styles, but this needs to be handled in your client side application where we are consuming this dynamic SVG api. 150 | 151 | Also here we can even override the current `SVG` template, in [https://github.com/SystangoTechnologies/react-node-dynamic-svg-generator/tree/master/app/public/scripts/app.js], so there can be multiple cases that can be handled by forking this repo and customising it. 152 | 153 | Feel free to contact on vaibhav@systango.com incase of any help or suggestion. 154 | -------------------------------------------------------------------------------- /app/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/SystangoTechnologies/react-node-dynamic-svg-generator/8f754555dae1951a2a46c5ea471dba839e64e558/app/.DS_Store -------------------------------------------------------------------------------- /app/controllers/svgGenerator.js: -------------------------------------------------------------------------------- 1 | const svgRenderer = require('../public/scripts/svg_renderer').default; 2 | 3 | exports.getSVG = function(req, res) { 4 | const svg = svgRenderer(req.query); 5 | res.send(svg); 6 | } -------------------------------------------------------------------------------- /app/public/scripts/app.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | export default class App extends React.Component { 4 | render() { 5 | const { data } = this.props; 6 | const { header, title, subHeader } = data; 7 | return ( 8 | 10 | 11 | 12 | 13 | 14 | 15 | { header ? header : "React Node" } 16 | { title ? title : "Dynamic"} 17 | { subHeader ? subHeader : "SVG"} 18 | 19 | 20 | ) 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /app/public/scripts/svg_renderer.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOMServer from 'react-dom/server'; 3 | import App from './app' 4 | export default function(data) { 5 | return ReactDOMServer.renderToStaticMarkup(); 6 | } 7 | -------------------------------------------------------------------------------- /app/routes/index.js: -------------------------------------------------------------------------------- 1 | const express = require('express'); 2 | const router = express.Router(); 3 | const svgGenerator = require('../controllers/svgGenerator'); 4 | 5 | router.get('/svg', svgGenerator.getSVG); // this route returns the SVG generated from react app 6 | module.exports = router; -------------------------------------------------------------------------------- /app/utils/helper.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | 3 | export function setUnderlineStyle(textparseData){ 4 | return { 5 | marginLeft: 2, 6 | borderBottomWidth: 0.5, 7 | borderBottomColor: '#000000' 8 | } 9 | } 10 | 11 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "svg-node-react", 3 | "version": "1.0.0", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "abab": { 8 | "version": "2.0.0", 9 | "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.0.tgz", 10 | "integrity": "sha512-sY5AXXVZv4Y1VACTtR11UJCPHHudgY5i26Qj5TypE6DKlIApbwb5uqhXcJ5UUGbvZNRh7EeIoW+LrJumBsKp7w==" 11 | }, 12 | "accepts": { 13 | "version": "1.3.7", 14 | "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", 15 | "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", 16 | "requires": { 17 | "mime-types": "2.1.24", 18 | "negotiator": "0.6.2" 19 | } 20 | }, 21 | "acorn": { 22 | "version": "5.7.3", 23 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", 24 | "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==" 25 | }, 26 | "acorn-globals": { 27 | "version": "4.3.2", 28 | "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-4.3.2.tgz", 29 | "integrity": "sha512-BbzvZhVtZP+Bs1J1HcwrQe8ycfO0wStkSGxuul3He3GkHOIZ6eTqOkPuw9IP1X3+IkOo4wiJmwkobzXYz4wewQ==", 30 | "requires": { 31 | "acorn": "6.2.1", 32 | "acorn-walk": "6.2.0" 33 | }, 34 | "dependencies": { 35 | "acorn": { 36 | "version": "6.2.1", 37 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", 38 | "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==" 39 | } 40 | } 41 | }, 42 | "acorn-walk": { 43 | "version": "6.2.0", 44 | "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-6.2.0.tgz", 45 | "integrity": "sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA==" 46 | }, 47 | "ajv": { 48 | "version": "6.10.2", 49 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.2.tgz", 50 | "integrity": "sha512-TXtUUEYHuaTEbLZWIKUr5pmBuhDLy+8KYtPYdcV8qC+pOZL+NKqYwvWSRrVXHn+ZmRRAu8vJTAznH7Oag6RVRw==", 51 | "requires": { 52 | "fast-deep-equal": "2.0.1", 53 | "fast-json-stable-stringify": "2.0.0", 54 | "json-schema-traverse": "0.4.1", 55 | "uri-js": "4.2.2" 56 | } 57 | }, 58 | "amdefine": { 59 | "version": "1.0.1", 60 | "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz", 61 | "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" 62 | }, 63 | "ansi-regex": { 64 | "version": "2.1.1", 65 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 66 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" 67 | }, 68 | "ansi-styles": { 69 | "version": "2.2.1", 70 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 71 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" 72 | }, 73 | "array-equal": { 74 | "version": "1.0.0", 75 | "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", 76 | "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" 77 | }, 78 | "array-flatten": { 79 | "version": "1.1.1", 80 | "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", 81 | "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" 82 | }, 83 | "asap": { 84 | "version": "2.0.6", 85 | "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz", 86 | "integrity": "sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY=" 87 | }, 88 | "asn1": { 89 | "version": "0.2.4", 90 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", 91 | "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", 92 | "requires": { 93 | "safer-buffer": "2.1.2" 94 | } 95 | }, 96 | "assert-plus": { 97 | "version": "1.0.0", 98 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 99 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" 100 | }, 101 | "ast-types": { 102 | "version": "0.9.6", 103 | "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.9.6.tgz", 104 | "integrity": "sha1-ECyenpAF0+fjgpvwxPok7oYu6bk=" 105 | }, 106 | "async-limiter": { 107 | "version": "1.0.0", 108 | "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz", 109 | "integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==" 110 | }, 111 | "asynckit": { 112 | "version": "0.4.0", 113 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 114 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 115 | }, 116 | "aws-sign2": { 117 | "version": "0.7.0", 118 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", 119 | "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" 120 | }, 121 | "aws4": { 122 | "version": "1.8.0", 123 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", 124 | "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==" 125 | }, 126 | "babel-code-frame": { 127 | "version": "6.26.0", 128 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 129 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 130 | "requires": { 131 | "chalk": "1.1.3", 132 | "esutils": "2.0.2", 133 | "js-tokens": "3.0.2" 134 | } 135 | }, 136 | "babel-core": { 137 | "version": "6.26.3", 138 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", 139 | "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", 140 | "requires": { 141 | "babel-code-frame": "6.26.0", 142 | "babel-generator": "6.26.1", 143 | "babel-helpers": "6.24.1", 144 | "babel-messages": "6.23.0", 145 | "babel-register": "6.26.0", 146 | "babel-runtime": "6.26.0", 147 | "babel-template": "6.26.0", 148 | "babel-traverse": "6.26.0", 149 | "babel-types": "6.26.0", 150 | "babylon": "6.18.0", 151 | "convert-source-map": "1.6.0", 152 | "debug": "2.6.9", 153 | "json5": "0.5.1", 154 | "lodash": "4.17.14", 155 | "minimatch": "3.0.4", 156 | "path-is-absolute": "1.0.1", 157 | "private": "0.1.8", 158 | "slash": "1.0.0", 159 | "source-map": "0.5.7" 160 | } 161 | }, 162 | "babel-generator": { 163 | "version": "6.26.1", 164 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", 165 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", 166 | "requires": { 167 | "babel-messages": "6.23.0", 168 | "babel-runtime": "6.26.0", 169 | "babel-types": "6.26.0", 170 | "detect-indent": "4.0.0", 171 | "jsesc": "1.3.0", 172 | "lodash": "4.17.14", 173 | "source-map": "0.5.7", 174 | "trim-right": "1.0.1" 175 | } 176 | }, 177 | "babel-helper-bindify-decorators": { 178 | "version": "6.24.1", 179 | "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz", 180 | "integrity": "sha1-FMGeXxQte0fxmlJDHlKxzLxAozA=", 181 | "requires": { 182 | "babel-runtime": "6.26.0", 183 | "babel-traverse": "6.26.0", 184 | "babel-types": "6.26.0" 185 | } 186 | }, 187 | "babel-helper-builder-binary-assignment-operator-visitor": { 188 | "version": "6.24.1", 189 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", 190 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", 191 | "requires": { 192 | "babel-helper-explode-assignable-expression": "6.24.1", 193 | "babel-runtime": "6.26.0", 194 | "babel-types": "6.26.0" 195 | } 196 | }, 197 | "babel-helper-builder-react-jsx": { 198 | "version": "6.26.0", 199 | "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz", 200 | "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=", 201 | "requires": { 202 | "babel-runtime": "6.26.0", 203 | "babel-types": "6.26.0", 204 | "esutils": "2.0.2" 205 | } 206 | }, 207 | "babel-helper-call-delegate": { 208 | "version": "6.24.1", 209 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", 210 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", 211 | "requires": { 212 | "babel-helper-hoist-variables": "6.24.1", 213 | "babel-runtime": "6.26.0", 214 | "babel-traverse": "6.26.0", 215 | "babel-types": "6.26.0" 216 | } 217 | }, 218 | "babel-helper-define-map": { 219 | "version": "6.26.0", 220 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", 221 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", 222 | "requires": { 223 | "babel-helper-function-name": "6.24.1", 224 | "babel-runtime": "6.26.0", 225 | "babel-types": "6.26.0", 226 | "lodash": "4.17.14" 227 | } 228 | }, 229 | "babel-helper-explode-assignable-expression": { 230 | "version": "6.24.1", 231 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", 232 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", 233 | "requires": { 234 | "babel-runtime": "6.26.0", 235 | "babel-traverse": "6.26.0", 236 | "babel-types": "6.26.0" 237 | } 238 | }, 239 | "babel-helper-explode-class": { 240 | "version": "6.24.1", 241 | "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz", 242 | "integrity": "sha1-fcKjkQ3uAHBW4eMdZAztPVTqqes=", 243 | "requires": { 244 | "babel-helper-bindify-decorators": "6.24.1", 245 | "babel-runtime": "6.26.0", 246 | "babel-traverse": "6.26.0", 247 | "babel-types": "6.26.0" 248 | } 249 | }, 250 | "babel-helper-function-name": { 251 | "version": "6.24.1", 252 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", 253 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", 254 | "requires": { 255 | "babel-helper-get-function-arity": "6.24.1", 256 | "babel-runtime": "6.26.0", 257 | "babel-template": "6.26.0", 258 | "babel-traverse": "6.26.0", 259 | "babel-types": "6.26.0" 260 | } 261 | }, 262 | "babel-helper-get-function-arity": { 263 | "version": "6.24.1", 264 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", 265 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", 266 | "requires": { 267 | "babel-runtime": "6.26.0", 268 | "babel-types": "6.26.0" 269 | } 270 | }, 271 | "babel-helper-hoist-variables": { 272 | "version": "6.24.1", 273 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", 274 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", 275 | "requires": { 276 | "babel-runtime": "6.26.0", 277 | "babel-types": "6.26.0" 278 | } 279 | }, 280 | "babel-helper-optimise-call-expression": { 281 | "version": "6.24.1", 282 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", 283 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", 284 | "requires": { 285 | "babel-runtime": "6.26.0", 286 | "babel-types": "6.26.0" 287 | } 288 | }, 289 | "babel-helper-regex": { 290 | "version": "6.26.0", 291 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", 292 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", 293 | "requires": { 294 | "babel-runtime": "6.26.0", 295 | "babel-types": "6.26.0", 296 | "lodash": "4.17.14" 297 | } 298 | }, 299 | "babel-helper-remap-async-to-generator": { 300 | "version": "6.24.1", 301 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", 302 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", 303 | "requires": { 304 | "babel-helper-function-name": "6.24.1", 305 | "babel-runtime": "6.26.0", 306 | "babel-template": "6.26.0", 307 | "babel-traverse": "6.26.0", 308 | "babel-types": "6.26.0" 309 | } 310 | }, 311 | "babel-helper-replace-supers": { 312 | "version": "6.24.1", 313 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", 314 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", 315 | "requires": { 316 | "babel-helper-optimise-call-expression": "6.24.1", 317 | "babel-messages": "6.23.0", 318 | "babel-runtime": "6.26.0", 319 | "babel-template": "6.26.0", 320 | "babel-traverse": "6.26.0", 321 | "babel-types": "6.26.0" 322 | } 323 | }, 324 | "babel-helpers": { 325 | "version": "6.24.1", 326 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 327 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 328 | "requires": { 329 | "babel-runtime": "6.26.0", 330 | "babel-template": "6.26.0" 331 | } 332 | }, 333 | "babel-messages": { 334 | "version": "6.23.0", 335 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 336 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 337 | "requires": { 338 | "babel-runtime": "6.26.0" 339 | } 340 | }, 341 | "babel-plugin-check-es2015-constants": { 342 | "version": "6.22.0", 343 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", 344 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", 345 | "requires": { 346 | "babel-runtime": "6.26.0" 347 | } 348 | }, 349 | "babel-plugin-syntax-async-functions": { 350 | "version": "6.13.0", 351 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", 352 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=" 353 | }, 354 | "babel-plugin-syntax-async-generators": { 355 | "version": "6.13.0", 356 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz", 357 | "integrity": "sha1-a8lj67FuzLrmuStZbrfzXDQqi5o=" 358 | }, 359 | "babel-plugin-syntax-class-constructor-call": { 360 | "version": "6.18.0", 361 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz", 362 | "integrity": "sha1-nLnTn+Q8hgC+yBRkVt3L1OGnZBY=" 363 | }, 364 | "babel-plugin-syntax-class-properties": { 365 | "version": "6.13.0", 366 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz", 367 | "integrity": "sha1-1+sjt5oxf4VDlixQW4J8fWysJ94=" 368 | }, 369 | "babel-plugin-syntax-decorators": { 370 | "version": "6.13.0", 371 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz", 372 | "integrity": "sha1-MSVjtNvePMgGzuPkFszurd0RrAs=" 373 | }, 374 | "babel-plugin-syntax-do-expressions": { 375 | "version": "6.13.0", 376 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz", 377 | "integrity": "sha1-V0d1YTmqJtOQ0JQQsDdEugfkeW0=" 378 | }, 379 | "babel-plugin-syntax-dynamic-import": { 380 | "version": "6.18.0", 381 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz", 382 | "integrity": "sha1-jWomIpyDdFqZgqRBBRVyyqF5sdo=" 383 | }, 384 | "babel-plugin-syntax-exponentiation-operator": { 385 | "version": "6.13.0", 386 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", 387 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=" 388 | }, 389 | "babel-plugin-syntax-export-extensions": { 390 | "version": "6.13.0", 391 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz", 392 | "integrity": "sha1-cKFITw+QiaToStRLrDU8lbmxJyE=" 393 | }, 394 | "babel-plugin-syntax-flow": { 395 | "version": "6.18.0", 396 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-flow/-/babel-plugin-syntax-flow-6.18.0.tgz", 397 | "integrity": "sha1-TDqyCiryaqIM0lmVw5jE63AxDI0=" 398 | }, 399 | "babel-plugin-syntax-function-bind": { 400 | "version": "6.13.0", 401 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz", 402 | "integrity": "sha1-SMSV8Xe98xqYHnMvVa3AvdJgH0Y=" 403 | }, 404 | "babel-plugin-syntax-jsx": { 405 | "version": "6.18.0", 406 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", 407 | "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=" 408 | }, 409 | "babel-plugin-syntax-object-rest-spread": { 410 | "version": "6.13.0", 411 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", 412 | "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" 413 | }, 414 | "babel-plugin-syntax-trailing-function-commas": { 415 | "version": "6.22.0", 416 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", 417 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=" 418 | }, 419 | "babel-plugin-transform-async-generator-functions": { 420 | "version": "6.24.1", 421 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz", 422 | "integrity": "sha1-8FiQAUX9PpkHpt3yjaWfIVJYpds=", 423 | "requires": { 424 | "babel-helper-remap-async-to-generator": "6.24.1", 425 | "babel-plugin-syntax-async-generators": "6.13.0", 426 | "babel-runtime": "6.26.0" 427 | } 428 | }, 429 | "babel-plugin-transform-async-to-generator": { 430 | "version": "6.24.1", 431 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", 432 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", 433 | "requires": { 434 | "babel-helper-remap-async-to-generator": "6.24.1", 435 | "babel-plugin-syntax-async-functions": "6.13.0", 436 | "babel-runtime": "6.26.0" 437 | } 438 | }, 439 | "babel-plugin-transform-class-constructor-call": { 440 | "version": "6.24.1", 441 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz", 442 | "integrity": "sha1-gNwoVQWsBn3LjWxl4vbxGrd2Xvk=", 443 | "requires": { 444 | "babel-plugin-syntax-class-constructor-call": "6.18.0", 445 | "babel-runtime": "6.26.0", 446 | "babel-template": "6.26.0" 447 | } 448 | }, 449 | "babel-plugin-transform-class-properties": { 450 | "version": "6.24.1", 451 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz", 452 | "integrity": "sha1-anl2PqYdM9NvN7YRqp3vgagbRqw=", 453 | "requires": { 454 | "babel-helper-function-name": "6.24.1", 455 | "babel-plugin-syntax-class-properties": "6.13.0", 456 | "babel-runtime": "6.26.0", 457 | "babel-template": "6.26.0" 458 | } 459 | }, 460 | "babel-plugin-transform-decorators": { 461 | "version": "6.24.1", 462 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz", 463 | "integrity": "sha1-eIAT2PjGtSIr33s0Q5Df13Vp4k0=", 464 | "requires": { 465 | "babel-helper-explode-class": "6.24.1", 466 | "babel-plugin-syntax-decorators": "6.13.0", 467 | "babel-runtime": "6.26.0", 468 | "babel-template": "6.26.0", 469 | "babel-types": "6.26.0" 470 | } 471 | }, 472 | "babel-plugin-transform-do-expressions": { 473 | "version": "6.22.0", 474 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz", 475 | "integrity": "sha1-KMyvkoEtlJws0SgfaQyP3EaK6bs=", 476 | "requires": { 477 | "babel-plugin-syntax-do-expressions": "6.13.0", 478 | "babel-runtime": "6.26.0" 479 | } 480 | }, 481 | "babel-plugin-transform-es2015-arrow-functions": { 482 | "version": "6.22.0", 483 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", 484 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", 485 | "requires": { 486 | "babel-runtime": "6.26.0" 487 | } 488 | }, 489 | "babel-plugin-transform-es2015-block-scoped-functions": { 490 | "version": "6.22.0", 491 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", 492 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", 493 | "requires": { 494 | "babel-runtime": "6.26.0" 495 | } 496 | }, 497 | "babel-plugin-transform-es2015-block-scoping": { 498 | "version": "6.26.0", 499 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", 500 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", 501 | "requires": { 502 | "babel-runtime": "6.26.0", 503 | "babel-template": "6.26.0", 504 | "babel-traverse": "6.26.0", 505 | "babel-types": "6.26.0", 506 | "lodash": "4.17.14" 507 | } 508 | }, 509 | "babel-plugin-transform-es2015-classes": { 510 | "version": "6.24.1", 511 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", 512 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", 513 | "requires": { 514 | "babel-helper-define-map": "6.26.0", 515 | "babel-helper-function-name": "6.24.1", 516 | "babel-helper-optimise-call-expression": "6.24.1", 517 | "babel-helper-replace-supers": "6.24.1", 518 | "babel-messages": "6.23.0", 519 | "babel-runtime": "6.26.0", 520 | "babel-template": "6.26.0", 521 | "babel-traverse": "6.26.0", 522 | "babel-types": "6.26.0" 523 | } 524 | }, 525 | "babel-plugin-transform-es2015-computed-properties": { 526 | "version": "6.24.1", 527 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", 528 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", 529 | "requires": { 530 | "babel-runtime": "6.26.0", 531 | "babel-template": "6.26.0" 532 | } 533 | }, 534 | "babel-plugin-transform-es2015-destructuring": { 535 | "version": "6.23.0", 536 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", 537 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", 538 | "requires": { 539 | "babel-runtime": "6.26.0" 540 | } 541 | }, 542 | "babel-plugin-transform-es2015-duplicate-keys": { 543 | "version": "6.24.1", 544 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", 545 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", 546 | "requires": { 547 | "babel-runtime": "6.26.0", 548 | "babel-types": "6.26.0" 549 | } 550 | }, 551 | "babel-plugin-transform-es2015-for-of": { 552 | "version": "6.23.0", 553 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", 554 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", 555 | "requires": { 556 | "babel-runtime": "6.26.0" 557 | } 558 | }, 559 | "babel-plugin-transform-es2015-function-name": { 560 | "version": "6.24.1", 561 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", 562 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", 563 | "requires": { 564 | "babel-helper-function-name": "6.24.1", 565 | "babel-runtime": "6.26.0", 566 | "babel-types": "6.26.0" 567 | } 568 | }, 569 | "babel-plugin-transform-es2015-literals": { 570 | "version": "6.22.0", 571 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", 572 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", 573 | "requires": { 574 | "babel-runtime": "6.26.0" 575 | } 576 | }, 577 | "babel-plugin-transform-es2015-modules-amd": { 578 | "version": "6.24.1", 579 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", 580 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", 581 | "requires": { 582 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.2", 583 | "babel-runtime": "6.26.0", 584 | "babel-template": "6.26.0" 585 | } 586 | }, 587 | "babel-plugin-transform-es2015-modules-commonjs": { 588 | "version": "6.26.2", 589 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", 590 | "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", 591 | "requires": { 592 | "babel-plugin-transform-strict-mode": "6.24.1", 593 | "babel-runtime": "6.26.0", 594 | "babel-template": "6.26.0", 595 | "babel-types": "6.26.0" 596 | } 597 | }, 598 | "babel-plugin-transform-es2015-modules-systemjs": { 599 | "version": "6.24.1", 600 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", 601 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", 602 | "requires": { 603 | "babel-helper-hoist-variables": "6.24.1", 604 | "babel-runtime": "6.26.0", 605 | "babel-template": "6.26.0" 606 | } 607 | }, 608 | "babel-plugin-transform-es2015-modules-umd": { 609 | "version": "6.24.1", 610 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", 611 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", 612 | "requires": { 613 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 614 | "babel-runtime": "6.26.0", 615 | "babel-template": "6.26.0" 616 | } 617 | }, 618 | "babel-plugin-transform-es2015-object-super": { 619 | "version": "6.24.1", 620 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", 621 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", 622 | "requires": { 623 | "babel-helper-replace-supers": "6.24.1", 624 | "babel-runtime": "6.26.0" 625 | } 626 | }, 627 | "babel-plugin-transform-es2015-parameters": { 628 | "version": "6.24.1", 629 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", 630 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", 631 | "requires": { 632 | "babel-helper-call-delegate": "6.24.1", 633 | "babel-helper-get-function-arity": "6.24.1", 634 | "babel-runtime": "6.26.0", 635 | "babel-template": "6.26.0", 636 | "babel-traverse": "6.26.0", 637 | "babel-types": "6.26.0" 638 | } 639 | }, 640 | "babel-plugin-transform-es2015-shorthand-properties": { 641 | "version": "6.24.1", 642 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", 643 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", 644 | "requires": { 645 | "babel-runtime": "6.26.0", 646 | "babel-types": "6.26.0" 647 | } 648 | }, 649 | "babel-plugin-transform-es2015-spread": { 650 | "version": "6.22.0", 651 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", 652 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", 653 | "requires": { 654 | "babel-runtime": "6.26.0" 655 | } 656 | }, 657 | "babel-plugin-transform-es2015-sticky-regex": { 658 | "version": "6.24.1", 659 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", 660 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", 661 | "requires": { 662 | "babel-helper-regex": "6.26.0", 663 | "babel-runtime": "6.26.0", 664 | "babel-types": "6.26.0" 665 | } 666 | }, 667 | "babel-plugin-transform-es2015-template-literals": { 668 | "version": "6.22.0", 669 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", 670 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", 671 | "requires": { 672 | "babel-runtime": "6.26.0" 673 | } 674 | }, 675 | "babel-plugin-transform-es2015-typeof-symbol": { 676 | "version": "6.23.0", 677 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", 678 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", 679 | "requires": { 680 | "babel-runtime": "6.26.0" 681 | } 682 | }, 683 | "babel-plugin-transform-es2015-unicode-regex": { 684 | "version": "6.24.1", 685 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", 686 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", 687 | "requires": { 688 | "babel-helper-regex": "6.26.0", 689 | "babel-runtime": "6.26.0", 690 | "regexpu-core": "2.0.0" 691 | } 692 | }, 693 | "babel-plugin-transform-exponentiation-operator": { 694 | "version": "6.24.1", 695 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", 696 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", 697 | "requires": { 698 | "babel-helper-builder-binary-assignment-operator-visitor": "6.24.1", 699 | "babel-plugin-syntax-exponentiation-operator": "6.13.0", 700 | "babel-runtime": "6.26.0" 701 | } 702 | }, 703 | "babel-plugin-transform-export-extensions": { 704 | "version": "6.22.0", 705 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz", 706 | "integrity": "sha1-U3OLR+deghhYnuqUbLvTkQm75lM=", 707 | "requires": { 708 | "babel-plugin-syntax-export-extensions": "6.13.0", 709 | "babel-runtime": "6.26.0" 710 | } 711 | }, 712 | "babel-plugin-transform-flow-strip-types": { 713 | "version": "6.22.0", 714 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-flow-strip-types/-/babel-plugin-transform-flow-strip-types-6.22.0.tgz", 715 | "integrity": "sha1-hMtnKTXUNxT9wyvOhFaNh0Qc988=", 716 | "requires": { 717 | "babel-plugin-syntax-flow": "6.18.0", 718 | "babel-runtime": "6.26.0" 719 | } 720 | }, 721 | "babel-plugin-transform-function-bind": { 722 | "version": "6.22.0", 723 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz", 724 | "integrity": "sha1-xvuOlqwpajELjPjqQBRiQH3fapc=", 725 | "requires": { 726 | "babel-plugin-syntax-function-bind": "6.13.0", 727 | "babel-runtime": "6.26.0" 728 | } 729 | }, 730 | "babel-plugin-transform-object-rest-spread": { 731 | "version": "6.26.0", 732 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz", 733 | "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=", 734 | "requires": { 735 | "babel-plugin-syntax-object-rest-spread": "6.13.0", 736 | "babel-runtime": "6.26.0" 737 | } 738 | }, 739 | "babel-plugin-transform-react-display-name": { 740 | "version": "6.25.0", 741 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-display-name/-/babel-plugin-transform-react-display-name-6.25.0.tgz", 742 | "integrity": "sha1-Z+K/Hx6ck6sI25Z5LgU5K/LMKNE=", 743 | "requires": { 744 | "babel-runtime": "6.26.0" 745 | } 746 | }, 747 | "babel-plugin-transform-react-jsx": { 748 | "version": "6.24.1", 749 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz", 750 | "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=", 751 | "requires": { 752 | "babel-helper-builder-react-jsx": "6.26.0", 753 | "babel-plugin-syntax-jsx": "6.18.0", 754 | "babel-runtime": "6.26.0" 755 | } 756 | }, 757 | "babel-plugin-transform-react-jsx-self": { 758 | "version": "6.22.0", 759 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-self/-/babel-plugin-transform-react-jsx-self-6.22.0.tgz", 760 | "integrity": "sha1-322AqdomEqEh5t3XVYvL7PBuY24=", 761 | "requires": { 762 | "babel-plugin-syntax-jsx": "6.18.0", 763 | "babel-runtime": "6.26.0" 764 | } 765 | }, 766 | "babel-plugin-transform-react-jsx-source": { 767 | "version": "6.22.0", 768 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx-source/-/babel-plugin-transform-react-jsx-source-6.22.0.tgz", 769 | "integrity": "sha1-ZqwSFT9c0tF7PBkmj0vwGX9E7NY=", 770 | "requires": { 771 | "babel-plugin-syntax-jsx": "6.18.0", 772 | "babel-runtime": "6.26.0" 773 | } 774 | }, 775 | "babel-plugin-transform-regenerator": { 776 | "version": "6.26.0", 777 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", 778 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", 779 | "requires": { 780 | "regenerator-transform": "0.10.1" 781 | } 782 | }, 783 | "babel-plugin-transform-strict-mode": { 784 | "version": "6.24.1", 785 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 786 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 787 | "requires": { 788 | "babel-runtime": "6.26.0", 789 | "babel-types": "6.26.0" 790 | } 791 | }, 792 | "babel-preset-es2015": { 793 | "version": "6.24.1", 794 | "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", 795 | "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", 796 | "requires": { 797 | "babel-plugin-check-es2015-constants": "6.22.0", 798 | "babel-plugin-transform-es2015-arrow-functions": "6.22.0", 799 | "babel-plugin-transform-es2015-block-scoped-functions": "6.22.0", 800 | "babel-plugin-transform-es2015-block-scoping": "6.26.0", 801 | "babel-plugin-transform-es2015-classes": "6.24.1", 802 | "babel-plugin-transform-es2015-computed-properties": "6.24.1", 803 | "babel-plugin-transform-es2015-destructuring": "6.23.0", 804 | "babel-plugin-transform-es2015-duplicate-keys": "6.24.1", 805 | "babel-plugin-transform-es2015-for-of": "6.23.0", 806 | "babel-plugin-transform-es2015-function-name": "6.24.1", 807 | "babel-plugin-transform-es2015-literals": "6.22.0", 808 | "babel-plugin-transform-es2015-modules-amd": "6.24.1", 809 | "babel-plugin-transform-es2015-modules-commonjs": "6.26.2", 810 | "babel-plugin-transform-es2015-modules-systemjs": "6.24.1", 811 | "babel-plugin-transform-es2015-modules-umd": "6.24.1", 812 | "babel-plugin-transform-es2015-object-super": "6.24.1", 813 | "babel-plugin-transform-es2015-parameters": "6.24.1", 814 | "babel-plugin-transform-es2015-shorthand-properties": "6.24.1", 815 | "babel-plugin-transform-es2015-spread": "6.22.0", 816 | "babel-plugin-transform-es2015-sticky-regex": "6.24.1", 817 | "babel-plugin-transform-es2015-template-literals": "6.22.0", 818 | "babel-plugin-transform-es2015-typeof-symbol": "6.23.0", 819 | "babel-plugin-transform-es2015-unicode-regex": "6.24.1", 820 | "babel-plugin-transform-regenerator": "6.26.0" 821 | } 822 | }, 823 | "babel-preset-flow": { 824 | "version": "6.23.0", 825 | "resolved": "https://registry.npmjs.org/babel-preset-flow/-/babel-preset-flow-6.23.0.tgz", 826 | "integrity": "sha1-5xIYiHCFrpoktb5Baa/7WZgWxJ0=", 827 | "requires": { 828 | "babel-plugin-transform-flow-strip-types": "6.22.0" 829 | } 830 | }, 831 | "babel-preset-react": { 832 | "version": "6.24.1", 833 | "resolved": "https://registry.npmjs.org/babel-preset-react/-/babel-preset-react-6.24.1.tgz", 834 | "integrity": "sha1-umnfrqRfw+xjm2pOzqbhdwLJE4A=", 835 | "requires": { 836 | "babel-plugin-syntax-jsx": "6.18.0", 837 | "babel-plugin-transform-react-display-name": "6.25.0", 838 | "babel-plugin-transform-react-jsx": "6.24.1", 839 | "babel-plugin-transform-react-jsx-self": "6.22.0", 840 | "babel-plugin-transform-react-jsx-source": "6.22.0", 841 | "babel-preset-flow": "6.23.0" 842 | } 843 | }, 844 | "babel-preset-stage-0": { 845 | "version": "6.24.1", 846 | "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz", 847 | "integrity": "sha1-VkLRUEL5E4TX5a+LyIsduVsDnmo=", 848 | "requires": { 849 | "babel-plugin-transform-do-expressions": "6.22.0", 850 | "babel-plugin-transform-function-bind": "6.22.0", 851 | "babel-preset-stage-1": "6.24.1" 852 | } 853 | }, 854 | "babel-preset-stage-1": { 855 | "version": "6.24.1", 856 | "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz", 857 | "integrity": "sha1-dpLNfc1oSZB+auSgqFWJz7niv7A=", 858 | "requires": { 859 | "babel-plugin-transform-class-constructor-call": "6.24.1", 860 | "babel-plugin-transform-export-extensions": "6.22.0", 861 | "babel-preset-stage-2": "6.24.1" 862 | } 863 | }, 864 | "babel-preset-stage-2": { 865 | "version": "6.24.1", 866 | "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz", 867 | "integrity": "sha1-2eKWD7PXEYfw5k7sYrwHdnIZvcE=", 868 | "requires": { 869 | "babel-plugin-syntax-dynamic-import": "6.18.0", 870 | "babel-plugin-transform-class-properties": "6.24.1", 871 | "babel-plugin-transform-decorators": "6.24.1", 872 | "babel-preset-stage-3": "6.24.1" 873 | } 874 | }, 875 | "babel-preset-stage-3": { 876 | "version": "6.24.1", 877 | "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz", 878 | "integrity": "sha1-g2raCp56f6N8sTj7kyb4eTSkg5U=", 879 | "requires": { 880 | "babel-plugin-syntax-trailing-function-commas": "6.22.0", 881 | "babel-plugin-transform-async-generator-functions": "6.24.1", 882 | "babel-plugin-transform-async-to-generator": "6.24.1", 883 | "babel-plugin-transform-exponentiation-operator": "6.24.1", 884 | "babel-plugin-transform-object-rest-spread": "6.26.0" 885 | } 886 | }, 887 | "babel-register": { 888 | "version": "6.26.0", 889 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 890 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 891 | "requires": { 892 | "babel-core": "6.26.3", 893 | "babel-runtime": "6.26.0", 894 | "core-js": "2.6.9", 895 | "home-or-tmp": "2.0.0", 896 | "lodash": "4.17.14", 897 | "mkdirp": "0.5.1", 898 | "source-map-support": "0.4.18" 899 | } 900 | }, 901 | "babel-runtime": { 902 | "version": "6.26.0", 903 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 904 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 905 | "requires": { 906 | "core-js": "2.6.9", 907 | "regenerator-runtime": "0.11.1" 908 | } 909 | }, 910 | "babel-template": { 911 | "version": "6.26.0", 912 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 913 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 914 | "requires": { 915 | "babel-runtime": "6.26.0", 916 | "babel-traverse": "6.26.0", 917 | "babel-types": "6.26.0", 918 | "babylon": "6.18.0", 919 | "lodash": "4.17.14" 920 | } 921 | }, 922 | "babel-traverse": { 923 | "version": "6.26.0", 924 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 925 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 926 | "requires": { 927 | "babel-code-frame": "6.26.0", 928 | "babel-messages": "6.23.0", 929 | "babel-runtime": "6.26.0", 930 | "babel-types": "6.26.0", 931 | "babylon": "6.18.0", 932 | "debug": "2.6.9", 933 | "globals": "9.18.0", 934 | "invariant": "2.2.4", 935 | "lodash": "4.17.14" 936 | } 937 | }, 938 | "babel-types": { 939 | "version": "6.26.0", 940 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 941 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 942 | "requires": { 943 | "babel-runtime": "6.26.0", 944 | "esutils": "2.0.2", 945 | "lodash": "4.17.14", 946 | "to-fast-properties": "1.0.3" 947 | } 948 | }, 949 | "babylon": { 950 | "version": "6.18.0", 951 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 952 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" 953 | }, 954 | "balanced-match": { 955 | "version": "1.0.0", 956 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 957 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 958 | }, 959 | "base62": { 960 | "version": "1.2.8", 961 | "resolved": "https://registry.npmjs.org/base62/-/base62-1.2.8.tgz", 962 | "integrity": "sha512-V6YHUbjLxN1ymqNLb1DPHoU1CpfdL7d2YTIp5W3U4hhoG4hhxNmsFDs66M9EXxBiSEke5Bt5dwdfMwwZF70iLA==" 963 | }, 964 | "bcrypt-pbkdf": { 965 | "version": "1.0.2", 966 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", 967 | "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", 968 | "requires": { 969 | "tweetnacl": "0.14.5" 970 | } 971 | }, 972 | "body-parser": { 973 | "version": "1.19.0", 974 | "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", 975 | "integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", 976 | "requires": { 977 | "bytes": "3.1.0", 978 | "content-type": "1.0.4", 979 | "debug": "2.6.9", 980 | "depd": "1.1.2", 981 | "http-errors": "1.7.2", 982 | "iconv-lite": "0.4.24", 983 | "on-finished": "2.3.0", 984 | "qs": "6.7.0", 985 | "raw-body": "2.4.0", 986 | "type-is": "1.6.18" 987 | } 988 | }, 989 | "brace-expansion": { 990 | "version": "1.1.11", 991 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 992 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 993 | "requires": { 994 | "balanced-match": "1.0.0", 995 | "concat-map": "0.0.1" 996 | } 997 | }, 998 | "browser-process-hrtime": { 999 | "version": "0.1.3", 1000 | "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-0.1.3.tgz", 1001 | "integrity": "sha512-bRFnI4NnjO6cnyLmOV/7PVoDEMJChlcfN0z4s1YMBY989/SvlfMI1lgCnkFUs53e9gQF+w7qu7XdllSTiSl8Aw==" 1002 | }, 1003 | "bytes": { 1004 | "version": "3.1.0", 1005 | "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", 1006 | "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" 1007 | }, 1008 | "caseless": { 1009 | "version": "0.12.0", 1010 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", 1011 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" 1012 | }, 1013 | "chalk": { 1014 | "version": "1.1.3", 1015 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 1016 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 1017 | "requires": { 1018 | "ansi-styles": "2.2.1", 1019 | "escape-string-regexp": "1.0.5", 1020 | "has-ansi": "2.0.0", 1021 | "strip-ansi": "3.0.1", 1022 | "supports-color": "2.0.0" 1023 | } 1024 | }, 1025 | "combined-stream": { 1026 | "version": "1.0.8", 1027 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 1028 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 1029 | "requires": { 1030 | "delayed-stream": "1.0.0" 1031 | } 1032 | }, 1033 | "commander": { 1034 | "version": "2.20.0", 1035 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.0.tgz", 1036 | "integrity": "sha512-7j2y+40w61zy6YC2iRNpUe/NwhNyoXrYpHMrSunaMG64nRnaf96zO/KMQR4OyN/UnE5KLyEBnKHd4aG3rskjpQ==" 1037 | }, 1038 | "commoner": { 1039 | "version": "0.10.8", 1040 | "resolved": "https://registry.npmjs.org/commoner/-/commoner-0.10.8.tgz", 1041 | "integrity": "sha1-NPw2cs0kOT6LtH5wyqApOBH08sU=", 1042 | "requires": { 1043 | "commander": "2.20.0", 1044 | "detective": "4.7.1", 1045 | "glob": "5.0.15", 1046 | "graceful-fs": "4.2.0", 1047 | "iconv-lite": "0.4.24", 1048 | "mkdirp": "0.5.1", 1049 | "private": "0.1.8", 1050 | "q": "1.5.1", 1051 | "recast": "0.11.23" 1052 | }, 1053 | "dependencies": { 1054 | "esprima": { 1055 | "version": "3.1.3", 1056 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", 1057 | "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" 1058 | }, 1059 | "glob": { 1060 | "version": "5.0.15", 1061 | "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", 1062 | "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", 1063 | "requires": { 1064 | "inflight": "1.0.6", 1065 | "inherits": "2.0.3", 1066 | "minimatch": "3.0.4", 1067 | "once": "1.4.0", 1068 | "path-is-absolute": "1.0.1" 1069 | } 1070 | }, 1071 | "recast": { 1072 | "version": "0.11.23", 1073 | "resolved": "https://registry.npmjs.org/recast/-/recast-0.11.23.tgz", 1074 | "integrity": "sha1-RR/TAEqx5N+bTktmN2sqIZEkYtM=", 1075 | "requires": { 1076 | "ast-types": "0.9.6", 1077 | "esprima": "3.1.3", 1078 | "private": "0.1.8", 1079 | "source-map": "0.5.7" 1080 | } 1081 | } 1082 | } 1083 | }, 1084 | "concat-map": { 1085 | "version": "0.0.1", 1086 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1087 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 1088 | }, 1089 | "content-disposition": { 1090 | "version": "0.5.3", 1091 | "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", 1092 | "integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", 1093 | "requires": { 1094 | "safe-buffer": "5.1.2" 1095 | } 1096 | }, 1097 | "content-type": { 1098 | "version": "1.0.4", 1099 | "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", 1100 | "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" 1101 | }, 1102 | "convert-source-map": { 1103 | "version": "1.6.0", 1104 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.6.0.tgz", 1105 | "integrity": "sha512-eFu7XigvxdZ1ETfbgPBohgyQ/Z++C0eEhTor0qRwBw9unw+L0/6V8wkSuGgzdThkiS5lSpdptOQPD8Ak40a+7A==", 1106 | "requires": { 1107 | "safe-buffer": "5.1.2" 1108 | } 1109 | }, 1110 | "cookie": { 1111 | "version": "0.4.0", 1112 | "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", 1113 | "integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" 1114 | }, 1115 | "cookie-signature": { 1116 | "version": "1.0.6", 1117 | "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", 1118 | "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" 1119 | }, 1120 | "core-js": { 1121 | "version": "2.6.9", 1122 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.9.tgz", 1123 | "integrity": "sha512-HOpZf6eXmnl7la+cUdMnLvUxKNqLUzJvgIziQ0DiF3JwSImNphIqdGqzj6hIKyX04MmV0poclQ7+wjWvxQyR2A==" 1124 | }, 1125 | "core-util-is": { 1126 | "version": "1.0.2", 1127 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1128 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 1129 | }, 1130 | "cssom": { 1131 | "version": "0.3.8", 1132 | "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", 1133 | "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==" 1134 | }, 1135 | "cssstyle": { 1136 | "version": "1.4.0", 1137 | "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-1.4.0.tgz", 1138 | "integrity": "sha512-GBrLZYZ4X4x6/QEoBnIrqb8B/f5l4+8me2dkom/j1Gtbxy0kBv6OGzKuAsGM75bkGwGAFkt56Iwg28S3XTZgSA==", 1139 | "requires": { 1140 | "cssom": "0.3.8" 1141 | } 1142 | }, 1143 | "dashdash": { 1144 | "version": "1.14.1", 1145 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", 1146 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", 1147 | "requires": { 1148 | "assert-plus": "1.0.0" 1149 | } 1150 | }, 1151 | "data-urls": { 1152 | "version": "1.1.0", 1153 | "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-1.1.0.tgz", 1154 | "integrity": "sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ==", 1155 | "requires": { 1156 | "abab": "2.0.0", 1157 | "whatwg-mimetype": "2.3.0", 1158 | "whatwg-url": "7.0.0" 1159 | } 1160 | }, 1161 | "debug": { 1162 | "version": "2.6.9", 1163 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1164 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1165 | "requires": { 1166 | "ms": "2.0.0" 1167 | } 1168 | }, 1169 | "deep-is": { 1170 | "version": "0.1.3", 1171 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1172 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" 1173 | }, 1174 | "defined": { 1175 | "version": "1.0.0", 1176 | "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", 1177 | "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=" 1178 | }, 1179 | "delayed-stream": { 1180 | "version": "1.0.0", 1181 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 1182 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 1183 | }, 1184 | "depd": { 1185 | "version": "1.1.2", 1186 | "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", 1187 | "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" 1188 | }, 1189 | "destroy": { 1190 | "version": "1.0.4", 1191 | "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", 1192 | "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" 1193 | }, 1194 | "detect-indent": { 1195 | "version": "4.0.0", 1196 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 1197 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 1198 | "requires": { 1199 | "repeating": "2.0.1" 1200 | } 1201 | }, 1202 | "detective": { 1203 | "version": "4.7.1", 1204 | "resolved": "https://registry.npmjs.org/detective/-/detective-4.7.1.tgz", 1205 | "integrity": "sha512-H6PmeeUcZloWtdt4DAkFyzFL94arpHr3NOwwmVILFiy+9Qd4JTxxXrzfyGk/lmct2qVGBwTSwSXagqu2BxmWig==", 1206 | "requires": { 1207 | "acorn": "5.7.3", 1208 | "defined": "1.0.0" 1209 | } 1210 | }, 1211 | "domexception": { 1212 | "version": "1.0.1", 1213 | "resolved": "https://registry.npmjs.org/domexception/-/domexception-1.0.1.tgz", 1214 | "integrity": "sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug==", 1215 | "requires": { 1216 | "webidl-conversions": "4.0.2" 1217 | } 1218 | }, 1219 | "ecc-jsbn": { 1220 | "version": "0.1.2", 1221 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", 1222 | "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", 1223 | "requires": { 1224 | "jsbn": "0.1.1", 1225 | "safer-buffer": "2.1.2" 1226 | } 1227 | }, 1228 | "ee-first": { 1229 | "version": "1.1.1", 1230 | "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", 1231 | "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" 1232 | }, 1233 | "encodeurl": { 1234 | "version": "1.0.2", 1235 | "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", 1236 | "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" 1237 | }, 1238 | "envify": { 1239 | "version": "3.4.1", 1240 | "resolved": "https://registry.npmjs.org/envify/-/envify-3.4.1.tgz", 1241 | "integrity": "sha1-1xIjKejfFoi6dxsSUBkXyc5cvOg=", 1242 | "requires": { 1243 | "jstransform": "11.0.3", 1244 | "through": "2.3.8" 1245 | } 1246 | }, 1247 | "escape-html": { 1248 | "version": "1.0.3", 1249 | "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", 1250 | "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" 1251 | }, 1252 | "escape-string-regexp": { 1253 | "version": "1.0.5", 1254 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1255 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 1256 | }, 1257 | "escodegen": { 1258 | "version": "1.11.1", 1259 | "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.1.tgz", 1260 | "integrity": "sha512-JwiqFD9KdGVVpeuRa68yU3zZnBEOcPs0nKW7wZzXky8Z7tffdYUHbe11bPCV5jYlK6DVdKLWLm0f5I/QlL0Kmw==", 1261 | "requires": { 1262 | "esprima": "3.1.3", 1263 | "estraverse": "4.2.0", 1264 | "esutils": "2.0.2", 1265 | "optionator": "0.8.2", 1266 | "source-map": "0.6.1" 1267 | }, 1268 | "dependencies": { 1269 | "source-map": { 1270 | "version": "0.6.1", 1271 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1272 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 1273 | "optional": true 1274 | } 1275 | } 1276 | }, 1277 | "eslint-plugin-react": { 1278 | "version": "3.16.1", 1279 | "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-3.16.1.tgz", 1280 | "integrity": "sha1-Ji2Wt318SkKvgJpzwOUnpYYSKTw=" 1281 | }, 1282 | "esprima": { 1283 | "version": "3.1.3", 1284 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-3.1.3.tgz", 1285 | "integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM=" 1286 | }, 1287 | "estraverse": { 1288 | "version": "4.2.0", 1289 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", 1290 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" 1291 | }, 1292 | "esutils": { 1293 | "version": "2.0.2", 1294 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", 1295 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" 1296 | }, 1297 | "etag": { 1298 | "version": "1.8.1", 1299 | "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", 1300 | "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" 1301 | }, 1302 | "express": { 1303 | "version": "4.17.1", 1304 | "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", 1305 | "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", 1306 | "requires": { 1307 | "accepts": "1.3.7", 1308 | "array-flatten": "1.1.1", 1309 | "body-parser": "1.19.0", 1310 | "content-disposition": "0.5.3", 1311 | "content-type": "1.0.4", 1312 | "cookie": "0.4.0", 1313 | "cookie-signature": "1.0.6", 1314 | "debug": "2.6.9", 1315 | "depd": "1.1.2", 1316 | "encodeurl": "1.0.2", 1317 | "escape-html": "1.0.3", 1318 | "etag": "1.8.1", 1319 | "finalhandler": "1.1.2", 1320 | "fresh": "0.5.2", 1321 | "merge-descriptors": "1.0.1", 1322 | "methods": "1.1.2", 1323 | "on-finished": "2.3.0", 1324 | "parseurl": "1.3.3", 1325 | "path-to-regexp": "0.1.7", 1326 | "proxy-addr": "2.0.5", 1327 | "qs": "6.7.0", 1328 | "range-parser": "1.2.1", 1329 | "safe-buffer": "5.1.2", 1330 | "send": "0.17.1", 1331 | "serve-static": "1.14.1", 1332 | "setprototypeof": "1.1.1", 1333 | "statuses": "1.5.0", 1334 | "type-is": "1.6.18", 1335 | "utils-merge": "1.0.1", 1336 | "vary": "1.1.2" 1337 | } 1338 | }, 1339 | "extend": { 1340 | "version": "3.0.2", 1341 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", 1342 | "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" 1343 | }, 1344 | "extsprintf": { 1345 | "version": "1.3.0", 1346 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", 1347 | "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" 1348 | }, 1349 | "fast-deep-equal": { 1350 | "version": "2.0.1", 1351 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", 1352 | "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=" 1353 | }, 1354 | "fast-json-stable-stringify": { 1355 | "version": "2.0.0", 1356 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz", 1357 | "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" 1358 | }, 1359 | "fast-levenshtein": { 1360 | "version": "2.0.6", 1361 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1362 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" 1363 | }, 1364 | "fbjs": { 1365 | "version": "0.6.1", 1366 | "resolved": "https://registry.npmjs.org/fbjs/-/fbjs-0.6.1.tgz", 1367 | "integrity": "sha1-lja3cF9bqWhNRLcveDISVK/IYPc=", 1368 | "requires": { 1369 | "core-js": "1.2.7", 1370 | "loose-envify": "1.4.0", 1371 | "promise": "7.3.1", 1372 | "ua-parser-js": "0.7.20", 1373 | "whatwg-fetch": "0.9.0" 1374 | }, 1375 | "dependencies": { 1376 | "core-js": { 1377 | "version": "1.2.7", 1378 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-1.2.7.tgz", 1379 | "integrity": "sha1-ZSKUwUZR2yj6k70tX/KYOk8IxjY=" 1380 | } 1381 | } 1382 | }, 1383 | "finalhandler": { 1384 | "version": "1.1.2", 1385 | "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", 1386 | "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", 1387 | "requires": { 1388 | "debug": "2.6.9", 1389 | "encodeurl": "1.0.2", 1390 | "escape-html": "1.0.3", 1391 | "on-finished": "2.3.0", 1392 | "parseurl": "1.3.3", 1393 | "statuses": "1.5.0", 1394 | "unpipe": "1.0.0" 1395 | } 1396 | }, 1397 | "forever-agent": { 1398 | "version": "0.6.1", 1399 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", 1400 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" 1401 | }, 1402 | "form-data": { 1403 | "version": "2.3.3", 1404 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", 1405 | "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", 1406 | "requires": { 1407 | "asynckit": "0.4.0", 1408 | "combined-stream": "1.0.8", 1409 | "mime-types": "2.1.24" 1410 | } 1411 | }, 1412 | "forwarded": { 1413 | "version": "0.1.2", 1414 | "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", 1415 | "integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" 1416 | }, 1417 | "fresh": { 1418 | "version": "0.5.2", 1419 | "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", 1420 | "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" 1421 | }, 1422 | "getpass": { 1423 | "version": "0.1.7", 1424 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", 1425 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", 1426 | "requires": { 1427 | "assert-plus": "1.0.0" 1428 | } 1429 | }, 1430 | "globals": { 1431 | "version": "9.18.0", 1432 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 1433 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" 1434 | }, 1435 | "graceful-fs": { 1436 | "version": "4.2.0", 1437 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.0.tgz", 1438 | "integrity": "sha512-jpSvDPV4Cq/bgtpndIWbI5hmYxhQGHPC4d4cqBPb4DLniCfhJokdXhwhaDuLBGLQdvvRum/UiX6ECVIPvDXqdg==" 1439 | }, 1440 | "har-schema": { 1441 | "version": "2.0.0", 1442 | "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", 1443 | "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" 1444 | }, 1445 | "har-validator": { 1446 | "version": "5.1.3", 1447 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", 1448 | "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", 1449 | "requires": { 1450 | "ajv": "6.10.2", 1451 | "har-schema": "2.0.0" 1452 | } 1453 | }, 1454 | "has-ansi": { 1455 | "version": "2.0.0", 1456 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 1457 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 1458 | "requires": { 1459 | "ansi-regex": "2.1.1" 1460 | } 1461 | }, 1462 | "home-or-tmp": { 1463 | "version": "2.0.0", 1464 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 1465 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 1466 | "requires": { 1467 | "os-homedir": "1.0.2", 1468 | "os-tmpdir": "1.0.2" 1469 | } 1470 | }, 1471 | "html-encoding-sniffer": { 1472 | "version": "1.0.2", 1473 | "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", 1474 | "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", 1475 | "requires": { 1476 | "whatwg-encoding": "1.0.5" 1477 | } 1478 | }, 1479 | "http-errors": { 1480 | "version": "1.7.2", 1481 | "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", 1482 | "integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", 1483 | "requires": { 1484 | "depd": "1.1.2", 1485 | "inherits": "2.0.3", 1486 | "setprototypeof": "1.1.1", 1487 | "statuses": "1.5.0", 1488 | "toidentifier": "1.0.0" 1489 | } 1490 | }, 1491 | "http-signature": { 1492 | "version": "1.2.0", 1493 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", 1494 | "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", 1495 | "requires": { 1496 | "assert-plus": "1.0.0", 1497 | "jsprim": "1.4.1", 1498 | "sshpk": "1.16.1" 1499 | } 1500 | }, 1501 | "iconv-lite": { 1502 | "version": "0.4.24", 1503 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 1504 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 1505 | "requires": { 1506 | "safer-buffer": "2.1.2" 1507 | } 1508 | }, 1509 | "inflight": { 1510 | "version": "1.0.6", 1511 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1512 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1513 | "requires": { 1514 | "once": "1.4.0", 1515 | "wrappy": "1.0.2" 1516 | } 1517 | }, 1518 | "inherits": { 1519 | "version": "2.0.3", 1520 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", 1521 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 1522 | }, 1523 | "invariant": { 1524 | "version": "2.2.4", 1525 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 1526 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 1527 | "requires": { 1528 | "loose-envify": "1.4.0" 1529 | } 1530 | }, 1531 | "ip-regex": { 1532 | "version": "2.1.0", 1533 | "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", 1534 | "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=" 1535 | }, 1536 | "ipaddr.js": { 1537 | "version": "1.9.0", 1538 | "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.0.tgz", 1539 | "integrity": "sha512-M4Sjn6N/+O6/IXSJseKqHoFc+5FdGJ22sXqnjTpdZweHK64MzEPAyQZyEU3R/KRv2GLoa7nNtg/C2Ev6m7z+eA==" 1540 | }, 1541 | "is-finite": { 1542 | "version": "1.0.2", 1543 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", 1544 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", 1545 | "requires": { 1546 | "number-is-nan": "1.0.1" 1547 | } 1548 | }, 1549 | "is-typedarray": { 1550 | "version": "1.0.0", 1551 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 1552 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" 1553 | }, 1554 | "isstream": { 1555 | "version": "0.1.2", 1556 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", 1557 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" 1558 | }, 1559 | "js-tokens": { 1560 | "version": "3.0.2", 1561 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 1562 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=" 1563 | }, 1564 | "jsbn": { 1565 | "version": "0.1.1", 1566 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", 1567 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" 1568 | }, 1569 | "jsdom": { 1570 | "version": "15.1.1", 1571 | "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.1.1.tgz", 1572 | "integrity": "sha512-cQZRBB33arrDAeCrAEWn1U3SvrvC8XysBua9Oqg1yWrsY/gYcusloJC3RZJXuY5eehSCmws8f2YeliCqGSkrtQ==", 1573 | "requires": { 1574 | "abab": "2.0.0", 1575 | "acorn": "6.2.1", 1576 | "acorn-globals": "4.3.2", 1577 | "array-equal": "1.0.0", 1578 | "cssom": "0.3.8", 1579 | "cssstyle": "1.4.0", 1580 | "data-urls": "1.1.0", 1581 | "domexception": "1.0.1", 1582 | "escodegen": "1.11.1", 1583 | "html-encoding-sniffer": "1.0.2", 1584 | "nwsapi": "2.1.4", 1585 | "parse5": "5.1.0", 1586 | "pn": "1.1.0", 1587 | "request": "2.88.0", 1588 | "request-promise-native": "1.0.7", 1589 | "saxes": "3.1.11", 1590 | "symbol-tree": "3.2.4", 1591 | "tough-cookie": "3.0.1", 1592 | "w3c-hr-time": "1.0.1", 1593 | "w3c-xmlserializer": "1.1.2", 1594 | "webidl-conversions": "4.0.2", 1595 | "whatwg-encoding": "1.0.5", 1596 | "whatwg-mimetype": "2.3.0", 1597 | "whatwg-url": "7.0.0", 1598 | "ws": "7.1.1", 1599 | "xml-name-validator": "3.0.0" 1600 | }, 1601 | "dependencies": { 1602 | "acorn": { 1603 | "version": "6.2.1", 1604 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.2.1.tgz", 1605 | "integrity": "sha512-JD0xT5FCRDNyjDda3Lrg/IxFscp9q4tiYtxE1/nOzlKCk7hIRuYjhq1kCNkbPjMRMZuFq20HNQn1I9k8Oj0E+Q==" 1606 | } 1607 | } 1608 | }, 1609 | "jsesc": { 1610 | "version": "1.3.0", 1611 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 1612 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" 1613 | }, 1614 | "json-schema": { 1615 | "version": "0.2.3", 1616 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", 1617 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" 1618 | }, 1619 | "json-schema-traverse": { 1620 | "version": "0.4.1", 1621 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 1622 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" 1623 | }, 1624 | "json-stringify-safe": { 1625 | "version": "5.0.1", 1626 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", 1627 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" 1628 | }, 1629 | "json5": { 1630 | "version": "0.5.1", 1631 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 1632 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" 1633 | }, 1634 | "jsprim": { 1635 | "version": "1.4.1", 1636 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", 1637 | "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", 1638 | "requires": { 1639 | "assert-plus": "1.0.0", 1640 | "extsprintf": "1.3.0", 1641 | "json-schema": "0.2.3", 1642 | "verror": "1.10.0" 1643 | } 1644 | }, 1645 | "jstransform": { 1646 | "version": "11.0.3", 1647 | "resolved": "https://registry.npmjs.org/jstransform/-/jstransform-11.0.3.tgz", 1648 | "integrity": "sha1-CaeJk+CuTU70SH9hVakfYZDLQiM=", 1649 | "requires": { 1650 | "base62": "1.2.8", 1651 | "commoner": "0.10.8", 1652 | "esprima-fb": "15001.1.0-dev-harmony-fb", 1653 | "object-assign": "2.1.1", 1654 | "source-map": "0.4.4" 1655 | }, 1656 | "dependencies": { 1657 | "esprima-fb": { 1658 | "version": "15001.1.0-dev-harmony-fb", 1659 | "resolved": "https://registry.npmjs.org/esprima-fb/-/esprima-fb-15001.1.0-dev-harmony-fb.tgz", 1660 | "integrity": "sha1-MKlHMDxrjV6VW+4rmbHSMyBqaQE=" 1661 | }, 1662 | "object-assign": { 1663 | "version": "2.1.1", 1664 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-2.1.1.tgz", 1665 | "integrity": "sha1-Q8NuXVaf+OSBbE76i+AtJpZ8GKo=" 1666 | }, 1667 | "source-map": { 1668 | "version": "0.4.4", 1669 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", 1670 | "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", 1671 | "requires": { 1672 | "amdefine": "1.0.1" 1673 | } 1674 | } 1675 | } 1676 | }, 1677 | "levn": { 1678 | "version": "0.3.0", 1679 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 1680 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 1681 | "requires": { 1682 | "prelude-ls": "1.1.2", 1683 | "type-check": "0.3.2" 1684 | } 1685 | }, 1686 | "lodash": { 1687 | "version": "4.17.14", 1688 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.14.tgz", 1689 | "integrity": "sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw==" 1690 | }, 1691 | "lodash.sortby": { 1692 | "version": "4.7.0", 1693 | "resolved": "https://registry.npmjs.org/lodash.sortby/-/lodash.sortby-4.7.0.tgz", 1694 | "integrity": "sha1-7dFMgk4sycHgsKG0K7UhBRakJDg=" 1695 | }, 1696 | "loose-envify": { 1697 | "version": "1.4.0", 1698 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 1699 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 1700 | "requires": { 1701 | "js-tokens": "3.0.2" 1702 | } 1703 | }, 1704 | "media-typer": { 1705 | "version": "0.3.0", 1706 | "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", 1707 | "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" 1708 | }, 1709 | "merge-descriptors": { 1710 | "version": "1.0.1", 1711 | "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", 1712 | "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" 1713 | }, 1714 | "methods": { 1715 | "version": "1.1.2", 1716 | "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", 1717 | "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" 1718 | }, 1719 | "mime": { 1720 | "version": "1.6.0", 1721 | "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", 1722 | "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" 1723 | }, 1724 | "mime-db": { 1725 | "version": "1.40.0", 1726 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.40.0.tgz", 1727 | "integrity": "sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==" 1728 | }, 1729 | "mime-types": { 1730 | "version": "2.1.24", 1731 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", 1732 | "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", 1733 | "requires": { 1734 | "mime-db": "1.40.0" 1735 | } 1736 | }, 1737 | "minimatch": { 1738 | "version": "3.0.4", 1739 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 1740 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 1741 | "requires": { 1742 | "brace-expansion": "1.1.11" 1743 | } 1744 | }, 1745 | "minimist": { 1746 | "version": "0.0.8", 1747 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 1748 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=" 1749 | }, 1750 | "mkdirp": { 1751 | "version": "0.5.1", 1752 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 1753 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 1754 | "requires": { 1755 | "minimist": "0.0.8" 1756 | } 1757 | }, 1758 | "ms": { 1759 | "version": "2.0.0", 1760 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 1761 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 1762 | }, 1763 | "negotiator": { 1764 | "version": "0.6.2", 1765 | "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", 1766 | "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" 1767 | }, 1768 | "number-is-nan": { 1769 | "version": "1.0.1", 1770 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 1771 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" 1772 | }, 1773 | "nwsapi": { 1774 | "version": "2.1.4", 1775 | "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz", 1776 | "integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw==" 1777 | }, 1778 | "oauth-sign": { 1779 | "version": "0.9.0", 1780 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", 1781 | "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" 1782 | }, 1783 | "on-finished": { 1784 | "version": "2.3.0", 1785 | "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", 1786 | "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", 1787 | "requires": { 1788 | "ee-first": "1.1.1" 1789 | } 1790 | }, 1791 | "once": { 1792 | "version": "1.4.0", 1793 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1794 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1795 | "requires": { 1796 | "wrappy": "1.0.2" 1797 | } 1798 | }, 1799 | "optionator": { 1800 | "version": "0.8.2", 1801 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", 1802 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", 1803 | "requires": { 1804 | "deep-is": "0.1.3", 1805 | "fast-levenshtein": "2.0.6", 1806 | "levn": "0.3.0", 1807 | "prelude-ls": "1.1.2", 1808 | "type-check": "0.3.2", 1809 | "wordwrap": "1.0.0" 1810 | } 1811 | }, 1812 | "os-homedir": { 1813 | "version": "1.0.2", 1814 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 1815 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" 1816 | }, 1817 | "os-tmpdir": { 1818 | "version": "1.0.2", 1819 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 1820 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" 1821 | }, 1822 | "parse5": { 1823 | "version": "5.1.0", 1824 | "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.0.tgz", 1825 | "integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ==" 1826 | }, 1827 | "parseurl": { 1828 | "version": "1.3.3", 1829 | "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", 1830 | "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==" 1831 | }, 1832 | "path-is-absolute": { 1833 | "version": "1.0.1", 1834 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 1835 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 1836 | }, 1837 | "path-to-regexp": { 1838 | "version": "0.1.7", 1839 | "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", 1840 | "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" 1841 | }, 1842 | "performance-now": { 1843 | "version": "2.1.0", 1844 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", 1845 | "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" 1846 | }, 1847 | "pn": { 1848 | "version": "1.1.0", 1849 | "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", 1850 | "integrity": "sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA==" 1851 | }, 1852 | "prelude-ls": { 1853 | "version": "1.1.2", 1854 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 1855 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" 1856 | }, 1857 | "private": { 1858 | "version": "0.1.8", 1859 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 1860 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==" 1861 | }, 1862 | "promise": { 1863 | "version": "7.3.1", 1864 | "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", 1865 | "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", 1866 | "requires": { 1867 | "asap": "2.0.6" 1868 | } 1869 | }, 1870 | "proxy-addr": { 1871 | "version": "2.0.5", 1872 | "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.5.tgz", 1873 | "integrity": "sha512-t/7RxHXPH6cJtP0pRG6smSr9QJidhB+3kXu0KgXnbGYMgzEnUxRQ4/LDdfOwZEMyIh3/xHb8PX3t+lfL9z+YVQ==", 1874 | "requires": { 1875 | "forwarded": "0.1.2", 1876 | "ipaddr.js": "1.9.0" 1877 | } 1878 | }, 1879 | "psl": { 1880 | "version": "1.3.0", 1881 | "resolved": "https://registry.npmjs.org/psl/-/psl-1.3.0.tgz", 1882 | "integrity": "sha512-avHdspHO+9rQTLbv1RO+MPYeP/SzsCoxofjVnHanETfQhTJrmB0HlDoW+EiN/R+C0BZ+gERab9NY0lPN2TxNag==" 1883 | }, 1884 | "punycode": { 1885 | "version": "2.1.1", 1886 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 1887 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" 1888 | }, 1889 | "q": { 1890 | "version": "1.5.1", 1891 | "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz", 1892 | "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=" 1893 | }, 1894 | "qs": { 1895 | "version": "6.7.0", 1896 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", 1897 | "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" 1898 | }, 1899 | "range-parser": { 1900 | "version": "1.2.1", 1901 | "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", 1902 | "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" 1903 | }, 1904 | "raw-body": { 1905 | "version": "2.4.0", 1906 | "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", 1907 | "integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", 1908 | "requires": { 1909 | "bytes": "3.1.0", 1910 | "http-errors": "1.7.2", 1911 | "iconv-lite": "0.4.24", 1912 | "unpipe": "1.0.0" 1913 | } 1914 | }, 1915 | "react": { 1916 | "version": "0.14.9", 1917 | "resolved": "https://registry.npmjs.org/react/-/react-0.14.9.tgz", 1918 | "integrity": "sha1-kRCmSXxJ1EuhwO3TF67CnC4NkdE=", 1919 | "requires": { 1920 | "envify": "3.4.1", 1921 | "fbjs": "0.6.1" 1922 | } 1923 | }, 1924 | "react-dom": { 1925 | "version": "0.14.9", 1926 | "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-0.14.9.tgz", 1927 | "integrity": "sha1-BQZKPc8PsYgKOyv8nVjFXY2fYpM=" 1928 | }, 1929 | "regenerate": { 1930 | "version": "1.4.0", 1931 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 1932 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==" 1933 | }, 1934 | "regenerator-runtime": { 1935 | "version": "0.11.1", 1936 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", 1937 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==" 1938 | }, 1939 | "regenerator-transform": { 1940 | "version": "0.10.1", 1941 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", 1942 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", 1943 | "requires": { 1944 | "babel-runtime": "6.26.0", 1945 | "babel-types": "6.26.0", 1946 | "private": "0.1.8" 1947 | } 1948 | }, 1949 | "regexpu-core": { 1950 | "version": "2.0.0", 1951 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", 1952 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", 1953 | "requires": { 1954 | "regenerate": "1.4.0", 1955 | "regjsgen": "0.2.0", 1956 | "regjsparser": "0.1.5" 1957 | } 1958 | }, 1959 | "regjsgen": { 1960 | "version": "0.2.0", 1961 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", 1962 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=" 1963 | }, 1964 | "regjsparser": { 1965 | "version": "0.1.5", 1966 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", 1967 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", 1968 | "requires": { 1969 | "jsesc": "0.5.0" 1970 | }, 1971 | "dependencies": { 1972 | "jsesc": { 1973 | "version": "0.5.0", 1974 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 1975 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=" 1976 | } 1977 | } 1978 | }, 1979 | "repeating": { 1980 | "version": "2.0.1", 1981 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 1982 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 1983 | "requires": { 1984 | "is-finite": "1.0.2" 1985 | } 1986 | }, 1987 | "request": { 1988 | "version": "2.88.0", 1989 | "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", 1990 | "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", 1991 | "requires": { 1992 | "aws-sign2": "0.7.0", 1993 | "aws4": "1.8.0", 1994 | "caseless": "0.12.0", 1995 | "combined-stream": "1.0.8", 1996 | "extend": "3.0.2", 1997 | "forever-agent": "0.6.1", 1998 | "form-data": "2.3.3", 1999 | "har-validator": "5.1.3", 2000 | "http-signature": "1.2.0", 2001 | "is-typedarray": "1.0.0", 2002 | "isstream": "0.1.2", 2003 | "json-stringify-safe": "5.0.1", 2004 | "mime-types": "2.1.24", 2005 | "oauth-sign": "0.9.0", 2006 | "performance-now": "2.1.0", 2007 | "qs": "6.5.2", 2008 | "safe-buffer": "5.1.2", 2009 | "tough-cookie": "2.4.3", 2010 | "tunnel-agent": "0.6.0", 2011 | "uuid": "3.3.2" 2012 | }, 2013 | "dependencies": { 2014 | "punycode": { 2015 | "version": "1.4.1", 2016 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz", 2017 | "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=" 2018 | }, 2019 | "qs": { 2020 | "version": "6.5.2", 2021 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", 2022 | "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" 2023 | }, 2024 | "tough-cookie": { 2025 | "version": "2.4.3", 2026 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", 2027 | "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", 2028 | "requires": { 2029 | "psl": "1.3.0", 2030 | "punycode": "1.4.1" 2031 | } 2032 | } 2033 | } 2034 | }, 2035 | "request-promise-core": { 2036 | "version": "1.1.2", 2037 | "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz", 2038 | "integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==", 2039 | "requires": { 2040 | "lodash": "4.17.14" 2041 | } 2042 | }, 2043 | "request-promise-native": { 2044 | "version": "1.0.7", 2045 | "resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz", 2046 | "integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==", 2047 | "requires": { 2048 | "request-promise-core": "1.1.2", 2049 | "stealthy-require": "1.1.1", 2050 | "tough-cookie": "2.5.0" 2051 | }, 2052 | "dependencies": { 2053 | "tough-cookie": { 2054 | "version": "2.5.0", 2055 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", 2056 | "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", 2057 | "requires": { 2058 | "psl": "1.3.0", 2059 | "punycode": "2.1.1" 2060 | } 2061 | } 2062 | } 2063 | }, 2064 | "safe-buffer": { 2065 | "version": "5.1.2", 2066 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 2067 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" 2068 | }, 2069 | "safer-buffer": { 2070 | "version": "2.1.2", 2071 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 2072 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 2073 | }, 2074 | "saxes": { 2075 | "version": "3.1.11", 2076 | "resolved": "https://registry.npmjs.org/saxes/-/saxes-3.1.11.tgz", 2077 | "integrity": "sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g==", 2078 | "requires": { 2079 | "xmlchars": "2.1.1" 2080 | } 2081 | }, 2082 | "send": { 2083 | "version": "0.17.1", 2084 | "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", 2085 | "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", 2086 | "requires": { 2087 | "debug": "2.6.9", 2088 | "depd": "1.1.2", 2089 | "destroy": "1.0.4", 2090 | "encodeurl": "1.0.2", 2091 | "escape-html": "1.0.3", 2092 | "etag": "1.8.1", 2093 | "fresh": "0.5.2", 2094 | "http-errors": "1.7.2", 2095 | "mime": "1.6.0", 2096 | "ms": "2.1.1", 2097 | "on-finished": "2.3.0", 2098 | "range-parser": "1.2.1", 2099 | "statuses": "1.5.0" 2100 | }, 2101 | "dependencies": { 2102 | "ms": { 2103 | "version": "2.1.1", 2104 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", 2105 | "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" 2106 | } 2107 | } 2108 | }, 2109 | "serve-static": { 2110 | "version": "1.14.1", 2111 | "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", 2112 | "integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", 2113 | "requires": { 2114 | "encodeurl": "1.0.2", 2115 | "escape-html": "1.0.3", 2116 | "parseurl": "1.3.3", 2117 | "send": "0.17.1" 2118 | } 2119 | }, 2120 | "setprototypeof": { 2121 | "version": "1.1.1", 2122 | "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", 2123 | "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" 2124 | }, 2125 | "slash": { 2126 | "version": "1.0.0", 2127 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 2128 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" 2129 | }, 2130 | "source-map": { 2131 | "version": "0.5.7", 2132 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 2133 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=" 2134 | }, 2135 | "source-map-support": { 2136 | "version": "0.4.18", 2137 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", 2138 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", 2139 | "requires": { 2140 | "source-map": "0.5.7" 2141 | } 2142 | }, 2143 | "sshpk": { 2144 | "version": "1.16.1", 2145 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", 2146 | "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", 2147 | "requires": { 2148 | "asn1": "0.2.4", 2149 | "assert-plus": "1.0.0", 2150 | "bcrypt-pbkdf": "1.0.2", 2151 | "dashdash": "1.14.1", 2152 | "ecc-jsbn": "0.1.2", 2153 | "getpass": "0.1.7", 2154 | "jsbn": "0.1.1", 2155 | "safer-buffer": "2.1.2", 2156 | "tweetnacl": "0.14.5" 2157 | } 2158 | }, 2159 | "statuses": { 2160 | "version": "1.5.0", 2161 | "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", 2162 | "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" 2163 | }, 2164 | "stealthy-require": { 2165 | "version": "1.1.1", 2166 | "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", 2167 | "integrity": "sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks=" 2168 | }, 2169 | "strip-ansi": { 2170 | "version": "3.0.1", 2171 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 2172 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 2173 | "requires": { 2174 | "ansi-regex": "2.1.1" 2175 | } 2176 | }, 2177 | "supports-color": { 2178 | "version": "2.0.0", 2179 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 2180 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" 2181 | }, 2182 | "symbol-tree": { 2183 | "version": "3.2.4", 2184 | "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", 2185 | "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==" 2186 | }, 2187 | "through": { 2188 | "version": "2.3.8", 2189 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", 2190 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 2191 | }, 2192 | "to-fast-properties": { 2193 | "version": "1.0.3", 2194 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 2195 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" 2196 | }, 2197 | "toidentifier": { 2198 | "version": "1.0.0", 2199 | "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", 2200 | "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" 2201 | }, 2202 | "tough-cookie": { 2203 | "version": "3.0.1", 2204 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", 2205 | "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", 2206 | "requires": { 2207 | "ip-regex": "2.1.0", 2208 | "psl": "1.3.0", 2209 | "punycode": "2.1.1" 2210 | } 2211 | }, 2212 | "tr46": { 2213 | "version": "1.0.1", 2214 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-1.0.1.tgz", 2215 | "integrity": "sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk=", 2216 | "requires": { 2217 | "punycode": "2.1.1" 2218 | } 2219 | }, 2220 | "trim-right": { 2221 | "version": "1.0.1", 2222 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 2223 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" 2224 | }, 2225 | "tunnel-agent": { 2226 | "version": "0.6.0", 2227 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 2228 | "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", 2229 | "requires": { 2230 | "safe-buffer": "5.1.2" 2231 | } 2232 | }, 2233 | "tweetnacl": { 2234 | "version": "0.14.5", 2235 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", 2236 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" 2237 | }, 2238 | "type-check": { 2239 | "version": "0.3.2", 2240 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 2241 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 2242 | "requires": { 2243 | "prelude-ls": "1.1.2" 2244 | } 2245 | }, 2246 | "type-is": { 2247 | "version": "1.6.18", 2248 | "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", 2249 | "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", 2250 | "requires": { 2251 | "media-typer": "0.3.0", 2252 | "mime-types": "2.1.24" 2253 | } 2254 | }, 2255 | "ua-parser-js": { 2256 | "version": "0.7.20", 2257 | "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.20.tgz", 2258 | "integrity": "sha512-8OaIKfzL5cpx8eCMAhhvTlft8GYF8b2eQr6JkCyVdrgjcytyOmPCXrqXFcUnhonRpLlh5yxEZVohm6mzaowUOw==" 2259 | }, 2260 | "unpipe": { 2261 | "version": "1.0.0", 2262 | "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", 2263 | "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" 2264 | }, 2265 | "uri-js": { 2266 | "version": "4.2.2", 2267 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", 2268 | "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", 2269 | "requires": { 2270 | "punycode": "2.1.1" 2271 | } 2272 | }, 2273 | "utils-merge": { 2274 | "version": "1.0.1", 2275 | "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", 2276 | "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" 2277 | }, 2278 | "uuid": { 2279 | "version": "3.3.2", 2280 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", 2281 | "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" 2282 | }, 2283 | "vary": { 2284 | "version": "1.1.2", 2285 | "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", 2286 | "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=" 2287 | }, 2288 | "verror": { 2289 | "version": "1.10.0", 2290 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", 2291 | "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", 2292 | "requires": { 2293 | "assert-plus": "1.0.0", 2294 | "core-util-is": "1.0.2", 2295 | "extsprintf": "1.3.0" 2296 | } 2297 | }, 2298 | "w3c-hr-time": { 2299 | "version": "1.0.1", 2300 | "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.1.tgz", 2301 | "integrity": "sha1-gqwr/2PZUOqeMYmlimViX+3xkEU=", 2302 | "requires": { 2303 | "browser-process-hrtime": "0.1.3" 2304 | } 2305 | }, 2306 | "w3c-xmlserializer": { 2307 | "version": "1.1.2", 2308 | "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz", 2309 | "integrity": "sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg==", 2310 | "requires": { 2311 | "domexception": "1.0.1", 2312 | "webidl-conversions": "4.0.2", 2313 | "xml-name-validator": "3.0.0" 2314 | } 2315 | }, 2316 | "webidl-conversions": { 2317 | "version": "4.0.2", 2318 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", 2319 | "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==" 2320 | }, 2321 | "whatwg-encoding": { 2322 | "version": "1.0.5", 2323 | "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", 2324 | "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", 2325 | "requires": { 2326 | "iconv-lite": "0.4.24" 2327 | } 2328 | }, 2329 | "whatwg-fetch": { 2330 | "version": "0.9.0", 2331 | "resolved": "https://registry.npmjs.org/whatwg-fetch/-/whatwg-fetch-0.9.0.tgz", 2332 | "integrity": "sha1-DjaExsuZlbQ+/J3wPkw2XZX9nMA=" 2333 | }, 2334 | "whatwg-mimetype": { 2335 | "version": "2.3.0", 2336 | "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", 2337 | "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==" 2338 | }, 2339 | "whatwg-url": { 2340 | "version": "7.0.0", 2341 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-7.0.0.tgz", 2342 | "integrity": "sha512-37GeVSIJ3kn1JgKyjiYNmSLP1yzbpb29jdmwBSgkD9h40/hyrR/OifpVUndji3tmwGgD8qpw7iQu3RSbCrBpsQ==", 2343 | "requires": { 2344 | "lodash.sortby": "4.7.0", 2345 | "tr46": "1.0.1", 2346 | "webidl-conversions": "4.0.2" 2347 | } 2348 | }, 2349 | "wordwrap": { 2350 | "version": "1.0.0", 2351 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 2352 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" 2353 | }, 2354 | "wrappy": { 2355 | "version": "1.0.2", 2356 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2357 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 2358 | }, 2359 | "ws": { 2360 | "version": "7.1.1", 2361 | "resolved": "https://registry.npmjs.org/ws/-/ws-7.1.1.tgz", 2362 | "integrity": "sha512-o41D/WmDeca0BqYhsr3nJzQyg9NF5X8l/UdnFNux9cS3lwB+swm8qGWX5rn+aD6xfBU3rGmtHij7g7x6LxFU3A==", 2363 | "requires": { 2364 | "async-limiter": "1.0.0" 2365 | } 2366 | }, 2367 | "xml-name-validator": { 2368 | "version": "3.0.0", 2369 | "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", 2370 | "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==" 2371 | }, 2372 | "xmlchars": { 2373 | "version": "2.1.1", 2374 | "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.1.1.tgz", 2375 | "integrity": "sha512-7hew1RPJ1iIuje/Y01bGD/mXokXxegAgVS+e+E0wSi2ILHQkYAH1+JXARwTjZSM4Z4Z+c73aKspEcqj+zPPL/w==" 2376 | }, 2377 | "xmldom": { 2378 | "version": "0.1.27", 2379 | "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.27.tgz", 2380 | "integrity": "sha1-1QH5ezvbQDr4757MIFcxh6rawOk=" 2381 | } 2382 | } 2383 | } 2384 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "svg-node-react", 3 | "version": "1.0.0", 4 | "description": "Create SVG using XML", 5 | "main": "server.js", 6 | "scripts": { 7 | "start": "node server.js" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "babel-preset-es2015": "^6.24.1", 13 | "babel-preset-react": "^6.24.1", 14 | "babel-preset-stage-0": "^6.24.1", 15 | "babel-register": "^6.26.0", 16 | "body-parser": "^1.19.0", 17 | "eslint-plugin-react": "^3.16.1", 18 | "express": "^4.17.1", 19 | "react": "^0.14.0", 20 | "react-dom": "^0.14.0", 21 | "xmldom": "^0.1.27" 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /server.js: -------------------------------------------------------------------------------- 1 | require("babel-register"); 2 | const express = require('express'); 3 | const app = express(); 4 | const routes = require('./app/routes'); 5 | const bodyParser = require('body-parser') 6 | 7 | app.use(bodyParser.urlencoded({ extended: false })) 8 | app.use(bodyParser.json()) 9 | app.use(function(req, res, next) { 10 | res.header("Access-Control-Allow-Origin", "*"); //here configure your origin pointing to your app 11 | res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept"); 12 | next(); 13 | }); 14 | 15 | app.use('/api', routes); 16 | const server = app.listen(process.env.PORT || 3000, function () { 17 | const host = server.address().address; 18 | const port = server.address().port; 19 | console.log('XML parser and SVG, JSON generator app listening at http://%s:%s', host, port); 20 | }); 21 | --------------------------------------------------------------------------------