├── .babelrc ├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── package-lock.json ├── package.json ├── src └── index.js └── tests └── remove-data-test-id.spec.js /.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [["@babel/preset-env", { "targets": { "node": 6 } }]], 3 | "plugins": ["@babel/plugin-transform-react-jsx"] 4 | } 5 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | lib 3 | .DS_Store 4 | .idea 5 | .vscode 6 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | tests 2 | src 3 | .gitignore 4 | node_modules 5 | .idea 6 | .babelrc 7 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License 2 | 3 | Copyright (c) 2016-2018 Enigmatic Ltd 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 13 | all 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 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ## babel-plugin-jsx-remove-data-test-id 2 | 3 | Remove `data-test-id` attributes from your production builds. 4 | 5 | ### Motivation 6 | 7 | It's not usually a good idea to couple our test code with DOM element id's or CSS classnames. 8 | 9 | - Finding by an `.o-some-class` or `#some-id` selector couples our test to the CSS; making changes can be expensive from a maintainance point of view, whether they are coming from the CSS or the tests 10 | - Finding elements by DOM tag, such as `` or `

` can be equally as difficult to maintain; these things move around so if your looking for `.first()` you might get a nasty surprise 11 | 12 | We wanted to decouple our tests from these concerns, in a way that would support both unit 13 | level tests and end to end test. Bring in: 14 | 15 | `data-test-id="some-test-id"` 16 | 17 | This package give you the ability to strip these test id's from production code. 18 | 19 | ### Install 20 | 21 | ```bash 22 | npm install babel-plugin-jsx-remove-data-test-id --save-dev 23 | ``` 24 | 25 | Add this to you babel config plugins 26 | 27 | ```javascript 28 | plugins: ["babel-plugin-jsx-remove-data-test-id"]; 29 | ``` 30 | 31 | In some configurations the above will strip out the test attribute before the tests are run, causing them to fail. If this is the case for your project, you'll need to limit the plugin to non-test environments. 32 | 33 | ```javascript 34 | { 35 | env: { 36 | production: { 37 | plugins: ["babel-plugin-jsx-remove-data-test-id"] 38 | }, 39 | test: { 40 | plugins: ["other-plugins"] 41 | } 42 | } 43 | } 44 | ``` 45 | 46 | ### How to use 47 | 48 | Add `data-test-id` to your react components 49 | 50 | ```javascript 51 | return ( 52 |

53 |

{someText}

54 |
55 | ); 56 | ``` 57 | 58 | ### Peer dependency warnings 59 | 60 | This plugin specifies Babel 7 as its peer dependency - while it also works with Babel 6 you might want to install `@babel/core@6.0.0-bridge.1` to get rid of unmet peer dependency warnings. 61 | 62 | ### Define custom attribute name(s) 63 | 64 | By default attributes with name `data-test-id` or `data-testid` (as used in [react-testing-library](https://testing-library.com/react)) will be stripped. You can also define custom attribute names via plugin options in your babel config: 65 | 66 | ```javascript 67 | plugins: [ 68 | [ 69 | "babel-plugin-jsx-remove-data-test-id", 70 | { 71 | attributes: "selenium-id" 72 | } 73 | ] 74 | ]; 75 | ``` 76 | 77 | Or if you need to strip off multiple attributes, you can define an attributes array as follows: 78 | 79 | ```javascript 80 | plugins: [ 81 | [ 82 | "babel-plugin-jsx-remove-data-test-id", 83 | { 84 | attributes: ["data-test-id", "selenium-id", "another-attr-to-be-stripped"] 85 | } 86 | ] 87 | ]; 88 | ``` 89 | 90 | Make sure the plugins are part of your babel config, and build away - that's it. `data-test-id`'s (respectively your custom named attributes) will be stripped. 91 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "babel-plugin-jsx-remove-data-test-id", 3 | "version": "2.1.3", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@babel/cli": { 8 | "version": "7.7.0", 9 | "resolved": "https://registry.npmjs.org/@babel/cli/-/cli-7.7.0.tgz", 10 | "integrity": "sha512-jECEqAq6Ngf3pOhLSg7od9WKyrIacyh1oNNYtRXNn+ummSHCTXBamGywOAtiae34Vk7zKuQNnLvo2BKTMCoV4A==", 11 | "dev": true, 12 | "requires": { 13 | "chokidar": "^2.1.8", 14 | "commander": "^2.8.1", 15 | "convert-source-map": "^1.1.0", 16 | "fs-readdir-recursive": "^1.1.0", 17 | "glob": "^7.0.0", 18 | "lodash": "^4.17.13", 19 | "make-dir": "^2.1.0", 20 | "slash": "^2.0.0", 21 | "source-map": "^0.5.0" 22 | } 23 | }, 24 | "@babel/code-frame": { 25 | "version": "7.5.5", 26 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.5.5.tgz", 27 | "integrity": "sha512-27d4lZoomVyo51VegxI20xZPuSHusqbQag/ztrBC7wegWoQ1nLREPVSKSW8byhTlzTKyNE4ifaTA6lCp7JjpFw==", 28 | "dev": true, 29 | "requires": { 30 | "@babel/highlight": "^7.0.0" 31 | } 32 | }, 33 | "@babel/core": { 34 | "version": "7.7.2", 35 | "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.7.2.tgz", 36 | "integrity": "sha512-eeD7VEZKfhK1KUXGiyPFettgF3m513f8FoBSWiQ1xTvl1RAopLs42Wp9+Ze911I6H0N9lNqJMDgoZT7gHsipeQ==", 37 | "dev": true, 38 | "requires": { 39 | "@babel/code-frame": "^7.5.5", 40 | "@babel/generator": "^7.7.2", 41 | "@babel/helpers": "^7.7.0", 42 | "@babel/parser": "^7.7.2", 43 | "@babel/template": "^7.7.0", 44 | "@babel/traverse": "^7.7.2", 45 | "@babel/types": "^7.7.2", 46 | "convert-source-map": "^1.7.0", 47 | "debug": "^4.1.0", 48 | "json5": "^2.1.0", 49 | "lodash": "^4.17.13", 50 | "resolve": "^1.3.2", 51 | "semver": "^5.4.1", 52 | "source-map": "^0.5.0" 53 | }, 54 | "dependencies": { 55 | "debug": { 56 | "version": "4.1.1", 57 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", 58 | "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", 59 | "dev": true, 60 | "requires": { 61 | "ms": "^2.1.1" 62 | } 63 | }, 64 | "ms": { 65 | "version": "2.1.2", 66 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 67 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 68 | "dev": true 69 | } 70 | } 71 | }, 72 | "@babel/generator": { 73 | "version": "7.7.2", 74 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.7.2.tgz", 75 | "integrity": "sha512-WthSArvAjYLz4TcbKOi88me+KmDJdKSlfwwN8CnUYn9jBkzhq0ZEPuBfkAWIvjJ3AdEV1Cf/+eSQTnp3IDJKlQ==", 76 | "dev": true, 77 | "requires": { 78 | "@babel/types": "^7.7.2", 79 | "jsesc": "^2.5.1", 80 | "lodash": "^4.17.13", 81 | "source-map": "^0.5.0" 82 | } 83 | }, 84 | "@babel/helper-annotate-as-pure": { 85 | "version": "7.7.0", 86 | "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.7.0.tgz", 87 | "integrity": "sha512-k50CQxMlYTYo+GGyUGFwpxKVtxVJi9yh61sXZji3zYHccK9RYliZGSTOgci85T+r+0VFN2nWbGM04PIqwfrpMg==", 88 | "dev": true, 89 | "requires": { 90 | "@babel/types": "^7.7.0" 91 | } 92 | }, 93 | "@babel/helper-builder-binary-assignment-operator-visitor": { 94 | "version": "7.7.0", 95 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.7.0.tgz", 96 | "integrity": "sha512-Cd8r8zs4RKDwMG/92lpZcnn5WPQ3LAMQbCw42oqUh4s7vsSN5ANUZjMel0OOnxDLq57hoDDbai+ryygYfCTOsw==", 97 | "dev": true, 98 | "requires": { 99 | "@babel/helper-explode-assignable-expression": "^7.7.0", 100 | "@babel/types": "^7.7.0" 101 | } 102 | }, 103 | "@babel/helper-builder-react-jsx": { 104 | "version": "7.7.0", 105 | "resolved": "https://registry.npmjs.org/@babel/helper-builder-react-jsx/-/helper-builder-react-jsx-7.7.0.tgz", 106 | "integrity": "sha512-LSln3cexwInTMYYoFeVLKnYPPMfWNJ8PubTBs3hkh7wCu9iBaqq1OOyW+xGmEdLxT1nhsl+9SJ+h2oUDYz0l2A==", 107 | "dev": true, 108 | "requires": { 109 | "@babel/types": "^7.7.0", 110 | "esutils": "^2.0.0" 111 | } 112 | }, 113 | "@babel/helper-call-delegate": { 114 | "version": "7.7.0", 115 | "resolved": "https://registry.npmjs.org/@babel/helper-call-delegate/-/helper-call-delegate-7.7.0.tgz", 116 | "integrity": "sha512-Su0Mdq7uSSWGZayGMMQ+z6lnL00mMCnGAbO/R0ZO9odIdB/WNU/VfQKqMQU0fdIsxQYbRjDM4BixIa93SQIpvw==", 117 | "dev": true, 118 | "requires": { 119 | "@babel/helper-hoist-variables": "^7.7.0", 120 | "@babel/traverse": "^7.7.0", 121 | "@babel/types": "^7.7.0" 122 | } 123 | }, 124 | "@babel/helper-create-regexp-features-plugin": { 125 | "version": "7.7.2", 126 | "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.7.2.tgz", 127 | "integrity": "sha512-pAil/ZixjTlrzNpjx+l/C/wJk002Wo7XbbZ8oujH/AoJ3Juv0iN/UTcPUHXKMFLqsfS0Hy6Aow8M31brUYBlQQ==", 128 | "dev": true, 129 | "requires": { 130 | "@babel/helper-regex": "^7.4.4", 131 | "regexpu-core": "^4.6.0" 132 | } 133 | }, 134 | "@babel/helper-define-map": { 135 | "version": "7.7.0", 136 | "resolved": "https://registry.npmjs.org/@babel/helper-define-map/-/helper-define-map-7.7.0.tgz", 137 | "integrity": "sha512-kPKWPb0dMpZi+ov1hJiwse9dWweZsz3V9rP4KdytnX1E7z3cTNmFGglwklzFPuqIcHLIY3bgKSs4vkwXXdflQA==", 138 | "dev": true, 139 | "requires": { 140 | "@babel/helper-function-name": "^7.7.0", 141 | "@babel/types": "^7.7.0", 142 | "lodash": "^4.17.13" 143 | } 144 | }, 145 | "@babel/helper-environment-visitor": { 146 | "version": "7.22.20", 147 | "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz", 148 | "integrity": "sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA==", 149 | "dev": true 150 | }, 151 | "@babel/helper-explode-assignable-expression": { 152 | "version": "7.7.0", 153 | "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.7.0.tgz", 154 | "integrity": "sha512-CDs26w2shdD1urNUAji2RJXyBFCaR+iBEGnFz3l7maizMkQe3saVw9WtjG1tz8CwbjvlFnaSLVhgnu1SWaherg==", 155 | "dev": true, 156 | "requires": { 157 | "@babel/traverse": "^7.7.0", 158 | "@babel/types": "^7.7.0" 159 | } 160 | }, 161 | "@babel/helper-function-name": { 162 | "version": "7.7.0", 163 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.7.0.tgz", 164 | "integrity": "sha512-tDsJgMUAP00Ugv8O2aGEua5I2apkaQO7lBGUq1ocwN3G23JE5Dcq0uh3GvFTChPa4b40AWiAsLvCZOA2rdnQ7Q==", 165 | "dev": true, 166 | "requires": { 167 | "@babel/helper-get-function-arity": "^7.7.0", 168 | "@babel/template": "^7.7.0", 169 | "@babel/types": "^7.7.0" 170 | } 171 | }, 172 | "@babel/helper-get-function-arity": { 173 | "version": "7.7.0", 174 | "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.7.0.tgz", 175 | "integrity": "sha512-tLdojOTz4vWcEnHWHCuPN5P85JLZWbm5Fx5ZsMEMPhF3Uoe3O7awrbM2nQ04bDOUToH/2tH/ezKEOR8zEYzqyw==", 176 | "dev": true, 177 | "requires": { 178 | "@babel/types": "^7.7.0" 179 | } 180 | }, 181 | "@babel/helper-hoist-variables": { 182 | "version": "7.7.0", 183 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.7.0.tgz", 184 | "integrity": "sha512-LUe/92NqsDAkJjjCEWkNe+/PcpnisvnqdlRe19FahVapa4jndeuJ+FBiTX1rcAKWKcJGE+C3Q3tuEuxkSmCEiQ==", 185 | "dev": true, 186 | "requires": { 187 | "@babel/types": "^7.7.0" 188 | } 189 | }, 190 | "@babel/helper-member-expression-to-functions": { 191 | "version": "7.7.0", 192 | "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.7.0.tgz", 193 | "integrity": "sha512-QaCZLO2RtBcmvO/ekOLp8p7R5X2JriKRizeDpm5ChATAFWrrYDcDxPuCIBXKyBjY+i1vYSdcUTMIb8psfxHDPA==", 194 | "dev": true, 195 | "requires": { 196 | "@babel/types": "^7.7.0" 197 | } 198 | }, 199 | "@babel/helper-module-imports": { 200 | "version": "7.7.0", 201 | "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.7.0.tgz", 202 | "integrity": "sha512-Dv3hLKIC1jyfTkClvyEkYP2OlkzNvWs5+Q8WgPbxM5LMeorons7iPP91JM+DU7tRbhqA1ZeooPaMFvQrn23RHw==", 203 | "dev": true, 204 | "requires": { 205 | "@babel/types": "^7.7.0" 206 | } 207 | }, 208 | "@babel/helper-module-transforms": { 209 | "version": "7.7.0", 210 | "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.7.0.tgz", 211 | "integrity": "sha512-rXEefBuheUYQyX4WjV19tuknrJFwyKw0HgzRwbkyTbB+Dshlq7eqkWbyjzToLrMZk/5wKVKdWFluiAsVkHXvuQ==", 212 | "dev": true, 213 | "requires": { 214 | "@babel/helper-module-imports": "^7.7.0", 215 | "@babel/helper-simple-access": "^7.7.0", 216 | "@babel/helper-split-export-declaration": "^7.7.0", 217 | "@babel/template": "^7.7.0", 218 | "@babel/types": "^7.7.0", 219 | "lodash": "^4.17.13" 220 | } 221 | }, 222 | "@babel/helper-optimise-call-expression": { 223 | "version": "7.7.0", 224 | "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.7.0.tgz", 225 | "integrity": "sha512-48TeqmbazjNU/65niiiJIJRc5JozB8acui1OS7bSd6PgxfuovWsvjfWSzlgx+gPFdVveNzUdpdIg5l56Pl5jqg==", 226 | "dev": true, 227 | "requires": { 228 | "@babel/types": "^7.7.0" 229 | } 230 | }, 231 | "@babel/helper-plugin-utils": { 232 | "version": "7.0.0", 233 | "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.0.0.tgz", 234 | "integrity": "sha512-CYAOUCARwExnEixLdB6sDm2dIJ/YgEAKDM1MOeMeZu9Ld/bDgVo8aiWrXwcY7OBh+1Ea2uUcVRcxKk0GJvW7QA==", 235 | "dev": true 236 | }, 237 | "@babel/helper-regex": { 238 | "version": "7.5.5", 239 | "resolved": "https://registry.npmjs.org/@babel/helper-regex/-/helper-regex-7.5.5.tgz", 240 | "integrity": "sha512-CkCYQLkfkiugbRDO8eZn6lRuR8kzZoGXCg3149iTk5se7g6qykSpy3+hELSwquhu+TgHn8nkLiBwHvNX8Hofcw==", 241 | "dev": true, 242 | "requires": { 243 | "lodash": "^4.17.13" 244 | } 245 | }, 246 | "@babel/helper-remap-async-to-generator": { 247 | "version": "7.7.0", 248 | "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.7.0.tgz", 249 | "integrity": "sha512-pHx7RN8X0UNHPB/fnuDnRXVZ316ZigkO8y8D835JlZ2SSdFKb6yH9MIYRU4fy/KPe5sPHDFOPvf8QLdbAGGiyw==", 250 | "dev": true, 251 | "requires": { 252 | "@babel/helper-annotate-as-pure": "^7.7.0", 253 | "@babel/helper-wrap-function": "^7.7.0", 254 | "@babel/template": "^7.7.0", 255 | "@babel/traverse": "^7.7.0", 256 | "@babel/types": "^7.7.0" 257 | } 258 | }, 259 | "@babel/helper-replace-supers": { 260 | "version": "7.7.0", 261 | "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.7.0.tgz", 262 | "integrity": "sha512-5ALYEul5V8xNdxEeWvRsBzLMxQksT7MaStpxjJf9KsnLxpAKBtfw5NeMKZJSYDa0lKdOcy0g+JT/f5mPSulUgg==", 263 | "dev": true, 264 | "requires": { 265 | "@babel/helper-member-expression-to-functions": "^7.7.0", 266 | "@babel/helper-optimise-call-expression": "^7.7.0", 267 | "@babel/traverse": "^7.7.0", 268 | "@babel/types": "^7.7.0" 269 | } 270 | }, 271 | "@babel/helper-simple-access": { 272 | "version": "7.7.0", 273 | "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.7.0.tgz", 274 | "integrity": "sha512-AJ7IZD7Eem3zZRuj5JtzFAptBw7pMlS3y8Qv09vaBWoFsle0d1kAn5Wq6Q9MyBXITPOKnxwkZKoAm4bopmv26g==", 275 | "dev": true, 276 | "requires": { 277 | "@babel/template": "^7.7.0", 278 | "@babel/types": "^7.7.0" 279 | } 280 | }, 281 | "@babel/helper-split-export-declaration": { 282 | "version": "7.7.0", 283 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.7.0.tgz", 284 | "integrity": "sha512-HgYSI8rH08neWlAH3CcdkFg9qX9YsZysZI5GD8LjhQib/mM0jGOZOVkoUiiV2Hu978fRtjtsGsW6w0pKHUWtqA==", 285 | "dev": true, 286 | "requires": { 287 | "@babel/types": "^7.7.0" 288 | } 289 | }, 290 | "@babel/helper-string-parser": { 291 | "version": "7.22.5", 292 | "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz", 293 | "integrity": "sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw==", 294 | "dev": true 295 | }, 296 | "@babel/helper-validator-identifier": { 297 | "version": "7.22.20", 298 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", 299 | "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", 300 | "dev": true 301 | }, 302 | "@babel/helper-wrap-function": { 303 | "version": "7.7.0", 304 | "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.7.0.tgz", 305 | "integrity": "sha512-sd4QjeMgQqzshSjecZjOp8uKfUtnpmCyQhKQrVJBBgeHAB/0FPi33h3AbVlVp07qQtMD4QgYSzaMI7VwncNK/w==", 306 | "dev": true, 307 | "requires": { 308 | "@babel/helper-function-name": "^7.7.0", 309 | "@babel/template": "^7.7.0", 310 | "@babel/traverse": "^7.7.0", 311 | "@babel/types": "^7.7.0" 312 | } 313 | }, 314 | "@babel/helpers": { 315 | "version": "7.7.0", 316 | "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.7.0.tgz", 317 | "integrity": "sha512-VnNwL4YOhbejHb7x/b5F39Zdg5vIQpUUNzJwx0ww1EcVRt41bbGRZWhAURrfY32T5zTT3qwNOQFWpn+P0i0a2g==", 318 | "dev": true, 319 | "requires": { 320 | "@babel/template": "^7.7.0", 321 | "@babel/traverse": "^7.7.0", 322 | "@babel/types": "^7.7.0" 323 | } 324 | }, 325 | "@babel/highlight": { 326 | "version": "7.5.0", 327 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.5.0.tgz", 328 | "integrity": "sha512-7dV4eu9gBxoM0dAnj/BCFDW9LFU0zvTrkq0ugM7pnHEgguOEeOz1so2ZghEdzviYzQEED0r4EAgpsBChKy1TRQ==", 329 | "dev": true, 330 | "requires": { 331 | "chalk": "^2.0.0", 332 | "esutils": "^2.0.2", 333 | "js-tokens": "^4.0.0" 334 | } 335 | }, 336 | "@babel/parser": { 337 | "version": "7.7.3", 338 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.7.3.tgz", 339 | "integrity": "sha512-bqv+iCo9i+uLVbI0ILzKkvMorqxouI+GbV13ivcARXn9NNEabi2IEz912IgNpT/60BNXac5dgcfjb94NjsF33A==", 340 | "dev": true 341 | }, 342 | "@babel/plugin-proposal-async-generator-functions": { 343 | "version": "7.7.0", 344 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.7.0.tgz", 345 | "integrity": "sha512-ot/EZVvf3mXtZq0Pd0+tSOfGWMizqmOohXmNZg6LNFjHOV+wOPv7BvVYh8oPR8LhpIP3ye8nNooKL50YRWxpYA==", 346 | "dev": true, 347 | "requires": { 348 | "@babel/helper-plugin-utils": "^7.0.0", 349 | "@babel/helper-remap-async-to-generator": "^7.7.0", 350 | "@babel/plugin-syntax-async-generators": "^7.2.0" 351 | } 352 | }, 353 | "@babel/plugin-proposal-dynamic-import": { 354 | "version": "7.7.0", 355 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.7.0.tgz", 356 | "integrity": "sha512-7poL3Xi+QFPC7sGAzEIbXUyYzGJwbc2+gSD0AkiC5k52kH2cqHdqxm5hNFfLW3cRSTcx9bN0Fl7/6zWcLLnKAQ==", 357 | "dev": true, 358 | "requires": { 359 | "@babel/helper-plugin-utils": "^7.0.0", 360 | "@babel/plugin-syntax-dynamic-import": "^7.2.0" 361 | } 362 | }, 363 | "@babel/plugin-proposal-json-strings": { 364 | "version": "7.2.0", 365 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.2.0.tgz", 366 | "integrity": "sha512-MAFV1CA/YVmYwZG0fBQyXhmj0BHCB5egZHCKWIFVv/XCxAeVGIHfos3SwDck4LvCllENIAg7xMKOG5kH0dzyUg==", 367 | "dev": true, 368 | "requires": { 369 | "@babel/helper-plugin-utils": "^7.0.0", 370 | "@babel/plugin-syntax-json-strings": "^7.2.0" 371 | } 372 | }, 373 | "@babel/plugin-proposal-object-rest-spread": { 374 | "version": "7.6.2", 375 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.6.2.tgz", 376 | "integrity": "sha512-LDBXlmADCsMZV1Y9OQwMc0MyGZ8Ta/zlD9N67BfQT8uYwkRswiu2hU6nJKrjrt/58aH/vqfQlR/9yId/7A2gWw==", 377 | "dev": true, 378 | "requires": { 379 | "@babel/helper-plugin-utils": "^7.0.0", 380 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0" 381 | } 382 | }, 383 | "@babel/plugin-proposal-optional-catch-binding": { 384 | "version": "7.2.0", 385 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.2.0.tgz", 386 | "integrity": "sha512-mgYj3jCcxug6KUcX4OBoOJz3CMrwRfQELPQ5560F70YQUBZB7uac9fqaWamKR1iWUzGiK2t0ygzjTScZnVz75g==", 387 | "dev": true, 388 | "requires": { 389 | "@babel/helper-plugin-utils": "^7.0.0", 390 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0" 391 | } 392 | }, 393 | "@babel/plugin-proposal-unicode-property-regex": { 394 | "version": "7.7.0", 395 | "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.7.0.tgz", 396 | "integrity": "sha512-mk34H+hp7kRBWJOOAR0ZMGCydgKMD4iN9TpDRp3IIcbunltxEY89XSimc6WbtSLCDrwcdy/EEw7h5CFCzxTchw==", 397 | "dev": true, 398 | "requires": { 399 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 400 | "@babel/helper-plugin-utils": "^7.0.0" 401 | } 402 | }, 403 | "@babel/plugin-syntax-async-generators": { 404 | "version": "7.2.0", 405 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.2.0.tgz", 406 | "integrity": "sha512-1ZrIRBv2t0GSlcwVoQ6VgSLpLgiN/FVQUzt9znxo7v2Ov4jJrs8RY8tv0wvDmFN3qIdMKWrmMMW6yZ0G19MfGg==", 407 | "dev": true, 408 | "requires": { 409 | "@babel/helper-plugin-utils": "^7.0.0" 410 | } 411 | }, 412 | "@babel/plugin-syntax-dynamic-import": { 413 | "version": "7.2.0", 414 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.2.0.tgz", 415 | "integrity": "sha512-mVxuJ0YroI/h/tbFTPGZR8cv6ai+STMKNBq0f8hFxsxWjl94qqhsb+wXbpNMDPU3cfR1TIsVFzU3nXyZMqyK4w==", 416 | "dev": true, 417 | "requires": { 418 | "@babel/helper-plugin-utils": "^7.0.0" 419 | } 420 | }, 421 | "@babel/plugin-syntax-json-strings": { 422 | "version": "7.2.0", 423 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.2.0.tgz", 424 | "integrity": "sha512-5UGYnMSLRE1dqqZwug+1LISpA403HzlSfsg6P9VXU6TBjcSHeNlw4DxDx7LgpF+iKZoOG/+uzqoRHTdcUpiZNg==", 425 | "dev": true, 426 | "requires": { 427 | "@babel/helper-plugin-utils": "^7.0.0" 428 | } 429 | }, 430 | "@babel/plugin-syntax-jsx": { 431 | "version": "7.2.0", 432 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.2.0.tgz", 433 | "integrity": "sha512-VyN4QANJkRW6lDBmENzRszvZf3/4AXaj9YR7GwrWeeN9tEBPuXbmDYVU9bYBN0D70zCWVwUy0HWq2553VCb6Hw==", 434 | "dev": true, 435 | "requires": { 436 | "@babel/helper-plugin-utils": "^7.0.0" 437 | } 438 | }, 439 | "@babel/plugin-syntax-object-rest-spread": { 440 | "version": "7.2.0", 441 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.2.0.tgz", 442 | "integrity": "sha512-t0JKGgqk2We+9may3t0xDdmneaXmyxq0xieYcKHxIsrJO64n1OiMWNUtc5gQK1PA0NpdCRrtZp4z+IUaKugrSA==", 443 | "dev": true, 444 | "requires": { 445 | "@babel/helper-plugin-utils": "^7.0.0" 446 | } 447 | }, 448 | "@babel/plugin-syntax-optional-catch-binding": { 449 | "version": "7.2.0", 450 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.2.0.tgz", 451 | "integrity": "sha512-bDe4xKNhb0LI7IvZHiA13kff0KEfaGX/Hv4lMA9+7TEc63hMNvfKo6ZFpXhKuEp+II/q35Gc4NoMeDZyaUbj9w==", 452 | "dev": true, 453 | "requires": { 454 | "@babel/helper-plugin-utils": "^7.0.0" 455 | } 456 | }, 457 | "@babel/plugin-syntax-top-level-await": { 458 | "version": "7.7.0", 459 | "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.7.0.tgz", 460 | "integrity": "sha512-hi8FUNiFIY1fnUI2n1ViB1DR0R4QeK4iHcTlW6aJkrPoTdb8Rf1EMQ6GT3f67DDkYyWgew9DFoOZ6gOoEsdzTA==", 461 | "dev": true, 462 | "requires": { 463 | "@babel/helper-plugin-utils": "^7.0.0" 464 | } 465 | }, 466 | "@babel/plugin-transform-arrow-functions": { 467 | "version": "7.2.0", 468 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.2.0.tgz", 469 | "integrity": "sha512-ER77Cax1+8/8jCB9fo4Ud161OZzWN5qawi4GusDuRLcDbDG+bIGYY20zb2dfAFdTRGzrfq2xZPvF0R64EHnimg==", 470 | "dev": true, 471 | "requires": { 472 | "@babel/helper-plugin-utils": "^7.0.0" 473 | } 474 | }, 475 | "@babel/plugin-transform-async-to-generator": { 476 | "version": "7.7.0", 477 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.7.0.tgz", 478 | "integrity": "sha512-vLI2EFLVvRBL3d8roAMqtVY0Bm9C1QzLkdS57hiKrjUBSqsQYrBsMCeOg/0KK7B0eK9V71J5mWcha9yyoI2tZw==", 479 | "dev": true, 480 | "requires": { 481 | "@babel/helper-module-imports": "^7.7.0", 482 | "@babel/helper-plugin-utils": "^7.0.0", 483 | "@babel/helper-remap-async-to-generator": "^7.7.0" 484 | } 485 | }, 486 | "@babel/plugin-transform-block-scoped-functions": { 487 | "version": "7.2.0", 488 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.2.0.tgz", 489 | "integrity": "sha512-ntQPR6q1/NKuphly49+QiQiTN0O63uOwjdD6dhIjSWBI5xlrbUFh720TIpzBhpnrLfv2tNH/BXvLIab1+BAI0w==", 490 | "dev": true, 491 | "requires": { 492 | "@babel/helper-plugin-utils": "^7.0.0" 493 | } 494 | }, 495 | "@babel/plugin-transform-block-scoping": { 496 | "version": "7.6.3", 497 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.6.3.tgz", 498 | "integrity": "sha512-7hvrg75dubcO3ZI2rjYTzUrEuh1E9IyDEhhB6qfcooxhDA33xx2MasuLVgdxzcP6R/lipAC6n9ub9maNW6RKdw==", 499 | "dev": true, 500 | "requires": { 501 | "@babel/helper-plugin-utils": "^7.0.0", 502 | "lodash": "^4.17.13" 503 | } 504 | }, 505 | "@babel/plugin-transform-classes": { 506 | "version": "7.7.0", 507 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.7.0.tgz", 508 | "integrity": "sha512-/b3cKIZwGeUesZheU9jNYcwrEA7f/Bo4IdPmvp7oHgvks2majB5BoT5byAql44fiNQYOPzhk2w8DbgfuafkMoA==", 509 | "dev": true, 510 | "requires": { 511 | "@babel/helper-annotate-as-pure": "^7.7.0", 512 | "@babel/helper-define-map": "^7.7.0", 513 | "@babel/helper-function-name": "^7.7.0", 514 | "@babel/helper-optimise-call-expression": "^7.7.0", 515 | "@babel/helper-plugin-utils": "^7.0.0", 516 | "@babel/helper-replace-supers": "^7.7.0", 517 | "@babel/helper-split-export-declaration": "^7.7.0", 518 | "globals": "^11.1.0" 519 | } 520 | }, 521 | "@babel/plugin-transform-computed-properties": { 522 | "version": "7.2.0", 523 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.2.0.tgz", 524 | "integrity": "sha512-kP/drqTxY6Xt3NNpKiMomfgkNn4o7+vKxK2DDKcBG9sHj51vHqMBGy8wbDS/J4lMxnqs153/T3+DmCEAkC5cpA==", 525 | "dev": true, 526 | "requires": { 527 | "@babel/helper-plugin-utils": "^7.0.0" 528 | } 529 | }, 530 | "@babel/plugin-transform-destructuring": { 531 | "version": "7.6.0", 532 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.6.0.tgz", 533 | "integrity": "sha512-2bGIS5P1v4+sWTCnKNDZDxbGvEqi0ijeqM/YqHtVGrvG2y0ySgnEEhXErvE9dA0bnIzY9bIzdFK0jFA46ASIIQ==", 534 | "dev": true, 535 | "requires": { 536 | "@babel/helper-plugin-utils": "^7.0.0" 537 | } 538 | }, 539 | "@babel/plugin-transform-dotall-regex": { 540 | "version": "7.7.0", 541 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.7.0.tgz", 542 | "integrity": "sha512-3QQlF7hSBnSuM1hQ0pS3pmAbWLax/uGNCbPBND9y+oJ4Y776jsyujG2k0Sn2Aj2a0QwVOiOFL5QVPA7spjvzSA==", 543 | "dev": true, 544 | "requires": { 545 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 546 | "@babel/helper-plugin-utils": "^7.0.0" 547 | } 548 | }, 549 | "@babel/plugin-transform-duplicate-keys": { 550 | "version": "7.5.0", 551 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.5.0.tgz", 552 | "integrity": "sha512-igcziksHizyQPlX9gfSjHkE2wmoCH3evvD2qR5w29/Dk0SMKE/eOI7f1HhBdNhR/zxJDqrgpoDTq5YSLH/XMsQ==", 553 | "dev": true, 554 | "requires": { 555 | "@babel/helper-plugin-utils": "^7.0.0" 556 | } 557 | }, 558 | "@babel/plugin-transform-exponentiation-operator": { 559 | "version": "7.2.0", 560 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.2.0.tgz", 561 | "integrity": "sha512-umh4hR6N7mu4Elq9GG8TOu9M0bakvlsREEC+ialrQN6ABS4oDQ69qJv1VtR3uxlKMCQMCvzk7vr17RHKcjx68A==", 562 | "dev": true, 563 | "requires": { 564 | "@babel/helper-builder-binary-assignment-operator-visitor": "^7.1.0", 565 | "@babel/helper-plugin-utils": "^7.0.0" 566 | } 567 | }, 568 | "@babel/plugin-transform-for-of": { 569 | "version": "7.4.4", 570 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.4.4.tgz", 571 | "integrity": "sha512-9T/5Dlr14Z9TIEXLXkt8T1DU7F24cbhwhMNUziN3hB1AXoZcdzPcTiKGRn/6iOymDqtTKWnr/BtRKN9JwbKtdQ==", 572 | "dev": true, 573 | "requires": { 574 | "@babel/helper-plugin-utils": "^7.0.0" 575 | } 576 | }, 577 | "@babel/plugin-transform-function-name": { 578 | "version": "7.7.0", 579 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.7.0.tgz", 580 | "integrity": "sha512-P5HKu0d9+CzZxP5jcrWdpe7ZlFDe24bmqP6a6X8BHEBl/eizAsY8K6LX8LASZL0Jxdjm5eEfzp+FIrxCm/p8bA==", 581 | "dev": true, 582 | "requires": { 583 | "@babel/helper-function-name": "^7.7.0", 584 | "@babel/helper-plugin-utils": "^7.0.0" 585 | } 586 | }, 587 | "@babel/plugin-transform-literals": { 588 | "version": "7.2.0", 589 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.2.0.tgz", 590 | "integrity": "sha512-2ThDhm4lI4oV7fVQ6pNNK+sx+c/GM5/SaML0w/r4ZB7sAneD/piDJtwdKlNckXeyGK7wlwg2E2w33C/Hh+VFCg==", 591 | "dev": true, 592 | "requires": { 593 | "@babel/helper-plugin-utils": "^7.0.0" 594 | } 595 | }, 596 | "@babel/plugin-transform-member-expression-literals": { 597 | "version": "7.2.0", 598 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.2.0.tgz", 599 | "integrity": "sha512-HiU3zKkSU6scTidmnFJ0bMX8hz5ixC93b4MHMiYebmk2lUVNGOboPsqQvx5LzooihijUoLR/v7Nc1rbBtnc7FA==", 600 | "dev": true, 601 | "requires": { 602 | "@babel/helper-plugin-utils": "^7.0.0" 603 | } 604 | }, 605 | "@babel/plugin-transform-modules-amd": { 606 | "version": "7.5.0", 607 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.5.0.tgz", 608 | "integrity": "sha512-n20UsQMKnWrltocZZm24cRURxQnWIvsABPJlw/fvoy9c6AgHZzoelAIzajDHAQrDpuKFFPPcFGd7ChsYuIUMpg==", 609 | "dev": true, 610 | "requires": { 611 | "@babel/helper-module-transforms": "^7.1.0", 612 | "@babel/helper-plugin-utils": "^7.0.0", 613 | "babel-plugin-dynamic-import-node": "^2.3.0" 614 | } 615 | }, 616 | "@babel/plugin-transform-modules-commonjs": { 617 | "version": "7.7.0", 618 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.7.0.tgz", 619 | "integrity": "sha512-KEMyWNNWnjOom8vR/1+d+Ocz/mILZG/eyHHO06OuBQ2aNhxT62fr4y6fGOplRx+CxCSp3IFwesL8WdINfY/3kg==", 620 | "dev": true, 621 | "requires": { 622 | "@babel/helper-module-transforms": "^7.7.0", 623 | "@babel/helper-plugin-utils": "^7.0.0", 624 | "@babel/helper-simple-access": "^7.7.0", 625 | "babel-plugin-dynamic-import-node": "^2.3.0" 626 | } 627 | }, 628 | "@babel/plugin-transform-modules-systemjs": { 629 | "version": "7.7.0", 630 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.7.0.tgz", 631 | "integrity": "sha512-ZAuFgYjJzDNv77AjXRqzQGlQl4HdUM6j296ee4fwKVZfhDR9LAGxfvXjBkb06gNETPnN0sLqRm9Gxg4wZH6dXg==", 632 | "dev": true, 633 | "requires": { 634 | "@babel/helper-hoist-variables": "^7.7.0", 635 | "@babel/helper-plugin-utils": "^7.0.0", 636 | "babel-plugin-dynamic-import-node": "^2.3.0" 637 | } 638 | }, 639 | "@babel/plugin-transform-modules-umd": { 640 | "version": "7.7.0", 641 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.7.0.tgz", 642 | "integrity": "sha512-u7eBA03zmUswQ9LQ7Qw0/ieC1pcAkbp5OQatbWUzY1PaBccvuJXUkYzoN1g7cqp7dbTu6Dp9bXyalBvD04AANA==", 643 | "dev": true, 644 | "requires": { 645 | "@babel/helper-module-transforms": "^7.7.0", 646 | "@babel/helper-plugin-utils": "^7.0.0" 647 | } 648 | }, 649 | "@babel/plugin-transform-named-capturing-groups-regex": { 650 | "version": "7.7.0", 651 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.7.0.tgz", 652 | "integrity": "sha512-+SicSJoKouPctL+j1pqktRVCgy+xAch1hWWTMy13j0IflnyNjaoskj+DwRQFimHbLqO3sq2oN2CXMvXq3Bgapg==", 653 | "dev": true, 654 | "requires": { 655 | "@babel/helper-create-regexp-features-plugin": "^7.7.0" 656 | } 657 | }, 658 | "@babel/plugin-transform-new-target": { 659 | "version": "7.4.4", 660 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.4.4.tgz", 661 | "integrity": "sha512-r1z3T2DNGQwwe2vPGZMBNjioT2scgWzK9BCnDEh+46z8EEwXBq24uRzd65I7pjtugzPSj921aM15RpESgzsSuA==", 662 | "dev": true, 663 | "requires": { 664 | "@babel/helper-plugin-utils": "^7.0.0" 665 | } 666 | }, 667 | "@babel/plugin-transform-object-super": { 668 | "version": "7.5.5", 669 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.5.5.tgz", 670 | "integrity": "sha512-un1zJQAhSosGFBduPgN/YFNvWVpRuHKU7IHBglLoLZsGmruJPOo6pbInneflUdmq7YvSVqhpPs5zdBvLnteltQ==", 671 | "dev": true, 672 | "requires": { 673 | "@babel/helper-plugin-utils": "^7.0.0", 674 | "@babel/helper-replace-supers": "^7.5.5" 675 | } 676 | }, 677 | "@babel/plugin-transform-parameters": { 678 | "version": "7.4.4", 679 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.4.4.tgz", 680 | "integrity": "sha512-oMh5DUO1V63nZcu/ZVLQFqiihBGo4OpxJxR1otF50GMeCLiRx5nUdtokd+u9SuVJrvvuIh9OosRFPP4pIPnwmw==", 681 | "dev": true, 682 | "requires": { 683 | "@babel/helper-call-delegate": "^7.4.4", 684 | "@babel/helper-get-function-arity": "^7.0.0", 685 | "@babel/helper-plugin-utils": "^7.0.0" 686 | } 687 | }, 688 | "@babel/plugin-transform-property-literals": { 689 | "version": "7.2.0", 690 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.2.0.tgz", 691 | "integrity": "sha512-9q7Dbk4RhgcLp8ebduOpCbtjh7C0itoLYHXd9ueASKAG/is5PQtMR5VJGka9NKqGhYEGn5ITahd4h9QeBMylWQ==", 692 | "dev": true, 693 | "requires": { 694 | "@babel/helper-plugin-utils": "^7.0.0" 695 | } 696 | }, 697 | "@babel/plugin-transform-react-jsx": { 698 | "version": "7.7.0", 699 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-react-jsx/-/plugin-transform-react-jsx-7.7.0.tgz", 700 | "integrity": "sha512-mXhBtyVB1Ujfy+0L6934jeJcSXj/VCg6whZzEcgiiZHNS0PGC7vUCsZDQCxxztkpIdF+dY1fUMcjAgEOC3ZOMQ==", 701 | "dev": true, 702 | "requires": { 703 | "@babel/helper-builder-react-jsx": "^7.7.0", 704 | "@babel/helper-plugin-utils": "^7.0.0", 705 | "@babel/plugin-syntax-jsx": "^7.2.0" 706 | } 707 | }, 708 | "@babel/plugin-transform-regenerator": { 709 | "version": "7.7.0", 710 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.7.0.tgz", 711 | "integrity": "sha512-AXmvnC+0wuj/cFkkS/HFHIojxH3ffSXE+ttulrqWjZZRaUOonfJc60e1wSNT4rV8tIunvu/R3wCp71/tLAa9xg==", 712 | "dev": true, 713 | "requires": { 714 | "regenerator-transform": "^0.14.0" 715 | } 716 | }, 717 | "@babel/plugin-transform-reserved-words": { 718 | "version": "7.2.0", 719 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.2.0.tgz", 720 | "integrity": "sha512-fz43fqW8E1tAB3DKF19/vxbpib1fuyCwSPE418ge5ZxILnBhWyhtPgz8eh1RCGGJlwvksHkyxMxh0eenFi+kFw==", 721 | "dev": true, 722 | "requires": { 723 | "@babel/helper-plugin-utils": "^7.0.0" 724 | } 725 | }, 726 | "@babel/plugin-transform-shorthand-properties": { 727 | "version": "7.2.0", 728 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.2.0.tgz", 729 | "integrity": "sha512-QP4eUM83ha9zmYtpbnyjTLAGKQritA5XW/iG9cjtuOI8s1RuL/3V6a3DeSHfKutJQ+ayUfeZJPcnCYEQzaPQqg==", 730 | "dev": true, 731 | "requires": { 732 | "@babel/helper-plugin-utils": "^7.0.0" 733 | } 734 | }, 735 | "@babel/plugin-transform-spread": { 736 | "version": "7.6.2", 737 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.6.2.tgz", 738 | "integrity": "sha512-DpSvPFryKdK1x+EDJYCy28nmAaIMdxmhot62jAXF/o99iA33Zj2Lmcp3vDmz+MUh0LNYVPvfj5iC3feb3/+PFg==", 739 | "dev": true, 740 | "requires": { 741 | "@babel/helper-plugin-utils": "^7.0.0" 742 | } 743 | }, 744 | "@babel/plugin-transform-sticky-regex": { 745 | "version": "7.2.0", 746 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.2.0.tgz", 747 | "integrity": "sha512-KKYCoGaRAf+ckH8gEL3JHUaFVyNHKe3ASNsZ+AlktgHevvxGigoIttrEJb8iKN03Q7Eazlv1s6cx2B2cQ3Jabw==", 748 | "dev": true, 749 | "requires": { 750 | "@babel/helper-plugin-utils": "^7.0.0", 751 | "@babel/helper-regex": "^7.0.0" 752 | } 753 | }, 754 | "@babel/plugin-transform-template-literals": { 755 | "version": "7.4.4", 756 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.4.4.tgz", 757 | "integrity": "sha512-mQrEC4TWkhLN0z8ygIvEL9ZEToPhG5K7KDW3pzGqOfIGZ28Jb0POUkeWcoz8HnHvhFy6dwAT1j8OzqN8s804+g==", 758 | "dev": true, 759 | "requires": { 760 | "@babel/helper-annotate-as-pure": "^7.0.0", 761 | "@babel/helper-plugin-utils": "^7.0.0" 762 | } 763 | }, 764 | "@babel/plugin-transform-typeof-symbol": { 765 | "version": "7.2.0", 766 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.2.0.tgz", 767 | "integrity": "sha512-2LNhETWYxiYysBtrBTqL8+La0jIoQQnIScUJc74OYvUGRmkskNY4EzLCnjHBzdmb38wqtTaixpo1NctEcvMDZw==", 768 | "dev": true, 769 | "requires": { 770 | "@babel/helper-plugin-utils": "^7.0.0" 771 | } 772 | }, 773 | "@babel/plugin-transform-unicode-regex": { 774 | "version": "7.7.0", 775 | "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.7.0.tgz", 776 | "integrity": "sha512-RrThb0gdrNwFAqEAAx9OWgtx6ICK69x7i9tCnMdVrxQwSDp/Abu9DXFU5Hh16VP33Rmxh04+NGW28NsIkFvFKA==", 777 | "dev": true, 778 | "requires": { 779 | "@babel/helper-create-regexp-features-plugin": "^7.7.0", 780 | "@babel/helper-plugin-utils": "^7.0.0" 781 | } 782 | }, 783 | "@babel/preset-env": { 784 | "version": "7.7.1", 785 | "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.7.1.tgz", 786 | "integrity": "sha512-/93SWhi3PxcVTDpSqC+Dp4YxUu3qZ4m7I76k0w73wYfn7bGVuRIO4QUz95aJksbS+AD1/mT1Ie7rbkT0wSplaA==", 787 | "dev": true, 788 | "requires": { 789 | "@babel/helper-module-imports": "^7.7.0", 790 | "@babel/helper-plugin-utils": "^7.0.0", 791 | "@babel/plugin-proposal-async-generator-functions": "^7.7.0", 792 | "@babel/plugin-proposal-dynamic-import": "^7.7.0", 793 | "@babel/plugin-proposal-json-strings": "^7.2.0", 794 | "@babel/plugin-proposal-object-rest-spread": "^7.6.2", 795 | "@babel/plugin-proposal-optional-catch-binding": "^7.2.0", 796 | "@babel/plugin-proposal-unicode-property-regex": "^7.7.0", 797 | "@babel/plugin-syntax-async-generators": "^7.2.0", 798 | "@babel/plugin-syntax-dynamic-import": "^7.2.0", 799 | "@babel/plugin-syntax-json-strings": "^7.2.0", 800 | "@babel/plugin-syntax-object-rest-spread": "^7.2.0", 801 | "@babel/plugin-syntax-optional-catch-binding": "^7.2.0", 802 | "@babel/plugin-syntax-top-level-await": "^7.7.0", 803 | "@babel/plugin-transform-arrow-functions": "^7.2.0", 804 | "@babel/plugin-transform-async-to-generator": "^7.7.0", 805 | "@babel/plugin-transform-block-scoped-functions": "^7.2.0", 806 | "@babel/plugin-transform-block-scoping": "^7.6.3", 807 | "@babel/plugin-transform-classes": "^7.7.0", 808 | "@babel/plugin-transform-computed-properties": "^7.2.0", 809 | "@babel/plugin-transform-destructuring": "^7.6.0", 810 | "@babel/plugin-transform-dotall-regex": "^7.7.0", 811 | "@babel/plugin-transform-duplicate-keys": "^7.5.0", 812 | "@babel/plugin-transform-exponentiation-operator": "^7.2.0", 813 | "@babel/plugin-transform-for-of": "^7.4.4", 814 | "@babel/plugin-transform-function-name": "^7.7.0", 815 | "@babel/plugin-transform-literals": "^7.2.0", 816 | "@babel/plugin-transform-member-expression-literals": "^7.2.0", 817 | "@babel/plugin-transform-modules-amd": "^7.5.0", 818 | "@babel/plugin-transform-modules-commonjs": "^7.7.0", 819 | "@babel/plugin-transform-modules-systemjs": "^7.7.0", 820 | "@babel/plugin-transform-modules-umd": "^7.7.0", 821 | "@babel/plugin-transform-named-capturing-groups-regex": "^7.7.0", 822 | "@babel/plugin-transform-new-target": "^7.4.4", 823 | "@babel/plugin-transform-object-super": "^7.5.5", 824 | "@babel/plugin-transform-parameters": "^7.4.4", 825 | "@babel/plugin-transform-property-literals": "^7.2.0", 826 | "@babel/plugin-transform-regenerator": "^7.7.0", 827 | "@babel/plugin-transform-reserved-words": "^7.2.0", 828 | "@babel/plugin-transform-shorthand-properties": "^7.2.0", 829 | "@babel/plugin-transform-spread": "^7.6.2", 830 | "@babel/plugin-transform-sticky-regex": "^7.2.0", 831 | "@babel/plugin-transform-template-literals": "^7.4.4", 832 | "@babel/plugin-transform-typeof-symbol": "^7.2.0", 833 | "@babel/plugin-transform-unicode-regex": "^7.7.0", 834 | "@babel/types": "^7.7.1", 835 | "browserslist": "^4.6.0", 836 | "core-js-compat": "^3.1.1", 837 | "invariant": "^2.2.2", 838 | "js-levenshtein": "^1.1.3", 839 | "semver": "^5.5.0" 840 | } 841 | }, 842 | "@babel/register": { 843 | "version": "7.7.0", 844 | "resolved": "https://registry.npmjs.org/@babel/register/-/register-7.7.0.tgz", 845 | "integrity": "sha512-HV3GJzTvSoyOMWGYn2TAh6uL6g+gqKTgEZ99Q3+X9UURT1VPT/WcU46R61XftIc5rXytcOHZ4Z0doDlsjPomIg==", 846 | "dev": true, 847 | "requires": { 848 | "find-cache-dir": "^2.0.0", 849 | "lodash": "^4.17.13", 850 | "make-dir": "^2.1.0", 851 | "pirates": "^4.0.0", 852 | "source-map-support": "^0.5.16" 853 | } 854 | }, 855 | "@babel/template": { 856 | "version": "7.7.0", 857 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.7.0.tgz", 858 | "integrity": "sha512-OKcwSYOW1mhWbnTBgQY5lvg1Fxg+VyfQGjcBduZFljfc044J5iDlnDSfhQ867O17XHiSCxYHUxHg2b7ryitbUQ==", 859 | "dev": true, 860 | "requires": { 861 | "@babel/code-frame": "^7.0.0", 862 | "@babel/parser": "^7.7.0", 863 | "@babel/types": "^7.7.0" 864 | } 865 | }, 866 | "@babel/traverse": { 867 | "version": "7.23.2", 868 | "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.23.2.tgz", 869 | "integrity": "sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw==", 870 | "dev": true, 871 | "requires": { 872 | "@babel/code-frame": "^7.22.13", 873 | "@babel/generator": "^7.23.0", 874 | "@babel/helper-environment-visitor": "^7.22.20", 875 | "@babel/helper-function-name": "^7.23.0", 876 | "@babel/helper-hoist-variables": "^7.22.5", 877 | "@babel/helper-split-export-declaration": "^7.22.6", 878 | "@babel/parser": "^7.23.0", 879 | "@babel/types": "^7.23.0", 880 | "debug": "^4.1.0", 881 | "globals": "^11.1.0" 882 | }, 883 | "dependencies": { 884 | "@babel/code-frame": { 885 | "version": "7.22.13", 886 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", 887 | "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", 888 | "dev": true, 889 | "requires": { 890 | "@babel/highlight": "^7.22.13", 891 | "chalk": "^2.4.2" 892 | } 893 | }, 894 | "@babel/generator": { 895 | "version": "7.23.0", 896 | "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", 897 | "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", 898 | "dev": true, 899 | "requires": { 900 | "@babel/types": "^7.23.0", 901 | "@jridgewell/gen-mapping": "^0.3.2", 902 | "@jridgewell/trace-mapping": "^0.3.17", 903 | "jsesc": "^2.5.1" 904 | } 905 | }, 906 | "@babel/helper-function-name": { 907 | "version": "7.23.0", 908 | "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz", 909 | "integrity": "sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw==", 910 | "dev": true, 911 | "requires": { 912 | "@babel/template": "^7.22.15", 913 | "@babel/types": "^7.23.0" 914 | } 915 | }, 916 | "@babel/helper-hoist-variables": { 917 | "version": "7.22.5", 918 | "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", 919 | "integrity": "sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw==", 920 | "dev": true, 921 | "requires": { 922 | "@babel/types": "^7.22.5" 923 | } 924 | }, 925 | "@babel/helper-split-export-declaration": { 926 | "version": "7.22.6", 927 | "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz", 928 | "integrity": "sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g==", 929 | "dev": true, 930 | "requires": { 931 | "@babel/types": "^7.22.5" 932 | } 933 | }, 934 | "@babel/highlight": { 935 | "version": "7.22.20", 936 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", 937 | "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", 938 | "dev": true, 939 | "requires": { 940 | "@babel/helper-validator-identifier": "^7.22.20", 941 | "chalk": "^2.4.2", 942 | "js-tokens": "^4.0.0" 943 | } 944 | }, 945 | "@babel/parser": { 946 | "version": "7.23.0", 947 | "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.23.0.tgz", 948 | "integrity": "sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw==", 949 | "dev": true 950 | }, 951 | "@babel/template": { 952 | "version": "7.22.15", 953 | "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", 954 | "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", 955 | "dev": true, 956 | "requires": { 957 | "@babel/code-frame": "^7.22.13", 958 | "@babel/parser": "^7.22.15", 959 | "@babel/types": "^7.22.15" 960 | } 961 | }, 962 | "@babel/types": { 963 | "version": "7.23.0", 964 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", 965 | "integrity": "sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg==", 966 | "dev": true, 967 | "requires": { 968 | "@babel/helper-string-parser": "^7.22.5", 969 | "@babel/helper-validator-identifier": "^7.22.20", 970 | "to-fast-properties": "^2.0.0" 971 | } 972 | }, 973 | "debug": { 974 | "version": "4.3.4", 975 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 976 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 977 | "dev": true, 978 | "requires": { 979 | "ms": "2.1.2" 980 | } 981 | }, 982 | "ms": { 983 | "version": "2.1.2", 984 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 985 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 986 | "dev": true 987 | } 988 | } 989 | }, 990 | "@babel/types": { 991 | "version": "7.7.2", 992 | "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.7.2.tgz", 993 | "integrity": "sha512-YTf6PXoh3+eZgRCBzzP25Bugd2ngmpQVrk7kXX0i5N9BO7TFBtIgZYs7WtxtOGs8e6A4ZI7ECkbBCEHeXocvOA==", 994 | "dev": true, 995 | "requires": { 996 | "esutils": "^2.0.2", 997 | "lodash": "^4.17.13", 998 | "to-fast-properties": "^2.0.0" 999 | } 1000 | }, 1001 | "@jridgewell/gen-mapping": { 1002 | "version": "0.3.3", 1003 | "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", 1004 | "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", 1005 | "dev": true, 1006 | "requires": { 1007 | "@jridgewell/set-array": "^1.0.1", 1008 | "@jridgewell/sourcemap-codec": "^1.4.10", 1009 | "@jridgewell/trace-mapping": "^0.3.9" 1010 | } 1011 | }, 1012 | "@jridgewell/resolve-uri": { 1013 | "version": "3.1.1", 1014 | "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz", 1015 | "integrity": "sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA==", 1016 | "dev": true 1017 | }, 1018 | "@jridgewell/set-array": { 1019 | "version": "1.1.2", 1020 | "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.2.tgz", 1021 | "integrity": "sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==", 1022 | "dev": true 1023 | }, 1024 | "@jridgewell/sourcemap-codec": { 1025 | "version": "1.4.15", 1026 | "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", 1027 | "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", 1028 | "dev": true 1029 | }, 1030 | "@jridgewell/trace-mapping": { 1031 | "version": "0.3.20", 1032 | "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz", 1033 | "integrity": "sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q==", 1034 | "dev": true, 1035 | "requires": { 1036 | "@jridgewell/resolve-uri": "^3.1.0", 1037 | "@jridgewell/sourcemap-codec": "^1.4.14" 1038 | } 1039 | }, 1040 | "align-text": { 1041 | "version": "0.1.4", 1042 | "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", 1043 | "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", 1044 | "dev": true, 1045 | "requires": { 1046 | "kind-of": "^3.0.2", 1047 | "longest": "^1.0.1", 1048 | "repeat-string": "^1.5.2" 1049 | }, 1050 | "dependencies": { 1051 | "kind-of": { 1052 | "version": "3.2.2", 1053 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1054 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1055 | "dev": true, 1056 | "requires": { 1057 | "is-buffer": "^1.1.5" 1058 | } 1059 | } 1060 | } 1061 | }, 1062 | "ansi-regex": { 1063 | "version": "2.1.1", 1064 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 1065 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 1066 | "dev": true 1067 | }, 1068 | "ansi-styles": { 1069 | "version": "3.2.1", 1070 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1071 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1072 | "dev": true, 1073 | "requires": { 1074 | "color-convert": "^1.9.0" 1075 | } 1076 | }, 1077 | "anymatch": { 1078 | "version": "2.0.0", 1079 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", 1080 | "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", 1081 | "dev": true, 1082 | "optional": true, 1083 | "requires": { 1084 | "micromatch": "^3.1.4", 1085 | "normalize-path": "^2.1.1" 1086 | }, 1087 | "dependencies": { 1088 | "normalize-path": { 1089 | "version": "2.1.1", 1090 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 1091 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 1092 | "dev": true, 1093 | "optional": true, 1094 | "requires": { 1095 | "remove-trailing-separator": "^1.0.1" 1096 | } 1097 | } 1098 | } 1099 | }, 1100 | "arr-diff": { 1101 | "version": "4.0.0", 1102 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 1103 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 1104 | "dev": true, 1105 | "optional": true 1106 | }, 1107 | "arr-flatten": { 1108 | "version": "1.1.0", 1109 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 1110 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 1111 | "dev": true, 1112 | "optional": true 1113 | }, 1114 | "arr-union": { 1115 | "version": "3.1.0", 1116 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 1117 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 1118 | "dev": true, 1119 | "optional": true 1120 | }, 1121 | "array-unique": { 1122 | "version": "0.3.2", 1123 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 1124 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 1125 | "dev": true, 1126 | "optional": true 1127 | }, 1128 | "assertion-error": { 1129 | "version": "1.1.0", 1130 | "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz", 1131 | "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==", 1132 | "dev": true 1133 | }, 1134 | "assign-symbols": { 1135 | "version": "1.0.0", 1136 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 1137 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 1138 | "dev": true, 1139 | "optional": true 1140 | }, 1141 | "async-each": { 1142 | "version": "1.0.3", 1143 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", 1144 | "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", 1145 | "dev": true, 1146 | "optional": true 1147 | }, 1148 | "atob": { 1149 | "version": "2.1.2", 1150 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 1151 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", 1152 | "dev": true, 1153 | "optional": true 1154 | }, 1155 | "babel-code-frame": { 1156 | "version": "6.26.0", 1157 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 1158 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 1159 | "dev": true, 1160 | "requires": { 1161 | "chalk": "^1.1.3", 1162 | "esutils": "^2.0.2", 1163 | "js-tokens": "^3.0.2" 1164 | }, 1165 | "dependencies": { 1166 | "ansi-styles": { 1167 | "version": "2.2.1", 1168 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 1169 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 1170 | "dev": true 1171 | }, 1172 | "chalk": { 1173 | "version": "1.1.3", 1174 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 1175 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 1176 | "dev": true, 1177 | "requires": { 1178 | "ansi-styles": "^2.2.1", 1179 | "escape-string-regexp": "^1.0.2", 1180 | "has-ansi": "^2.0.0", 1181 | "strip-ansi": "^3.0.0", 1182 | "supports-color": "^2.0.0" 1183 | } 1184 | }, 1185 | "js-tokens": { 1186 | "version": "3.0.2", 1187 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 1188 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 1189 | "dev": true 1190 | }, 1191 | "supports-color": { 1192 | "version": "2.0.0", 1193 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 1194 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 1195 | "dev": true 1196 | } 1197 | } 1198 | }, 1199 | "babel-core": { 1200 | "version": "6.26.3", 1201 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", 1202 | "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", 1203 | "dev": true, 1204 | "requires": { 1205 | "babel-code-frame": "^6.26.0", 1206 | "babel-generator": "^6.26.0", 1207 | "babel-helpers": "^6.24.1", 1208 | "babel-messages": "^6.23.0", 1209 | "babel-register": "^6.26.0", 1210 | "babel-runtime": "^6.26.0", 1211 | "babel-template": "^6.26.0", 1212 | "babel-traverse": "^6.26.0", 1213 | "babel-types": "^6.26.0", 1214 | "babylon": "^6.18.0", 1215 | "convert-source-map": "^1.5.1", 1216 | "debug": "^2.6.9", 1217 | "json5": "^0.5.1", 1218 | "lodash": "^4.17.4", 1219 | "minimatch": "^3.0.4", 1220 | "path-is-absolute": "^1.0.1", 1221 | "private": "^0.1.8", 1222 | "slash": "^1.0.0", 1223 | "source-map": "^0.5.7" 1224 | }, 1225 | "dependencies": { 1226 | "json5": { 1227 | "version": "0.5.1", 1228 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 1229 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 1230 | "dev": true 1231 | }, 1232 | "slash": { 1233 | "version": "1.0.0", 1234 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 1235 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", 1236 | "dev": true 1237 | } 1238 | } 1239 | }, 1240 | "babel-generator": { 1241 | "version": "6.26.1", 1242 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", 1243 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", 1244 | "dev": true, 1245 | "requires": { 1246 | "babel-messages": "^6.23.0", 1247 | "babel-runtime": "^6.26.0", 1248 | "babel-types": "^6.26.0", 1249 | "detect-indent": "^4.0.0", 1250 | "jsesc": "^1.3.0", 1251 | "lodash": "^4.17.4", 1252 | "source-map": "^0.5.7", 1253 | "trim-right": "^1.0.1" 1254 | }, 1255 | "dependencies": { 1256 | "jsesc": { 1257 | "version": "1.3.0", 1258 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 1259 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", 1260 | "dev": true 1261 | } 1262 | } 1263 | }, 1264 | "babel-helper-builder-binary-assignment-operator-visitor": { 1265 | "version": "6.24.1", 1266 | "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", 1267 | "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", 1268 | "dev": true, 1269 | "requires": { 1270 | "babel-helper-explode-assignable-expression": "^6.24.1", 1271 | "babel-runtime": "^6.22.0", 1272 | "babel-types": "^6.24.1" 1273 | } 1274 | }, 1275 | "babel-helper-builder-react-jsx": { 1276 | "version": "6.26.0", 1277 | "resolved": "https://registry.npmjs.org/babel-helper-builder-react-jsx/-/babel-helper-builder-react-jsx-6.26.0.tgz", 1278 | "integrity": "sha1-Of+DE7dci2Xc7/HzHTg+D/KkCKA=", 1279 | "dev": true, 1280 | "requires": { 1281 | "babel-runtime": "^6.26.0", 1282 | "babel-types": "^6.26.0", 1283 | "esutils": "^2.0.2" 1284 | } 1285 | }, 1286 | "babel-helper-call-delegate": { 1287 | "version": "6.24.1", 1288 | "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", 1289 | "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", 1290 | "dev": true, 1291 | "requires": { 1292 | "babel-helper-hoist-variables": "^6.24.1", 1293 | "babel-runtime": "^6.22.0", 1294 | "babel-traverse": "^6.24.1", 1295 | "babel-types": "^6.24.1" 1296 | } 1297 | }, 1298 | "babel-helper-define-map": { 1299 | "version": "6.26.0", 1300 | "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", 1301 | "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", 1302 | "dev": true, 1303 | "requires": { 1304 | "babel-helper-function-name": "^6.24.1", 1305 | "babel-runtime": "^6.26.0", 1306 | "babel-types": "^6.26.0", 1307 | "lodash": "^4.17.4" 1308 | } 1309 | }, 1310 | "babel-helper-explode-assignable-expression": { 1311 | "version": "6.24.1", 1312 | "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", 1313 | "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", 1314 | "dev": true, 1315 | "requires": { 1316 | "babel-runtime": "^6.22.0", 1317 | "babel-traverse": "^6.24.1", 1318 | "babel-types": "^6.24.1" 1319 | } 1320 | }, 1321 | "babel-helper-function-name": { 1322 | "version": "6.24.1", 1323 | "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", 1324 | "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", 1325 | "dev": true, 1326 | "requires": { 1327 | "babel-helper-get-function-arity": "^6.24.1", 1328 | "babel-runtime": "^6.22.0", 1329 | "babel-template": "^6.24.1", 1330 | "babel-traverse": "^6.24.1", 1331 | "babel-types": "^6.24.1" 1332 | } 1333 | }, 1334 | "babel-helper-get-function-arity": { 1335 | "version": "6.24.1", 1336 | "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", 1337 | "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", 1338 | "dev": true, 1339 | "requires": { 1340 | "babel-runtime": "^6.22.0", 1341 | "babel-types": "^6.24.1" 1342 | } 1343 | }, 1344 | "babel-helper-hoist-variables": { 1345 | "version": "6.24.1", 1346 | "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", 1347 | "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", 1348 | "dev": true, 1349 | "requires": { 1350 | "babel-runtime": "^6.22.0", 1351 | "babel-types": "^6.24.1" 1352 | } 1353 | }, 1354 | "babel-helper-optimise-call-expression": { 1355 | "version": "6.24.1", 1356 | "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", 1357 | "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", 1358 | "dev": true, 1359 | "requires": { 1360 | "babel-runtime": "^6.22.0", 1361 | "babel-types": "^6.24.1" 1362 | } 1363 | }, 1364 | "babel-helper-regex": { 1365 | "version": "6.26.0", 1366 | "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", 1367 | "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", 1368 | "dev": true, 1369 | "requires": { 1370 | "babel-runtime": "^6.26.0", 1371 | "babel-types": "^6.26.0", 1372 | "lodash": "^4.17.4" 1373 | } 1374 | }, 1375 | "babel-helper-remap-async-to-generator": { 1376 | "version": "6.24.1", 1377 | "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz", 1378 | "integrity": "sha1-XsWBgnrXI/7N04HxySg5BnbkVRs=", 1379 | "dev": true, 1380 | "requires": { 1381 | "babel-helper-function-name": "^6.24.1", 1382 | "babel-runtime": "^6.22.0", 1383 | "babel-template": "^6.24.1", 1384 | "babel-traverse": "^6.24.1", 1385 | "babel-types": "^6.24.1" 1386 | } 1387 | }, 1388 | "babel-helper-replace-supers": { 1389 | "version": "6.24.1", 1390 | "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", 1391 | "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", 1392 | "dev": true, 1393 | "requires": { 1394 | "babel-helper-optimise-call-expression": "^6.24.1", 1395 | "babel-messages": "^6.23.0", 1396 | "babel-runtime": "^6.22.0", 1397 | "babel-template": "^6.24.1", 1398 | "babel-traverse": "^6.24.1", 1399 | "babel-types": "^6.24.1" 1400 | } 1401 | }, 1402 | "babel-helpers": { 1403 | "version": "6.24.1", 1404 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 1405 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 1406 | "dev": true, 1407 | "requires": { 1408 | "babel-runtime": "^6.22.0", 1409 | "babel-template": "^6.24.1" 1410 | } 1411 | }, 1412 | "babel-messages": { 1413 | "version": "6.23.0", 1414 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 1415 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 1416 | "dev": true, 1417 | "requires": { 1418 | "babel-runtime": "^6.22.0" 1419 | } 1420 | }, 1421 | "babel-plugin-check-es2015-constants": { 1422 | "version": "6.22.0", 1423 | "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", 1424 | "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", 1425 | "dev": true, 1426 | "requires": { 1427 | "babel-runtime": "^6.22.0" 1428 | } 1429 | }, 1430 | "babel-plugin-dynamic-import-node": { 1431 | "version": "2.3.0", 1432 | "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.0.tgz", 1433 | "integrity": "sha512-o6qFkpeQEBxcqt0XYlWzAVxNCSCZdUgcR8IRlhD/8DylxjjO4foPcvTW0GGKa/cVt3rvxZ7o5ippJ+/0nvLhlQ==", 1434 | "dev": true, 1435 | "requires": { 1436 | "object.assign": "^4.1.0" 1437 | } 1438 | }, 1439 | "babel-plugin-syntax-async-functions": { 1440 | "version": "6.13.0", 1441 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz", 1442 | "integrity": "sha1-ytnK0RkbWtY0vzCuCHI5HgZHvpU=", 1443 | "dev": true 1444 | }, 1445 | "babel-plugin-syntax-exponentiation-operator": { 1446 | "version": "6.13.0", 1447 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", 1448 | "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", 1449 | "dev": true 1450 | }, 1451 | "babel-plugin-syntax-jsx": { 1452 | "version": "6.18.0", 1453 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz", 1454 | "integrity": "sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY=", 1455 | "dev": true 1456 | }, 1457 | "babel-plugin-syntax-trailing-function-commas": { 1458 | "version": "6.22.0", 1459 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz", 1460 | "integrity": "sha1-ugNgk3+NBuQBgKQ/4NVhb/9TLPM=", 1461 | "dev": true 1462 | }, 1463 | "babel-plugin-transform-async-to-generator": { 1464 | "version": "6.24.1", 1465 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz", 1466 | "integrity": "sha1-ZTbjeK/2yx1VF6wOQOs+n8jQh2E=", 1467 | "dev": true, 1468 | "requires": { 1469 | "babel-helper-remap-async-to-generator": "^6.24.1", 1470 | "babel-plugin-syntax-async-functions": "^6.8.0", 1471 | "babel-runtime": "^6.22.0" 1472 | } 1473 | }, 1474 | "babel-plugin-transform-es2015-arrow-functions": { 1475 | "version": "6.22.0", 1476 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", 1477 | "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", 1478 | "dev": true, 1479 | "requires": { 1480 | "babel-runtime": "^6.22.0" 1481 | } 1482 | }, 1483 | "babel-plugin-transform-es2015-block-scoped-functions": { 1484 | "version": "6.22.0", 1485 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", 1486 | "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", 1487 | "dev": true, 1488 | "requires": { 1489 | "babel-runtime": "^6.22.0" 1490 | } 1491 | }, 1492 | "babel-plugin-transform-es2015-block-scoping": { 1493 | "version": "6.26.0", 1494 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", 1495 | "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", 1496 | "dev": true, 1497 | "requires": { 1498 | "babel-runtime": "^6.26.0", 1499 | "babel-template": "^6.26.0", 1500 | "babel-traverse": "^6.26.0", 1501 | "babel-types": "^6.26.0", 1502 | "lodash": "^4.17.4" 1503 | } 1504 | }, 1505 | "babel-plugin-transform-es2015-classes": { 1506 | "version": "6.24.1", 1507 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", 1508 | "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", 1509 | "dev": true, 1510 | "requires": { 1511 | "babel-helper-define-map": "^6.24.1", 1512 | "babel-helper-function-name": "^6.24.1", 1513 | "babel-helper-optimise-call-expression": "^6.24.1", 1514 | "babel-helper-replace-supers": "^6.24.1", 1515 | "babel-messages": "^6.23.0", 1516 | "babel-runtime": "^6.22.0", 1517 | "babel-template": "^6.24.1", 1518 | "babel-traverse": "^6.24.1", 1519 | "babel-types": "^6.24.1" 1520 | } 1521 | }, 1522 | "babel-plugin-transform-es2015-computed-properties": { 1523 | "version": "6.24.1", 1524 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", 1525 | "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", 1526 | "dev": true, 1527 | "requires": { 1528 | "babel-runtime": "^6.22.0", 1529 | "babel-template": "^6.24.1" 1530 | } 1531 | }, 1532 | "babel-plugin-transform-es2015-destructuring": { 1533 | "version": "6.23.0", 1534 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", 1535 | "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", 1536 | "dev": true, 1537 | "requires": { 1538 | "babel-runtime": "^6.22.0" 1539 | } 1540 | }, 1541 | "babel-plugin-transform-es2015-duplicate-keys": { 1542 | "version": "6.24.1", 1543 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", 1544 | "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", 1545 | "dev": true, 1546 | "requires": { 1547 | "babel-runtime": "^6.22.0", 1548 | "babel-types": "^6.24.1" 1549 | } 1550 | }, 1551 | "babel-plugin-transform-es2015-for-of": { 1552 | "version": "6.23.0", 1553 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", 1554 | "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", 1555 | "dev": true, 1556 | "requires": { 1557 | "babel-runtime": "^6.22.0" 1558 | } 1559 | }, 1560 | "babel-plugin-transform-es2015-function-name": { 1561 | "version": "6.24.1", 1562 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", 1563 | "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", 1564 | "dev": true, 1565 | "requires": { 1566 | "babel-helper-function-name": "^6.24.1", 1567 | "babel-runtime": "^6.22.0", 1568 | "babel-types": "^6.24.1" 1569 | } 1570 | }, 1571 | "babel-plugin-transform-es2015-literals": { 1572 | "version": "6.22.0", 1573 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", 1574 | "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", 1575 | "dev": true, 1576 | "requires": { 1577 | "babel-runtime": "^6.22.0" 1578 | } 1579 | }, 1580 | "babel-plugin-transform-es2015-modules-amd": { 1581 | "version": "6.24.1", 1582 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", 1583 | "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", 1584 | "dev": true, 1585 | "requires": { 1586 | "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", 1587 | "babel-runtime": "^6.22.0", 1588 | "babel-template": "^6.24.1" 1589 | } 1590 | }, 1591 | "babel-plugin-transform-es2015-modules-commonjs": { 1592 | "version": "6.26.2", 1593 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", 1594 | "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", 1595 | "dev": true, 1596 | "requires": { 1597 | "babel-plugin-transform-strict-mode": "^6.24.1", 1598 | "babel-runtime": "^6.26.0", 1599 | "babel-template": "^6.26.0", 1600 | "babel-types": "^6.26.0" 1601 | } 1602 | }, 1603 | "babel-plugin-transform-es2015-modules-systemjs": { 1604 | "version": "6.24.1", 1605 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", 1606 | "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", 1607 | "dev": true, 1608 | "requires": { 1609 | "babel-helper-hoist-variables": "^6.24.1", 1610 | "babel-runtime": "^6.22.0", 1611 | "babel-template": "^6.24.1" 1612 | } 1613 | }, 1614 | "babel-plugin-transform-es2015-modules-umd": { 1615 | "version": "6.24.1", 1616 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", 1617 | "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", 1618 | "dev": true, 1619 | "requires": { 1620 | "babel-plugin-transform-es2015-modules-amd": "^6.24.1", 1621 | "babel-runtime": "^6.22.0", 1622 | "babel-template": "^6.24.1" 1623 | } 1624 | }, 1625 | "babel-plugin-transform-es2015-object-super": { 1626 | "version": "6.24.1", 1627 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", 1628 | "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", 1629 | "dev": true, 1630 | "requires": { 1631 | "babel-helper-replace-supers": "^6.24.1", 1632 | "babel-runtime": "^6.22.0" 1633 | } 1634 | }, 1635 | "babel-plugin-transform-es2015-parameters": { 1636 | "version": "6.24.1", 1637 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", 1638 | "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", 1639 | "dev": true, 1640 | "requires": { 1641 | "babel-helper-call-delegate": "^6.24.1", 1642 | "babel-helper-get-function-arity": "^6.24.1", 1643 | "babel-runtime": "^6.22.0", 1644 | "babel-template": "^6.24.1", 1645 | "babel-traverse": "^6.24.1", 1646 | "babel-types": "^6.24.1" 1647 | } 1648 | }, 1649 | "babel-plugin-transform-es2015-shorthand-properties": { 1650 | "version": "6.24.1", 1651 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", 1652 | "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", 1653 | "dev": true, 1654 | "requires": { 1655 | "babel-runtime": "^6.22.0", 1656 | "babel-types": "^6.24.1" 1657 | } 1658 | }, 1659 | "babel-plugin-transform-es2015-spread": { 1660 | "version": "6.22.0", 1661 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", 1662 | "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", 1663 | "dev": true, 1664 | "requires": { 1665 | "babel-runtime": "^6.22.0" 1666 | } 1667 | }, 1668 | "babel-plugin-transform-es2015-sticky-regex": { 1669 | "version": "6.24.1", 1670 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", 1671 | "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", 1672 | "dev": true, 1673 | "requires": { 1674 | "babel-helper-regex": "^6.24.1", 1675 | "babel-runtime": "^6.22.0", 1676 | "babel-types": "^6.24.1" 1677 | } 1678 | }, 1679 | "babel-plugin-transform-es2015-template-literals": { 1680 | "version": "6.22.0", 1681 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", 1682 | "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", 1683 | "dev": true, 1684 | "requires": { 1685 | "babel-runtime": "^6.22.0" 1686 | } 1687 | }, 1688 | "babel-plugin-transform-es2015-typeof-symbol": { 1689 | "version": "6.23.0", 1690 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", 1691 | "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", 1692 | "dev": true, 1693 | "requires": { 1694 | "babel-runtime": "^6.22.0" 1695 | } 1696 | }, 1697 | "babel-plugin-transform-es2015-unicode-regex": { 1698 | "version": "6.24.1", 1699 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", 1700 | "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", 1701 | "dev": true, 1702 | "requires": { 1703 | "babel-helper-regex": "^6.24.1", 1704 | "babel-runtime": "^6.22.0", 1705 | "regexpu-core": "^2.0.0" 1706 | }, 1707 | "dependencies": { 1708 | "jsesc": { 1709 | "version": "0.5.0", 1710 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 1711 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 1712 | "dev": true 1713 | }, 1714 | "regexpu-core": { 1715 | "version": "2.0.0", 1716 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", 1717 | "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", 1718 | "dev": true, 1719 | "requires": { 1720 | "regenerate": "^1.2.1", 1721 | "regjsgen": "^0.2.0", 1722 | "regjsparser": "^0.1.4" 1723 | } 1724 | }, 1725 | "regjsgen": { 1726 | "version": "0.2.0", 1727 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", 1728 | "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", 1729 | "dev": true 1730 | }, 1731 | "regjsparser": { 1732 | "version": "0.1.5", 1733 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", 1734 | "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", 1735 | "dev": true, 1736 | "requires": { 1737 | "jsesc": "~0.5.0" 1738 | } 1739 | } 1740 | } 1741 | }, 1742 | "babel-plugin-transform-exponentiation-operator": { 1743 | "version": "6.24.1", 1744 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", 1745 | "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", 1746 | "dev": true, 1747 | "requires": { 1748 | "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", 1749 | "babel-plugin-syntax-exponentiation-operator": "^6.8.0", 1750 | "babel-runtime": "^6.22.0" 1751 | } 1752 | }, 1753 | "babel-plugin-transform-react-jsx": { 1754 | "version": "6.24.1", 1755 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-react-jsx/-/babel-plugin-transform-react-jsx-6.24.1.tgz", 1756 | "integrity": "sha1-hAoCjn30YN/DotKfDA2R9jduZqM=", 1757 | "dev": true, 1758 | "requires": { 1759 | "babel-helper-builder-react-jsx": "^6.24.1", 1760 | "babel-plugin-syntax-jsx": "^6.8.0", 1761 | "babel-runtime": "^6.22.0" 1762 | } 1763 | }, 1764 | "babel-plugin-transform-regenerator": { 1765 | "version": "6.26.0", 1766 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", 1767 | "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", 1768 | "dev": true, 1769 | "requires": { 1770 | "regenerator-transform": "^0.10.0" 1771 | }, 1772 | "dependencies": { 1773 | "regenerator-transform": { 1774 | "version": "0.10.1", 1775 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", 1776 | "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", 1777 | "dev": true, 1778 | "requires": { 1779 | "babel-runtime": "^6.18.0", 1780 | "babel-types": "^6.19.0", 1781 | "private": "^0.1.6" 1782 | } 1783 | } 1784 | } 1785 | }, 1786 | "babel-plugin-transform-strict-mode": { 1787 | "version": "6.24.1", 1788 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 1789 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 1790 | "dev": true, 1791 | "requires": { 1792 | "babel-runtime": "^6.22.0", 1793 | "babel-types": "^6.24.1" 1794 | } 1795 | }, 1796 | "babel-preset-env": { 1797 | "version": "1.7.0", 1798 | "resolved": "https://registry.npmjs.org/babel-preset-env/-/babel-preset-env-1.7.0.tgz", 1799 | "integrity": "sha512-9OR2afuKDneX2/q2EurSftUYM0xGu4O2D9adAhVfADDhrYDaxXV0rBbevVYoY9n6nyX1PmQW/0jtpJvUNr9CHg==", 1800 | "dev": true, 1801 | "requires": { 1802 | "babel-plugin-check-es2015-constants": "^6.22.0", 1803 | "babel-plugin-syntax-trailing-function-commas": "^6.22.0", 1804 | "babel-plugin-transform-async-to-generator": "^6.22.0", 1805 | "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", 1806 | "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", 1807 | "babel-plugin-transform-es2015-block-scoping": "^6.23.0", 1808 | "babel-plugin-transform-es2015-classes": "^6.23.0", 1809 | "babel-plugin-transform-es2015-computed-properties": "^6.22.0", 1810 | "babel-plugin-transform-es2015-destructuring": "^6.23.0", 1811 | "babel-plugin-transform-es2015-duplicate-keys": "^6.22.0", 1812 | "babel-plugin-transform-es2015-for-of": "^6.23.0", 1813 | "babel-plugin-transform-es2015-function-name": "^6.22.0", 1814 | "babel-plugin-transform-es2015-literals": "^6.22.0", 1815 | "babel-plugin-transform-es2015-modules-amd": "^6.22.0", 1816 | "babel-plugin-transform-es2015-modules-commonjs": "^6.23.0", 1817 | "babel-plugin-transform-es2015-modules-systemjs": "^6.23.0", 1818 | "babel-plugin-transform-es2015-modules-umd": "^6.23.0", 1819 | "babel-plugin-transform-es2015-object-super": "^6.22.0", 1820 | "babel-plugin-transform-es2015-parameters": "^6.23.0", 1821 | "babel-plugin-transform-es2015-shorthand-properties": "^6.22.0", 1822 | "babel-plugin-transform-es2015-spread": "^6.22.0", 1823 | "babel-plugin-transform-es2015-sticky-regex": "^6.22.0", 1824 | "babel-plugin-transform-es2015-template-literals": "^6.22.0", 1825 | "babel-plugin-transform-es2015-typeof-symbol": "^6.23.0", 1826 | "babel-plugin-transform-es2015-unicode-regex": "^6.22.0", 1827 | "babel-plugin-transform-exponentiation-operator": "^6.22.0", 1828 | "babel-plugin-transform-regenerator": "^6.22.0", 1829 | "browserslist": "^3.2.6", 1830 | "invariant": "^2.2.2", 1831 | "semver": "^5.3.0" 1832 | }, 1833 | "dependencies": { 1834 | "browserslist": { 1835 | "version": "3.2.8", 1836 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", 1837 | "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", 1838 | "dev": true, 1839 | "requires": { 1840 | "caniuse-lite": "^1.0.30000844", 1841 | "electron-to-chromium": "^1.3.47" 1842 | } 1843 | } 1844 | } 1845 | }, 1846 | "babel-register": { 1847 | "version": "6.26.0", 1848 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 1849 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 1850 | "dev": true, 1851 | "requires": { 1852 | "babel-core": "^6.26.0", 1853 | "babel-runtime": "^6.26.0", 1854 | "core-js": "^2.5.0", 1855 | "home-or-tmp": "^2.0.0", 1856 | "lodash": "^4.17.4", 1857 | "mkdirp": "^0.5.1", 1858 | "source-map-support": "^0.4.15" 1859 | }, 1860 | "dependencies": { 1861 | "source-map-support": { 1862 | "version": "0.4.18", 1863 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", 1864 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", 1865 | "dev": true, 1866 | "requires": { 1867 | "source-map": "^0.5.6" 1868 | } 1869 | } 1870 | } 1871 | }, 1872 | "babel-runtime": { 1873 | "version": "6.26.0", 1874 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 1875 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 1876 | "dev": true, 1877 | "requires": { 1878 | "core-js": "^2.4.0", 1879 | "regenerator-runtime": "^0.11.0" 1880 | } 1881 | }, 1882 | "babel-template": { 1883 | "version": "6.26.0", 1884 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 1885 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 1886 | "dev": true, 1887 | "requires": { 1888 | "babel-runtime": "^6.26.0", 1889 | "babel-traverse": "^6.26.0", 1890 | "babel-types": "^6.26.0", 1891 | "babylon": "^6.18.0", 1892 | "lodash": "^4.17.4" 1893 | } 1894 | }, 1895 | "babel-traverse": { 1896 | "version": "6.26.0", 1897 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 1898 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 1899 | "dev": true, 1900 | "requires": { 1901 | "babel-code-frame": "^6.26.0", 1902 | "babel-messages": "^6.23.0", 1903 | "babel-runtime": "^6.26.0", 1904 | "babel-types": "^6.26.0", 1905 | "babylon": "^6.18.0", 1906 | "debug": "^2.6.8", 1907 | "globals": "^9.18.0", 1908 | "invariant": "^2.2.2", 1909 | "lodash": "^4.17.4" 1910 | }, 1911 | "dependencies": { 1912 | "globals": { 1913 | "version": "9.18.0", 1914 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 1915 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 1916 | "dev": true 1917 | } 1918 | } 1919 | }, 1920 | "babel-types": { 1921 | "version": "6.26.0", 1922 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 1923 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 1924 | "dev": true, 1925 | "requires": { 1926 | "babel-runtime": "^6.26.0", 1927 | "esutils": "^2.0.2", 1928 | "lodash": "^4.17.4", 1929 | "to-fast-properties": "^1.0.3" 1930 | }, 1931 | "dependencies": { 1932 | "to-fast-properties": { 1933 | "version": "1.0.3", 1934 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 1935 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", 1936 | "dev": true 1937 | } 1938 | } 1939 | }, 1940 | "babylon": { 1941 | "version": "6.18.0", 1942 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 1943 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", 1944 | "dev": true 1945 | }, 1946 | "balanced-match": { 1947 | "version": "1.0.0", 1948 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 1949 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 1950 | "dev": true 1951 | }, 1952 | "base": { 1953 | "version": "0.11.2", 1954 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 1955 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 1956 | "dev": true, 1957 | "optional": true, 1958 | "requires": { 1959 | "cache-base": "^1.0.1", 1960 | "class-utils": "^0.3.5", 1961 | "component-emitter": "^1.2.1", 1962 | "define-property": "^1.0.0", 1963 | "isobject": "^3.0.1", 1964 | "mixin-deep": "^1.2.0", 1965 | "pascalcase": "^0.1.1" 1966 | }, 1967 | "dependencies": { 1968 | "define-property": { 1969 | "version": "1.0.0", 1970 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 1971 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 1972 | "dev": true, 1973 | "optional": true, 1974 | "requires": { 1975 | "is-descriptor": "^1.0.0" 1976 | } 1977 | }, 1978 | "is-accessor-descriptor": { 1979 | "version": "1.0.0", 1980 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1981 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1982 | "dev": true, 1983 | "optional": true, 1984 | "requires": { 1985 | "kind-of": "^6.0.0" 1986 | } 1987 | }, 1988 | "is-data-descriptor": { 1989 | "version": "1.0.0", 1990 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1991 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1992 | "dev": true, 1993 | "optional": true, 1994 | "requires": { 1995 | "kind-of": "^6.0.0" 1996 | } 1997 | }, 1998 | "is-descriptor": { 1999 | "version": "1.0.2", 2000 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2001 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2002 | "dev": true, 2003 | "optional": true, 2004 | "requires": { 2005 | "is-accessor-descriptor": "^1.0.0", 2006 | "is-data-descriptor": "^1.0.0", 2007 | "kind-of": "^6.0.2" 2008 | } 2009 | } 2010 | } 2011 | }, 2012 | "binary-extensions": { 2013 | "version": "1.13.1", 2014 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", 2015 | "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", 2016 | "dev": true, 2017 | "optional": true 2018 | }, 2019 | "bindings": { 2020 | "version": "1.5.0", 2021 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", 2022 | "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", 2023 | "dev": true, 2024 | "optional": true, 2025 | "requires": { 2026 | "file-uri-to-path": "1.0.0" 2027 | } 2028 | }, 2029 | "brace-expansion": { 2030 | "version": "1.1.11", 2031 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 2032 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 2033 | "dev": true, 2034 | "requires": { 2035 | "balanced-match": "^1.0.0", 2036 | "concat-map": "0.0.1" 2037 | } 2038 | }, 2039 | "braces": { 2040 | "version": "2.3.2", 2041 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 2042 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 2043 | "dev": true, 2044 | "optional": true, 2045 | "requires": { 2046 | "arr-flatten": "^1.1.0", 2047 | "array-unique": "^0.3.2", 2048 | "extend-shallow": "^2.0.1", 2049 | "fill-range": "^4.0.0", 2050 | "isobject": "^3.0.1", 2051 | "repeat-element": "^1.1.2", 2052 | "snapdragon": "^0.8.1", 2053 | "snapdragon-node": "^2.0.1", 2054 | "split-string": "^3.0.2", 2055 | "to-regex": "^3.0.1" 2056 | }, 2057 | "dependencies": { 2058 | "extend-shallow": { 2059 | "version": "2.0.1", 2060 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2061 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2062 | "dev": true, 2063 | "optional": true, 2064 | "requires": { 2065 | "is-extendable": "^0.1.0" 2066 | } 2067 | } 2068 | } 2069 | }, 2070 | "browser-stdout": { 2071 | "version": "1.3.0", 2072 | "resolved": "https://registry.npmjs.org/browser-stdout/-/browser-stdout-1.3.0.tgz", 2073 | "integrity": "sha1-81HTKWnTL6XXpVZxVCY9korjvR8=", 2074 | "dev": true 2075 | }, 2076 | "browserslist": { 2077 | "version": "4.7.3", 2078 | "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.7.3.tgz", 2079 | "integrity": "sha512-jWvmhqYpx+9EZm/FxcZSbUZyDEvDTLDi3nSAKbzEkyWvtI0mNSmUosey+5awDW1RUlrgXbQb5A6qY1xQH9U6MQ==", 2080 | "dev": true, 2081 | "requires": { 2082 | "caniuse-lite": "^1.0.30001010", 2083 | "electron-to-chromium": "^1.3.306", 2084 | "node-releases": "^1.1.40" 2085 | } 2086 | }, 2087 | "buffer-from": { 2088 | "version": "1.1.1", 2089 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 2090 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", 2091 | "dev": true 2092 | }, 2093 | "cache-base": { 2094 | "version": "1.0.1", 2095 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 2096 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 2097 | "dev": true, 2098 | "optional": true, 2099 | "requires": { 2100 | "collection-visit": "^1.0.0", 2101 | "component-emitter": "^1.2.1", 2102 | "get-value": "^2.0.6", 2103 | "has-value": "^1.0.0", 2104 | "isobject": "^3.0.1", 2105 | "set-value": "^2.0.0", 2106 | "to-object-path": "^0.3.0", 2107 | "union-value": "^1.0.0", 2108 | "unset-value": "^1.0.0" 2109 | } 2110 | }, 2111 | "camelcase": { 2112 | "version": "1.2.1", 2113 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", 2114 | "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", 2115 | "dev": true 2116 | }, 2117 | "caniuse-lite": { 2118 | "version": "1.0.30001010", 2119 | "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001010.tgz", 2120 | "integrity": "sha512-RA5GH9YjFNea4ZQszdWgh2SC+dpLiRAg4VDQS2b5JRI45OxmbGrYocYHTa9x0bKMQUE7uvHkNPNffUr+pCxSGw==", 2121 | "dev": true 2122 | }, 2123 | "center-align": { 2124 | "version": "0.1.3", 2125 | "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", 2126 | "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", 2127 | "dev": true, 2128 | "requires": { 2129 | "align-text": "^0.1.3", 2130 | "lazy-cache": "^1.0.3" 2131 | } 2132 | }, 2133 | "chai": { 2134 | "version": "3.5.0", 2135 | "resolved": "https://registry.npmjs.org/chai/-/chai-3.5.0.tgz", 2136 | "integrity": "sha1-TQJjewZ/6Vi9v906QOxW/vc3Mkc=", 2137 | "dev": true, 2138 | "requires": { 2139 | "assertion-error": "^1.0.1", 2140 | "deep-eql": "^0.1.3", 2141 | "type-detect": "^1.0.0" 2142 | } 2143 | }, 2144 | "chalk": { 2145 | "version": "2.4.2", 2146 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 2147 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 2148 | "dev": true, 2149 | "requires": { 2150 | "ansi-styles": "^3.2.1", 2151 | "escape-string-regexp": "^1.0.5", 2152 | "supports-color": "^5.3.0" 2153 | } 2154 | }, 2155 | "chokidar": { 2156 | "version": "2.1.8", 2157 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz", 2158 | "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==", 2159 | "dev": true, 2160 | "optional": true, 2161 | "requires": { 2162 | "anymatch": "^2.0.0", 2163 | "async-each": "^1.0.1", 2164 | "braces": "^2.3.2", 2165 | "fsevents": "^1.2.7", 2166 | "glob-parent": "^3.1.0", 2167 | "inherits": "^2.0.3", 2168 | "is-binary-path": "^1.0.0", 2169 | "is-glob": "^4.0.0", 2170 | "normalize-path": "^3.0.0", 2171 | "path-is-absolute": "^1.0.0", 2172 | "readdirp": "^2.2.1", 2173 | "upath": "^1.1.1" 2174 | } 2175 | }, 2176 | "class-utils": { 2177 | "version": "0.3.6", 2178 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 2179 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 2180 | "dev": true, 2181 | "optional": true, 2182 | "requires": { 2183 | "arr-union": "^3.1.0", 2184 | "define-property": "^0.2.5", 2185 | "isobject": "^3.0.0", 2186 | "static-extend": "^0.1.1" 2187 | }, 2188 | "dependencies": { 2189 | "define-property": { 2190 | "version": "0.2.5", 2191 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2192 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2193 | "dev": true, 2194 | "optional": true, 2195 | "requires": { 2196 | "is-descriptor": "^0.1.0" 2197 | } 2198 | } 2199 | } 2200 | }, 2201 | "cliui": { 2202 | "version": "2.1.0", 2203 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", 2204 | "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", 2205 | "dev": true, 2206 | "requires": { 2207 | "center-align": "^0.1.1", 2208 | "right-align": "^0.1.1", 2209 | "wordwrap": "0.0.2" 2210 | } 2211 | }, 2212 | "collection-visit": { 2213 | "version": "1.0.0", 2214 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 2215 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 2216 | "dev": true, 2217 | "optional": true, 2218 | "requires": { 2219 | "map-visit": "^1.0.0", 2220 | "object-visit": "^1.0.0" 2221 | } 2222 | }, 2223 | "color-convert": { 2224 | "version": "1.9.3", 2225 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 2226 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 2227 | "dev": true, 2228 | "requires": { 2229 | "color-name": "1.1.3" 2230 | } 2231 | }, 2232 | "color-name": { 2233 | "version": "1.1.3", 2234 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 2235 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 2236 | "dev": true 2237 | }, 2238 | "commander": { 2239 | "version": "2.20.3", 2240 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", 2241 | "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", 2242 | "dev": true 2243 | }, 2244 | "commondir": { 2245 | "version": "1.0.1", 2246 | "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", 2247 | "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", 2248 | "dev": true 2249 | }, 2250 | "component-emitter": { 2251 | "version": "1.3.0", 2252 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", 2253 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", 2254 | "dev": true, 2255 | "optional": true 2256 | }, 2257 | "concat-map": { 2258 | "version": "0.0.1", 2259 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 2260 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 2261 | "dev": true 2262 | }, 2263 | "convert-source-map": { 2264 | "version": "1.7.0", 2265 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", 2266 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", 2267 | "dev": true, 2268 | "requires": { 2269 | "safe-buffer": "~5.1.1" 2270 | } 2271 | }, 2272 | "copy-descriptor": { 2273 | "version": "0.1.1", 2274 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 2275 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 2276 | "dev": true, 2277 | "optional": true 2278 | }, 2279 | "core-js": { 2280 | "version": "2.6.10", 2281 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.10.tgz", 2282 | "integrity": "sha512-I39t74+4t+zau64EN1fE5v2W31Adtc/REhzWN+gWRRXg6WH5qAsZm62DHpQ1+Yhe4047T55jvzz7MUqF/dBBlA==", 2283 | "dev": true 2284 | }, 2285 | "core-js-compat": { 2286 | "version": "3.4.1", 2287 | "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.4.1.tgz", 2288 | "integrity": "sha512-YdeJI26gLc0CQJ9asLE5obEgBz2I0+CIgnoTbS2T0d5IPQw/OCgCIFR527RmpduxjrB3gSEHoGOCTq9sigOyfw==", 2289 | "dev": true, 2290 | "requires": { 2291 | "browserslist": "^4.7.2", 2292 | "semver": "^6.3.0" 2293 | }, 2294 | "dependencies": { 2295 | "semver": { 2296 | "version": "6.3.0", 2297 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 2298 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 2299 | "dev": true 2300 | } 2301 | } 2302 | }, 2303 | "core-util-is": { 2304 | "version": "1.0.2", 2305 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 2306 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 2307 | "dev": true, 2308 | "optional": true 2309 | }, 2310 | "debug": { 2311 | "version": "2.6.9", 2312 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 2313 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 2314 | "dev": true, 2315 | "requires": { 2316 | "ms": "2.0.0" 2317 | } 2318 | }, 2319 | "decamelize": { 2320 | "version": "1.2.0", 2321 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 2322 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 2323 | "dev": true 2324 | }, 2325 | "decode-uri-component": { 2326 | "version": "0.2.2", 2327 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz", 2328 | "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", 2329 | "dev": true, 2330 | "optional": true 2331 | }, 2332 | "deep-eql": { 2333 | "version": "0.1.3", 2334 | "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-0.1.3.tgz", 2335 | "integrity": "sha1-71WKyrjeJSBs1xOQbXTlaTDrafI=", 2336 | "dev": true, 2337 | "requires": { 2338 | "type-detect": "0.1.1" 2339 | }, 2340 | "dependencies": { 2341 | "type-detect": { 2342 | "version": "0.1.1", 2343 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-0.1.1.tgz", 2344 | "integrity": "sha1-C6XsKohWQORw6k6FBZcZANrFiCI=", 2345 | "dev": true 2346 | } 2347 | } 2348 | }, 2349 | "define-properties": { 2350 | "version": "1.1.3", 2351 | "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", 2352 | "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", 2353 | "dev": true, 2354 | "requires": { 2355 | "object-keys": "^1.0.12" 2356 | } 2357 | }, 2358 | "define-property": { 2359 | "version": "2.0.2", 2360 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 2361 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 2362 | "dev": true, 2363 | "optional": true, 2364 | "requires": { 2365 | "is-descriptor": "^1.0.2", 2366 | "isobject": "^3.0.1" 2367 | }, 2368 | "dependencies": { 2369 | "is-accessor-descriptor": { 2370 | "version": "1.0.0", 2371 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2372 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2373 | "dev": true, 2374 | "optional": true, 2375 | "requires": { 2376 | "kind-of": "^6.0.0" 2377 | } 2378 | }, 2379 | "is-data-descriptor": { 2380 | "version": "1.0.0", 2381 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2382 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2383 | "dev": true, 2384 | "optional": true, 2385 | "requires": { 2386 | "kind-of": "^6.0.0" 2387 | } 2388 | }, 2389 | "is-descriptor": { 2390 | "version": "1.0.2", 2391 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2392 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2393 | "dev": true, 2394 | "optional": true, 2395 | "requires": { 2396 | "is-accessor-descriptor": "^1.0.0", 2397 | "is-data-descriptor": "^1.0.0", 2398 | "kind-of": "^6.0.2" 2399 | } 2400 | } 2401 | } 2402 | }, 2403 | "detect-indent": { 2404 | "version": "4.0.0", 2405 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 2406 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 2407 | "dev": true, 2408 | "requires": { 2409 | "repeating": "^2.0.0" 2410 | } 2411 | }, 2412 | "diff": { 2413 | "version": "3.2.0", 2414 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz", 2415 | "integrity": "sha1-yc45Okt8vQsFinJck98pkCeGj/k=", 2416 | "dev": true 2417 | }, 2418 | "electron-to-chromium": { 2419 | "version": "1.3.306", 2420 | "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.306.tgz", 2421 | "integrity": "sha512-frDqXvrIROoYvikSKTIKbHbzO6M3/qC6kCIt/1FOa9kALe++c4VAJnwjSFvf1tYLEUsP2n9XZ4XSCyqc3l7A/A==", 2422 | "dev": true 2423 | }, 2424 | "escape-string-regexp": { 2425 | "version": "1.0.5", 2426 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 2427 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 2428 | "dev": true 2429 | }, 2430 | "esutils": { 2431 | "version": "2.0.3", 2432 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 2433 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 2434 | "dev": true 2435 | }, 2436 | "expand-brackets": { 2437 | "version": "2.1.4", 2438 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 2439 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 2440 | "dev": true, 2441 | "optional": true, 2442 | "requires": { 2443 | "debug": "^2.3.3", 2444 | "define-property": "^0.2.5", 2445 | "extend-shallow": "^2.0.1", 2446 | "posix-character-classes": "^0.1.0", 2447 | "regex-not": "^1.0.0", 2448 | "snapdragon": "^0.8.1", 2449 | "to-regex": "^3.0.1" 2450 | }, 2451 | "dependencies": { 2452 | "define-property": { 2453 | "version": "0.2.5", 2454 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 2455 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 2456 | "dev": true, 2457 | "optional": true, 2458 | "requires": { 2459 | "is-descriptor": "^0.1.0" 2460 | } 2461 | }, 2462 | "extend-shallow": { 2463 | "version": "2.0.1", 2464 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2465 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2466 | "dev": true, 2467 | "optional": true, 2468 | "requires": { 2469 | "is-extendable": "^0.1.0" 2470 | } 2471 | } 2472 | } 2473 | }, 2474 | "extend-shallow": { 2475 | "version": "3.0.2", 2476 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 2477 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 2478 | "dev": true, 2479 | "optional": true, 2480 | "requires": { 2481 | "assign-symbols": "^1.0.0", 2482 | "is-extendable": "^1.0.1" 2483 | }, 2484 | "dependencies": { 2485 | "is-extendable": { 2486 | "version": "1.0.1", 2487 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 2488 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 2489 | "dev": true, 2490 | "optional": true, 2491 | "requires": { 2492 | "is-plain-object": "^2.0.4" 2493 | } 2494 | } 2495 | } 2496 | }, 2497 | "extglob": { 2498 | "version": "2.0.4", 2499 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 2500 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 2501 | "dev": true, 2502 | "optional": true, 2503 | "requires": { 2504 | "array-unique": "^0.3.2", 2505 | "define-property": "^1.0.0", 2506 | "expand-brackets": "^2.1.4", 2507 | "extend-shallow": "^2.0.1", 2508 | "fragment-cache": "^0.2.1", 2509 | "regex-not": "^1.0.0", 2510 | "snapdragon": "^0.8.1", 2511 | "to-regex": "^3.0.1" 2512 | }, 2513 | "dependencies": { 2514 | "define-property": { 2515 | "version": "1.0.0", 2516 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 2517 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 2518 | "dev": true, 2519 | "optional": true, 2520 | "requires": { 2521 | "is-descriptor": "^1.0.0" 2522 | } 2523 | }, 2524 | "extend-shallow": { 2525 | "version": "2.0.1", 2526 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2527 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2528 | "dev": true, 2529 | "optional": true, 2530 | "requires": { 2531 | "is-extendable": "^0.1.0" 2532 | } 2533 | }, 2534 | "is-accessor-descriptor": { 2535 | "version": "1.0.0", 2536 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 2537 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 2538 | "dev": true, 2539 | "optional": true, 2540 | "requires": { 2541 | "kind-of": "^6.0.0" 2542 | } 2543 | }, 2544 | "is-data-descriptor": { 2545 | "version": "1.0.0", 2546 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 2547 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 2548 | "dev": true, 2549 | "optional": true, 2550 | "requires": { 2551 | "kind-of": "^6.0.0" 2552 | } 2553 | }, 2554 | "is-descriptor": { 2555 | "version": "1.0.2", 2556 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 2557 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 2558 | "dev": true, 2559 | "optional": true, 2560 | "requires": { 2561 | "is-accessor-descriptor": "^1.0.0", 2562 | "is-data-descriptor": "^1.0.0", 2563 | "kind-of": "^6.0.2" 2564 | } 2565 | } 2566 | } 2567 | }, 2568 | "file-uri-to-path": { 2569 | "version": "1.0.0", 2570 | "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", 2571 | "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", 2572 | "dev": true, 2573 | "optional": true 2574 | }, 2575 | "fill-range": { 2576 | "version": "4.0.0", 2577 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 2578 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 2579 | "dev": true, 2580 | "optional": true, 2581 | "requires": { 2582 | "extend-shallow": "^2.0.1", 2583 | "is-number": "^3.0.0", 2584 | "repeat-string": "^1.6.1", 2585 | "to-regex-range": "^2.1.0" 2586 | }, 2587 | "dependencies": { 2588 | "extend-shallow": { 2589 | "version": "2.0.1", 2590 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 2591 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 2592 | "dev": true, 2593 | "optional": true, 2594 | "requires": { 2595 | "is-extendable": "^0.1.0" 2596 | } 2597 | } 2598 | } 2599 | }, 2600 | "find-cache-dir": { 2601 | "version": "2.1.0", 2602 | "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", 2603 | "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", 2604 | "dev": true, 2605 | "requires": { 2606 | "commondir": "^1.0.1", 2607 | "make-dir": "^2.0.0", 2608 | "pkg-dir": "^3.0.0" 2609 | } 2610 | }, 2611 | "find-up": { 2612 | "version": "3.0.0", 2613 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", 2614 | "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", 2615 | "dev": true, 2616 | "requires": { 2617 | "locate-path": "^3.0.0" 2618 | } 2619 | }, 2620 | "for-in": { 2621 | "version": "1.0.2", 2622 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 2623 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 2624 | "dev": true, 2625 | "optional": true 2626 | }, 2627 | "fragment-cache": { 2628 | "version": "0.2.1", 2629 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 2630 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 2631 | "dev": true, 2632 | "optional": true, 2633 | "requires": { 2634 | "map-cache": "^0.2.2" 2635 | } 2636 | }, 2637 | "fs-readdir-recursive": { 2638 | "version": "1.1.0", 2639 | "resolved": "https://registry.npmjs.org/fs-readdir-recursive/-/fs-readdir-recursive-1.1.0.tgz", 2640 | "integrity": "sha512-GNanXlVr2pf02+sPN40XN8HG+ePaNcvM0q5mZBd668Obwb0yD5GiUbZOFgwn8kGMY6I3mdyDJzieUy3PTYyTRA==", 2641 | "dev": true 2642 | }, 2643 | "fs.realpath": { 2644 | "version": "1.0.0", 2645 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 2646 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 2647 | "dev": true 2648 | }, 2649 | "fsevents": { 2650 | "version": "1.2.13", 2651 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", 2652 | "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", 2653 | "dev": true, 2654 | "optional": true, 2655 | "requires": { 2656 | "bindings": "^1.5.0", 2657 | "nan": "^2.12.1" 2658 | } 2659 | }, 2660 | "function-bind": { 2661 | "version": "1.1.1", 2662 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 2663 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 2664 | "dev": true 2665 | }, 2666 | "get-value": { 2667 | "version": "2.0.6", 2668 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 2669 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 2670 | "dev": true, 2671 | "optional": true 2672 | }, 2673 | "glob": { 2674 | "version": "7.1.6", 2675 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 2676 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 2677 | "dev": true, 2678 | "requires": { 2679 | "fs.realpath": "^1.0.0", 2680 | "inflight": "^1.0.4", 2681 | "inherits": "2", 2682 | "minimatch": "^3.0.4", 2683 | "once": "^1.3.0", 2684 | "path-is-absolute": "^1.0.0" 2685 | } 2686 | }, 2687 | "glob-parent": { 2688 | "version": "3.1.0", 2689 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", 2690 | "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", 2691 | "dev": true, 2692 | "optional": true, 2693 | "requires": { 2694 | "is-glob": "^3.1.0", 2695 | "path-dirname": "^1.0.0" 2696 | }, 2697 | "dependencies": { 2698 | "is-glob": { 2699 | "version": "3.1.0", 2700 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", 2701 | "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", 2702 | "dev": true, 2703 | "optional": true, 2704 | "requires": { 2705 | "is-extglob": "^2.1.0" 2706 | } 2707 | } 2708 | } 2709 | }, 2710 | "globals": { 2711 | "version": "11.12.0", 2712 | "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz", 2713 | "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==", 2714 | "dev": true 2715 | }, 2716 | "graceful-fs": { 2717 | "version": "4.2.3", 2718 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.3.tgz", 2719 | "integrity": "sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==", 2720 | "dev": true, 2721 | "optional": true 2722 | }, 2723 | "graceful-readlink": { 2724 | "version": "1.0.1", 2725 | "resolved": "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz", 2726 | "integrity": "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=", 2727 | "dev": true 2728 | }, 2729 | "growl": { 2730 | "version": "1.9.2", 2731 | "resolved": "https://registry.npmjs.org/growl/-/growl-1.9.2.tgz", 2732 | "integrity": "sha1-Dqd0NxXbjY3ixe3hd14bRayFwC8=", 2733 | "dev": true 2734 | }, 2735 | "has-ansi": { 2736 | "version": "2.0.0", 2737 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 2738 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 2739 | "dev": true, 2740 | "requires": { 2741 | "ansi-regex": "^2.0.0" 2742 | } 2743 | }, 2744 | "has-flag": { 2745 | "version": "3.0.0", 2746 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 2747 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 2748 | "dev": true 2749 | }, 2750 | "has-symbols": { 2751 | "version": "1.0.1", 2752 | "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz", 2753 | "integrity": "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==", 2754 | "dev": true 2755 | }, 2756 | "has-value": { 2757 | "version": "1.0.0", 2758 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 2759 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 2760 | "dev": true, 2761 | "optional": true, 2762 | "requires": { 2763 | "get-value": "^2.0.6", 2764 | "has-values": "^1.0.0", 2765 | "isobject": "^3.0.0" 2766 | } 2767 | }, 2768 | "has-values": { 2769 | "version": "1.0.0", 2770 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 2771 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 2772 | "dev": true, 2773 | "optional": true, 2774 | "requires": { 2775 | "is-number": "^3.0.0", 2776 | "kind-of": "^4.0.0" 2777 | }, 2778 | "dependencies": { 2779 | "kind-of": { 2780 | "version": "4.0.0", 2781 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 2782 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 2783 | "dev": true, 2784 | "optional": true, 2785 | "requires": { 2786 | "is-buffer": "^1.1.5" 2787 | } 2788 | } 2789 | } 2790 | }, 2791 | "he": { 2792 | "version": "1.1.1", 2793 | "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", 2794 | "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", 2795 | "dev": true 2796 | }, 2797 | "home-or-tmp": { 2798 | "version": "2.0.0", 2799 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 2800 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 2801 | "dev": true, 2802 | "requires": { 2803 | "os-homedir": "^1.0.0", 2804 | "os-tmpdir": "^1.0.1" 2805 | } 2806 | }, 2807 | "inflight": { 2808 | "version": "1.0.6", 2809 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 2810 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 2811 | "dev": true, 2812 | "requires": { 2813 | "once": "^1.3.0", 2814 | "wrappy": "1" 2815 | } 2816 | }, 2817 | "inherits": { 2818 | "version": "2.0.4", 2819 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 2820 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 2821 | "dev": true 2822 | }, 2823 | "invariant": { 2824 | "version": "2.2.4", 2825 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 2826 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 2827 | "dev": true, 2828 | "requires": { 2829 | "loose-envify": "^1.0.0" 2830 | } 2831 | }, 2832 | "is-accessor-descriptor": { 2833 | "version": "0.1.6", 2834 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 2835 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 2836 | "dev": true, 2837 | "optional": true, 2838 | "requires": { 2839 | "kind-of": "^3.0.2" 2840 | }, 2841 | "dependencies": { 2842 | "kind-of": { 2843 | "version": "3.2.2", 2844 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2845 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2846 | "dev": true, 2847 | "optional": true, 2848 | "requires": { 2849 | "is-buffer": "^1.1.5" 2850 | } 2851 | } 2852 | } 2853 | }, 2854 | "is-binary-path": { 2855 | "version": "1.0.1", 2856 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 2857 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 2858 | "dev": true, 2859 | "optional": true, 2860 | "requires": { 2861 | "binary-extensions": "^1.0.0" 2862 | } 2863 | }, 2864 | "is-buffer": { 2865 | "version": "1.1.6", 2866 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 2867 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", 2868 | "dev": true 2869 | }, 2870 | "is-data-descriptor": { 2871 | "version": "0.1.4", 2872 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 2873 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 2874 | "dev": true, 2875 | "optional": true, 2876 | "requires": { 2877 | "kind-of": "^3.0.2" 2878 | }, 2879 | "dependencies": { 2880 | "kind-of": { 2881 | "version": "3.2.2", 2882 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2883 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2884 | "dev": true, 2885 | "optional": true, 2886 | "requires": { 2887 | "is-buffer": "^1.1.5" 2888 | } 2889 | } 2890 | } 2891 | }, 2892 | "is-descriptor": { 2893 | "version": "0.1.6", 2894 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 2895 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 2896 | "dev": true, 2897 | "optional": true, 2898 | "requires": { 2899 | "is-accessor-descriptor": "^0.1.6", 2900 | "is-data-descriptor": "^0.1.4", 2901 | "kind-of": "^5.0.0" 2902 | }, 2903 | "dependencies": { 2904 | "kind-of": { 2905 | "version": "5.1.0", 2906 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 2907 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 2908 | "dev": true, 2909 | "optional": true 2910 | } 2911 | } 2912 | }, 2913 | "is-extendable": { 2914 | "version": "0.1.1", 2915 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 2916 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 2917 | "dev": true, 2918 | "optional": true 2919 | }, 2920 | "is-extglob": { 2921 | "version": "2.1.1", 2922 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 2923 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 2924 | "dev": true, 2925 | "optional": true 2926 | }, 2927 | "is-finite": { 2928 | "version": "1.0.2", 2929 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", 2930 | "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", 2931 | "dev": true, 2932 | "requires": { 2933 | "number-is-nan": "^1.0.0" 2934 | } 2935 | }, 2936 | "is-glob": { 2937 | "version": "4.0.1", 2938 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 2939 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 2940 | "dev": true, 2941 | "optional": true, 2942 | "requires": { 2943 | "is-extglob": "^2.1.1" 2944 | } 2945 | }, 2946 | "is-number": { 2947 | "version": "3.0.0", 2948 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 2949 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 2950 | "dev": true, 2951 | "optional": true, 2952 | "requires": { 2953 | "kind-of": "^3.0.2" 2954 | }, 2955 | "dependencies": { 2956 | "kind-of": { 2957 | "version": "3.2.2", 2958 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2959 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2960 | "dev": true, 2961 | "optional": true, 2962 | "requires": { 2963 | "is-buffer": "^1.1.5" 2964 | } 2965 | } 2966 | } 2967 | }, 2968 | "is-plain-object": { 2969 | "version": "2.0.4", 2970 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 2971 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 2972 | "dev": true, 2973 | "optional": true, 2974 | "requires": { 2975 | "isobject": "^3.0.1" 2976 | } 2977 | }, 2978 | "is-windows": { 2979 | "version": "1.0.2", 2980 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 2981 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 2982 | "dev": true, 2983 | "optional": true 2984 | }, 2985 | "isarray": { 2986 | "version": "1.0.0", 2987 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2988 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 2989 | "dev": true, 2990 | "optional": true 2991 | }, 2992 | "isobject": { 2993 | "version": "3.0.1", 2994 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2995 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2996 | "dev": true, 2997 | "optional": true 2998 | }, 2999 | "js-levenshtein": { 3000 | "version": "1.1.6", 3001 | "resolved": "https://registry.npmjs.org/js-levenshtein/-/js-levenshtein-1.1.6.tgz", 3002 | "integrity": "sha512-X2BB11YZtrRqY4EnQcLX5Rh373zbK4alC1FW7D7MBhL2gtcC17cTnr6DmfHZeS0s2rTHjUTMMHfG7gO8SSdw+g==", 3003 | "dev": true 3004 | }, 3005 | "js-tokens": { 3006 | "version": "4.0.0", 3007 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 3008 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 3009 | "dev": true 3010 | }, 3011 | "jsesc": { 3012 | "version": "2.5.2", 3013 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", 3014 | "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", 3015 | "dev": true 3016 | }, 3017 | "json3": { 3018 | "version": "3.3.2", 3019 | "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.2.tgz", 3020 | "integrity": "sha1-PAQ0dD35Pi9cQq7nsZvLSDV19OE=", 3021 | "dev": true 3022 | }, 3023 | "json5": { 3024 | "version": "2.1.1", 3025 | "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.1.tgz", 3026 | "integrity": "sha512-l+3HXD0GEI3huGq1njuqtzYK8OYJyXMkOLtQ53pjWh89tvWS2h6l+1zMkYWqlb57+SiQodKZyvMEFb2X+KrFhQ==", 3027 | "dev": true, 3028 | "requires": { 3029 | "minimist": "^1.2.0" 3030 | } 3031 | }, 3032 | "kind-of": { 3033 | "version": "6.0.2", 3034 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", 3035 | "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", 3036 | "dev": true, 3037 | "optional": true 3038 | }, 3039 | "lazy-cache": { 3040 | "version": "1.0.4", 3041 | "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", 3042 | "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", 3043 | "dev": true 3044 | }, 3045 | "locate-path": { 3046 | "version": "3.0.0", 3047 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", 3048 | "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", 3049 | "dev": true, 3050 | "requires": { 3051 | "p-locate": "^3.0.0", 3052 | "path-exists": "^3.0.0" 3053 | } 3054 | }, 3055 | "lodash": { 3056 | "version": "4.17.21", 3057 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", 3058 | "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", 3059 | "dev": true 3060 | }, 3061 | "lodash._baseassign": { 3062 | "version": "3.2.0", 3063 | "resolved": "https://registry.npmjs.org/lodash._baseassign/-/lodash._baseassign-3.2.0.tgz", 3064 | "integrity": "sha1-jDigmVAPIVrQnlnxci/QxSv+Ck4=", 3065 | "dev": true, 3066 | "requires": { 3067 | "lodash._basecopy": "^3.0.0", 3068 | "lodash.keys": "^3.0.0" 3069 | } 3070 | }, 3071 | "lodash._basecopy": { 3072 | "version": "3.0.1", 3073 | "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", 3074 | "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=", 3075 | "dev": true 3076 | }, 3077 | "lodash._basecreate": { 3078 | "version": "3.0.3", 3079 | "resolved": "https://registry.npmjs.org/lodash._basecreate/-/lodash._basecreate-3.0.3.tgz", 3080 | "integrity": "sha1-G8ZhYU2qf8MRt9A78WgGoCE8+CE=", 3081 | "dev": true 3082 | }, 3083 | "lodash._getnative": { 3084 | "version": "3.9.1", 3085 | "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", 3086 | "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=", 3087 | "dev": true 3088 | }, 3089 | "lodash._isiterateecall": { 3090 | "version": "3.0.9", 3091 | "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", 3092 | "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=", 3093 | "dev": true 3094 | }, 3095 | "lodash.create": { 3096 | "version": "3.1.1", 3097 | "resolved": "https://registry.npmjs.org/lodash.create/-/lodash.create-3.1.1.tgz", 3098 | "integrity": "sha1-1/KEnw29p+BGgruM1yqwIkYd6+c=", 3099 | "dev": true, 3100 | "requires": { 3101 | "lodash._baseassign": "^3.0.0", 3102 | "lodash._basecreate": "^3.0.0", 3103 | "lodash._isiterateecall": "^3.0.0" 3104 | } 3105 | }, 3106 | "lodash.isarguments": { 3107 | "version": "3.1.0", 3108 | "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", 3109 | "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=", 3110 | "dev": true 3111 | }, 3112 | "lodash.isarray": { 3113 | "version": "3.0.4", 3114 | "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", 3115 | "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=", 3116 | "dev": true 3117 | }, 3118 | "lodash.keys": { 3119 | "version": "3.1.2", 3120 | "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", 3121 | "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", 3122 | "dev": true, 3123 | "requires": { 3124 | "lodash._getnative": "^3.0.0", 3125 | "lodash.isarguments": "^3.0.0", 3126 | "lodash.isarray": "^3.0.0" 3127 | } 3128 | }, 3129 | "longest": { 3130 | "version": "1.0.1", 3131 | "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", 3132 | "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", 3133 | "dev": true 3134 | }, 3135 | "loose-envify": { 3136 | "version": "1.4.0", 3137 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 3138 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 3139 | "dev": true, 3140 | "requires": { 3141 | "js-tokens": "^3.0.0 || ^4.0.0" 3142 | } 3143 | }, 3144 | "make-dir": { 3145 | "version": "2.1.0", 3146 | "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", 3147 | "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", 3148 | "dev": true, 3149 | "requires": { 3150 | "pify": "^4.0.1", 3151 | "semver": "^5.6.0" 3152 | } 3153 | }, 3154 | "map-cache": { 3155 | "version": "0.2.2", 3156 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 3157 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 3158 | "dev": true, 3159 | "optional": true 3160 | }, 3161 | "map-visit": { 3162 | "version": "1.0.0", 3163 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 3164 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 3165 | "dev": true, 3166 | "optional": true, 3167 | "requires": { 3168 | "object-visit": "^1.0.0" 3169 | } 3170 | }, 3171 | "micromatch": { 3172 | "version": "3.1.10", 3173 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 3174 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 3175 | "dev": true, 3176 | "optional": true, 3177 | "requires": { 3178 | "arr-diff": "^4.0.0", 3179 | "array-unique": "^0.3.2", 3180 | "braces": "^2.3.1", 3181 | "define-property": "^2.0.2", 3182 | "extend-shallow": "^3.0.2", 3183 | "extglob": "^2.0.4", 3184 | "fragment-cache": "^0.2.1", 3185 | "kind-of": "^6.0.2", 3186 | "nanomatch": "^1.2.9", 3187 | "object.pick": "^1.3.0", 3188 | "regex-not": "^1.0.0", 3189 | "snapdragon": "^0.8.1", 3190 | "to-regex": "^3.0.2" 3191 | } 3192 | }, 3193 | "minimatch": { 3194 | "version": "3.1.2", 3195 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 3196 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 3197 | "dev": true, 3198 | "requires": { 3199 | "brace-expansion": "^1.1.7" 3200 | } 3201 | }, 3202 | "minimist": { 3203 | "version": "1.2.0", 3204 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", 3205 | "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", 3206 | "dev": true 3207 | }, 3208 | "mixin-deep": { 3209 | "version": "1.3.2", 3210 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", 3211 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", 3212 | "dev": true, 3213 | "optional": true, 3214 | "requires": { 3215 | "for-in": "^1.0.2", 3216 | "is-extendable": "^1.0.1" 3217 | }, 3218 | "dependencies": { 3219 | "is-extendable": { 3220 | "version": "1.0.1", 3221 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 3222 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 3223 | "dev": true, 3224 | "optional": true, 3225 | "requires": { 3226 | "is-plain-object": "^2.0.4" 3227 | } 3228 | } 3229 | } 3230 | }, 3231 | "mkdirp": { 3232 | "version": "0.5.1", 3233 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", 3234 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", 3235 | "dev": true, 3236 | "requires": { 3237 | "minimist": "0.0.8" 3238 | }, 3239 | "dependencies": { 3240 | "minimist": { 3241 | "version": "0.0.8", 3242 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", 3243 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", 3244 | "dev": true 3245 | } 3246 | } 3247 | }, 3248 | "mocha": { 3249 | "version": "3.5.3", 3250 | "resolved": "https://registry.npmjs.org/mocha/-/mocha-3.5.3.tgz", 3251 | "integrity": "sha512-/6na001MJWEtYxHOV1WLfsmR4YIynkUEhBwzsb+fk2qmQ3iqsi258l/Q2MWHJMImAcNpZ8DEdYAK72NHoIQ9Eg==", 3252 | "dev": true, 3253 | "requires": { 3254 | "browser-stdout": "1.3.0", 3255 | "commander": "2.9.0", 3256 | "debug": "2.6.8", 3257 | "diff": "3.2.0", 3258 | "escape-string-regexp": "1.0.5", 3259 | "glob": "7.1.1", 3260 | "growl": "1.9.2", 3261 | "he": "1.1.1", 3262 | "json3": "3.3.2", 3263 | "lodash.create": "3.1.1", 3264 | "mkdirp": "0.5.1", 3265 | "supports-color": "3.1.2" 3266 | }, 3267 | "dependencies": { 3268 | "commander": { 3269 | "version": "2.9.0", 3270 | "resolved": "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz", 3271 | "integrity": "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=", 3272 | "dev": true, 3273 | "requires": { 3274 | "graceful-readlink": ">= 1.0.0" 3275 | } 3276 | }, 3277 | "debug": { 3278 | "version": "2.6.8", 3279 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.8.tgz", 3280 | "integrity": "sha1-5zFTHKLt4n0YgiJCfaF4IdaP9Pw=", 3281 | "dev": true, 3282 | "requires": { 3283 | "ms": "2.0.0" 3284 | } 3285 | }, 3286 | "glob": { 3287 | "version": "7.1.1", 3288 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.1.tgz", 3289 | "integrity": "sha1-gFIR3wT6rxxjo2ADBs31reULLsg=", 3290 | "dev": true, 3291 | "requires": { 3292 | "fs.realpath": "^1.0.0", 3293 | "inflight": "^1.0.4", 3294 | "inherits": "2", 3295 | "minimatch": "^3.0.2", 3296 | "once": "^1.3.0", 3297 | "path-is-absolute": "^1.0.0" 3298 | } 3299 | }, 3300 | "has-flag": { 3301 | "version": "1.0.0", 3302 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", 3303 | "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", 3304 | "dev": true 3305 | }, 3306 | "supports-color": { 3307 | "version": "3.1.2", 3308 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.1.2.tgz", 3309 | "integrity": "sha1-cqJiiU2dQIuVbKBf83su2KbiotU=", 3310 | "dev": true, 3311 | "requires": { 3312 | "has-flag": "^1.0.0" 3313 | } 3314 | } 3315 | } 3316 | }, 3317 | "ms": { 3318 | "version": "2.0.0", 3319 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 3320 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 3321 | "dev": true 3322 | }, 3323 | "nan": { 3324 | "version": "2.14.0", 3325 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", 3326 | "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", 3327 | "dev": true, 3328 | "optional": true 3329 | }, 3330 | "nanomatch": { 3331 | "version": "1.2.13", 3332 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", 3333 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", 3334 | "dev": true, 3335 | "optional": true, 3336 | "requires": { 3337 | "arr-diff": "^4.0.0", 3338 | "array-unique": "^0.3.2", 3339 | "define-property": "^2.0.2", 3340 | "extend-shallow": "^3.0.2", 3341 | "fragment-cache": "^0.2.1", 3342 | "is-windows": "^1.0.2", 3343 | "kind-of": "^6.0.2", 3344 | "object.pick": "^1.3.0", 3345 | "regex-not": "^1.0.0", 3346 | "snapdragon": "^0.8.1", 3347 | "to-regex": "^3.0.1" 3348 | } 3349 | }, 3350 | "node-modules-regexp": { 3351 | "version": "1.0.0", 3352 | "resolved": "https://registry.npmjs.org/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz", 3353 | "integrity": "sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA=", 3354 | "dev": true 3355 | }, 3356 | "node-releases": { 3357 | "version": "1.1.40", 3358 | "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.40.tgz", 3359 | "integrity": "sha512-r4LPcC5b/bS8BdtWH1fbeK88ib/wg9aqmg6/s3ngNLn2Ewkn/8J6Iw3P9RTlfIAdSdvYvQl2thCY5Y+qTAQ2iQ==", 3360 | "dev": true, 3361 | "requires": { 3362 | "semver": "^6.3.0" 3363 | }, 3364 | "dependencies": { 3365 | "semver": { 3366 | "version": "6.3.0", 3367 | "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", 3368 | "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", 3369 | "dev": true 3370 | } 3371 | } 3372 | }, 3373 | "normalize-path": { 3374 | "version": "3.0.0", 3375 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", 3376 | "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", 3377 | "dev": true, 3378 | "optional": true 3379 | }, 3380 | "number-is-nan": { 3381 | "version": "1.0.1", 3382 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 3383 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 3384 | "dev": true 3385 | }, 3386 | "object-copy": { 3387 | "version": "0.1.0", 3388 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 3389 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 3390 | "dev": true, 3391 | "optional": true, 3392 | "requires": { 3393 | "copy-descriptor": "^0.1.0", 3394 | "define-property": "^0.2.5", 3395 | "kind-of": "^3.0.3" 3396 | }, 3397 | "dependencies": { 3398 | "define-property": { 3399 | "version": "0.2.5", 3400 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3401 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3402 | "dev": true, 3403 | "optional": true, 3404 | "requires": { 3405 | "is-descriptor": "^0.1.0" 3406 | } 3407 | }, 3408 | "kind-of": { 3409 | "version": "3.2.2", 3410 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3411 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3412 | "dev": true, 3413 | "optional": true, 3414 | "requires": { 3415 | "is-buffer": "^1.1.5" 3416 | } 3417 | } 3418 | } 3419 | }, 3420 | "object-keys": { 3421 | "version": "1.1.1", 3422 | "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", 3423 | "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", 3424 | "dev": true 3425 | }, 3426 | "object-visit": { 3427 | "version": "1.0.1", 3428 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 3429 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 3430 | "dev": true, 3431 | "optional": true, 3432 | "requires": { 3433 | "isobject": "^3.0.0" 3434 | } 3435 | }, 3436 | "object.assign": { 3437 | "version": "4.1.0", 3438 | "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", 3439 | "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", 3440 | "dev": true, 3441 | "requires": { 3442 | "define-properties": "^1.1.2", 3443 | "function-bind": "^1.1.1", 3444 | "has-symbols": "^1.0.0", 3445 | "object-keys": "^1.0.11" 3446 | } 3447 | }, 3448 | "object.pick": { 3449 | "version": "1.3.0", 3450 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 3451 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 3452 | "dev": true, 3453 | "optional": true, 3454 | "requires": { 3455 | "isobject": "^3.0.1" 3456 | } 3457 | }, 3458 | "once": { 3459 | "version": "1.4.0", 3460 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3461 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3462 | "dev": true, 3463 | "requires": { 3464 | "wrappy": "1" 3465 | } 3466 | }, 3467 | "os-homedir": { 3468 | "version": "1.0.2", 3469 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 3470 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 3471 | "dev": true 3472 | }, 3473 | "os-tmpdir": { 3474 | "version": "1.0.2", 3475 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 3476 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 3477 | "dev": true 3478 | }, 3479 | "p-limit": { 3480 | "version": "2.2.1", 3481 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.1.tgz", 3482 | "integrity": "sha512-85Tk+90UCVWvbDavCLKPOLC9vvY8OwEX/RtKF+/1OADJMVlFfEHOiMTPVyxg7mk/dKa+ipdHm0OUkTvCpMTuwg==", 3483 | "dev": true, 3484 | "requires": { 3485 | "p-try": "^2.0.0" 3486 | } 3487 | }, 3488 | "p-locate": { 3489 | "version": "3.0.0", 3490 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", 3491 | "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", 3492 | "dev": true, 3493 | "requires": { 3494 | "p-limit": "^2.0.0" 3495 | } 3496 | }, 3497 | "p-try": { 3498 | "version": "2.2.0", 3499 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", 3500 | "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", 3501 | "dev": true 3502 | }, 3503 | "pascalcase": { 3504 | "version": "0.1.1", 3505 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 3506 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 3507 | "dev": true, 3508 | "optional": true 3509 | }, 3510 | "path-dirname": { 3511 | "version": "1.0.2", 3512 | "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz", 3513 | "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=", 3514 | "dev": true, 3515 | "optional": true 3516 | }, 3517 | "path-exists": { 3518 | "version": "3.0.0", 3519 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 3520 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 3521 | "dev": true 3522 | }, 3523 | "path-is-absolute": { 3524 | "version": "1.0.1", 3525 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3526 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 3527 | "dev": true 3528 | }, 3529 | "path-parse": { 3530 | "version": "1.0.7", 3531 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", 3532 | "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", 3533 | "dev": true 3534 | }, 3535 | "pify": { 3536 | "version": "4.0.1", 3537 | "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", 3538 | "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", 3539 | "dev": true 3540 | }, 3541 | "pirates": { 3542 | "version": "4.0.1", 3543 | "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.1.tgz", 3544 | "integrity": "sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA==", 3545 | "dev": true, 3546 | "requires": { 3547 | "node-modules-regexp": "^1.0.0" 3548 | } 3549 | }, 3550 | "pkg-dir": { 3551 | "version": "3.0.0", 3552 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", 3553 | "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", 3554 | "dev": true, 3555 | "requires": { 3556 | "find-up": "^3.0.0" 3557 | } 3558 | }, 3559 | "posix-character-classes": { 3560 | "version": "0.1.1", 3561 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 3562 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 3563 | "dev": true, 3564 | "optional": true 3565 | }, 3566 | "private": { 3567 | "version": "0.1.8", 3568 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 3569 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", 3570 | "dev": true 3571 | }, 3572 | "process-nextick-args": { 3573 | "version": "2.0.1", 3574 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 3575 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", 3576 | "dev": true, 3577 | "optional": true 3578 | }, 3579 | "readable-stream": { 3580 | "version": "2.3.6", 3581 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", 3582 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", 3583 | "dev": true, 3584 | "optional": true, 3585 | "requires": { 3586 | "core-util-is": "~1.0.0", 3587 | "inherits": "~2.0.3", 3588 | "isarray": "~1.0.0", 3589 | "process-nextick-args": "~2.0.0", 3590 | "safe-buffer": "~5.1.1", 3591 | "string_decoder": "~1.1.1", 3592 | "util-deprecate": "~1.0.1" 3593 | } 3594 | }, 3595 | "readdirp": { 3596 | "version": "2.2.1", 3597 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", 3598 | "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", 3599 | "dev": true, 3600 | "optional": true, 3601 | "requires": { 3602 | "graceful-fs": "^4.1.11", 3603 | "micromatch": "^3.1.10", 3604 | "readable-stream": "^2.0.2" 3605 | } 3606 | }, 3607 | "regenerate": { 3608 | "version": "1.4.0", 3609 | "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", 3610 | "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", 3611 | "dev": true 3612 | }, 3613 | "regenerate-unicode-properties": { 3614 | "version": "8.1.0", 3615 | "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.1.0.tgz", 3616 | "integrity": "sha512-LGZzkgtLY79GeXLm8Dp0BVLdQlWICzBnJz/ipWUgo59qBaZ+BHtq51P2q1uVZlppMuUAT37SDk39qUbjTWB7bA==", 3617 | "dev": true, 3618 | "requires": { 3619 | "regenerate": "^1.4.0" 3620 | } 3621 | }, 3622 | "regenerator-runtime": { 3623 | "version": "0.11.1", 3624 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", 3625 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", 3626 | "dev": true 3627 | }, 3628 | "regenerator-transform": { 3629 | "version": "0.14.1", 3630 | "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.1.tgz", 3631 | "integrity": "sha512-flVuee02C3FKRISbxhXl9mGzdbWUVHubl1SMaknjxkFB1/iqpJhArQUvRxOOPEc/9tAiX0BaQ28FJH10E4isSQ==", 3632 | "dev": true, 3633 | "requires": { 3634 | "private": "^0.1.6" 3635 | } 3636 | }, 3637 | "regex-not": { 3638 | "version": "1.0.2", 3639 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 3640 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 3641 | "dev": true, 3642 | "optional": true, 3643 | "requires": { 3644 | "extend-shallow": "^3.0.2", 3645 | "safe-regex": "^1.1.0" 3646 | } 3647 | }, 3648 | "regexpu-core": { 3649 | "version": "4.6.0", 3650 | "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.6.0.tgz", 3651 | "integrity": "sha512-YlVaefl8P5BnFYOITTNzDvan1ulLOiXJzCNZxduTIosN17b87h3bvG9yHMoHaRuo88H4mQ06Aodj5VtYGGGiTg==", 3652 | "dev": true, 3653 | "requires": { 3654 | "regenerate": "^1.4.0", 3655 | "regenerate-unicode-properties": "^8.1.0", 3656 | "regjsgen": "^0.5.0", 3657 | "regjsparser": "^0.6.0", 3658 | "unicode-match-property-ecmascript": "^1.0.4", 3659 | "unicode-match-property-value-ecmascript": "^1.1.0" 3660 | } 3661 | }, 3662 | "regjsgen": { 3663 | "version": "0.5.1", 3664 | "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.1.tgz", 3665 | "integrity": "sha512-5qxzGZjDs9w4tzT3TPhCJqWdCc3RLYwy9J2NB0nm5Lz+S273lvWcpjaTGHsT1dc6Hhfq41uSEOw8wBmxrKOuyg==", 3666 | "dev": true 3667 | }, 3668 | "regjsparser": { 3669 | "version": "0.6.0", 3670 | "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.0.tgz", 3671 | "integrity": "sha512-RQ7YyokLiQBomUJuUG8iGVvkgOLxwyZM8k6d3q5SAXpg4r5TZJZigKFvC6PpD+qQ98bCDC5YelPeA3EucDoNeQ==", 3672 | "dev": true, 3673 | "requires": { 3674 | "jsesc": "~0.5.0" 3675 | }, 3676 | "dependencies": { 3677 | "jsesc": { 3678 | "version": "0.5.0", 3679 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", 3680 | "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", 3681 | "dev": true 3682 | } 3683 | } 3684 | }, 3685 | "remove-trailing-separator": { 3686 | "version": "1.1.0", 3687 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 3688 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 3689 | "dev": true, 3690 | "optional": true 3691 | }, 3692 | "repeat-element": { 3693 | "version": "1.1.3", 3694 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", 3695 | "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", 3696 | "dev": true, 3697 | "optional": true 3698 | }, 3699 | "repeat-string": { 3700 | "version": "1.6.1", 3701 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 3702 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 3703 | "dev": true 3704 | }, 3705 | "repeating": { 3706 | "version": "2.0.1", 3707 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 3708 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 3709 | "dev": true, 3710 | "requires": { 3711 | "is-finite": "^1.0.0" 3712 | } 3713 | }, 3714 | "resolve": { 3715 | "version": "1.12.0", 3716 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.12.0.tgz", 3717 | "integrity": "sha512-B/dOmuoAik5bKcD6s6nXDCjzUKnaDvdkRyAk6rsmsKLipWj4797iothd7jmmUhWTfinVMU+wc56rYKsit2Qy4w==", 3718 | "dev": true, 3719 | "requires": { 3720 | "path-parse": "^1.0.6" 3721 | } 3722 | }, 3723 | "resolve-url": { 3724 | "version": "0.2.1", 3725 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 3726 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 3727 | "dev": true, 3728 | "optional": true 3729 | }, 3730 | "ret": { 3731 | "version": "0.1.15", 3732 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 3733 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 3734 | "dev": true, 3735 | "optional": true 3736 | }, 3737 | "right-align": { 3738 | "version": "0.1.3", 3739 | "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", 3740 | "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", 3741 | "dev": true, 3742 | "requires": { 3743 | "align-text": "^0.1.1" 3744 | } 3745 | }, 3746 | "safe-buffer": { 3747 | "version": "5.1.2", 3748 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 3749 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 3750 | "dev": true 3751 | }, 3752 | "safe-regex": { 3753 | "version": "1.1.0", 3754 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 3755 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 3756 | "dev": true, 3757 | "optional": true, 3758 | "requires": { 3759 | "ret": "~0.1.10" 3760 | } 3761 | }, 3762 | "semver": { 3763 | "version": "5.7.1", 3764 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 3765 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 3766 | "dev": true 3767 | }, 3768 | "set-value": { 3769 | "version": "2.0.1", 3770 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", 3771 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", 3772 | "dev": true, 3773 | "optional": true, 3774 | "requires": { 3775 | "extend-shallow": "^2.0.1", 3776 | "is-extendable": "^0.1.1", 3777 | "is-plain-object": "^2.0.3", 3778 | "split-string": "^3.0.1" 3779 | }, 3780 | "dependencies": { 3781 | "extend-shallow": { 3782 | "version": "2.0.1", 3783 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3784 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3785 | "dev": true, 3786 | "optional": true, 3787 | "requires": { 3788 | "is-extendable": "^0.1.0" 3789 | } 3790 | } 3791 | } 3792 | }, 3793 | "slash": { 3794 | "version": "2.0.0", 3795 | "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", 3796 | "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", 3797 | "dev": true 3798 | }, 3799 | "snapdragon": { 3800 | "version": "0.8.2", 3801 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 3802 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 3803 | "dev": true, 3804 | "optional": true, 3805 | "requires": { 3806 | "base": "^0.11.1", 3807 | "debug": "^2.2.0", 3808 | "define-property": "^0.2.5", 3809 | "extend-shallow": "^2.0.1", 3810 | "map-cache": "^0.2.2", 3811 | "source-map": "^0.5.6", 3812 | "source-map-resolve": "^0.5.0", 3813 | "use": "^3.1.0" 3814 | }, 3815 | "dependencies": { 3816 | "define-property": { 3817 | "version": "0.2.5", 3818 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3819 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3820 | "dev": true, 3821 | "optional": true, 3822 | "requires": { 3823 | "is-descriptor": "^0.1.0" 3824 | } 3825 | }, 3826 | "extend-shallow": { 3827 | "version": "2.0.1", 3828 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3829 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3830 | "dev": true, 3831 | "optional": true, 3832 | "requires": { 3833 | "is-extendable": "^0.1.0" 3834 | } 3835 | } 3836 | } 3837 | }, 3838 | "snapdragon-node": { 3839 | "version": "2.1.1", 3840 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 3841 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 3842 | "dev": true, 3843 | "optional": true, 3844 | "requires": { 3845 | "define-property": "^1.0.0", 3846 | "isobject": "^3.0.0", 3847 | "snapdragon-util": "^3.0.1" 3848 | }, 3849 | "dependencies": { 3850 | "define-property": { 3851 | "version": "1.0.0", 3852 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 3853 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 3854 | "dev": true, 3855 | "optional": true, 3856 | "requires": { 3857 | "is-descriptor": "^1.0.0" 3858 | } 3859 | }, 3860 | "is-accessor-descriptor": { 3861 | "version": "1.0.0", 3862 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 3863 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 3864 | "dev": true, 3865 | "optional": true, 3866 | "requires": { 3867 | "kind-of": "^6.0.0" 3868 | } 3869 | }, 3870 | "is-data-descriptor": { 3871 | "version": "1.0.0", 3872 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 3873 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 3874 | "dev": true, 3875 | "optional": true, 3876 | "requires": { 3877 | "kind-of": "^6.0.0" 3878 | } 3879 | }, 3880 | "is-descriptor": { 3881 | "version": "1.0.2", 3882 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 3883 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 3884 | "dev": true, 3885 | "optional": true, 3886 | "requires": { 3887 | "is-accessor-descriptor": "^1.0.0", 3888 | "is-data-descriptor": "^1.0.0", 3889 | "kind-of": "^6.0.2" 3890 | } 3891 | } 3892 | } 3893 | }, 3894 | "snapdragon-util": { 3895 | "version": "3.0.1", 3896 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 3897 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 3898 | "dev": true, 3899 | "optional": true, 3900 | "requires": { 3901 | "kind-of": "^3.2.0" 3902 | }, 3903 | "dependencies": { 3904 | "kind-of": { 3905 | "version": "3.2.2", 3906 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3907 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3908 | "dev": true, 3909 | "optional": true, 3910 | "requires": { 3911 | "is-buffer": "^1.1.5" 3912 | } 3913 | } 3914 | } 3915 | }, 3916 | "source-map": { 3917 | "version": "0.5.7", 3918 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 3919 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 3920 | "dev": true 3921 | }, 3922 | "source-map-resolve": { 3923 | "version": "0.5.2", 3924 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", 3925 | "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", 3926 | "dev": true, 3927 | "optional": true, 3928 | "requires": { 3929 | "atob": "^2.1.1", 3930 | "decode-uri-component": "^0.2.0", 3931 | "resolve-url": "^0.2.1", 3932 | "source-map-url": "^0.4.0", 3933 | "urix": "^0.1.0" 3934 | } 3935 | }, 3936 | "source-map-support": { 3937 | "version": "0.5.16", 3938 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.16.tgz", 3939 | "integrity": "sha512-efyLRJDr68D9hBBNIPWFjhpFzURh+KJykQwvMyW5UiZzYwoF6l4YMMDIJJEyFWxWCqfyxLzz6tSfUFR+kXXsVQ==", 3940 | "dev": true, 3941 | "requires": { 3942 | "buffer-from": "^1.0.0", 3943 | "source-map": "^0.6.0" 3944 | }, 3945 | "dependencies": { 3946 | "source-map": { 3947 | "version": "0.6.1", 3948 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 3949 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 3950 | "dev": true 3951 | } 3952 | } 3953 | }, 3954 | "source-map-url": { 3955 | "version": "0.4.0", 3956 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 3957 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 3958 | "dev": true, 3959 | "optional": true 3960 | }, 3961 | "split-string": { 3962 | "version": "3.1.0", 3963 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 3964 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 3965 | "dev": true, 3966 | "optional": true, 3967 | "requires": { 3968 | "extend-shallow": "^3.0.0" 3969 | } 3970 | }, 3971 | "static-extend": { 3972 | "version": "0.1.2", 3973 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 3974 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 3975 | "dev": true, 3976 | "optional": true, 3977 | "requires": { 3978 | "define-property": "^0.2.5", 3979 | "object-copy": "^0.1.0" 3980 | }, 3981 | "dependencies": { 3982 | "define-property": { 3983 | "version": "0.2.5", 3984 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3985 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3986 | "dev": true, 3987 | "optional": true, 3988 | "requires": { 3989 | "is-descriptor": "^0.1.0" 3990 | } 3991 | } 3992 | } 3993 | }, 3994 | "string_decoder": { 3995 | "version": "1.1.1", 3996 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 3997 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 3998 | "dev": true, 3999 | "optional": true, 4000 | "requires": { 4001 | "safe-buffer": "~5.1.0" 4002 | } 4003 | }, 4004 | "strip-ansi": { 4005 | "version": "3.0.1", 4006 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 4007 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 4008 | "dev": true, 4009 | "requires": { 4010 | "ansi-regex": "^2.0.0" 4011 | } 4012 | }, 4013 | "supports-color": { 4014 | "version": "5.5.0", 4015 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 4016 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 4017 | "dev": true, 4018 | "requires": { 4019 | "has-flag": "^3.0.0" 4020 | } 4021 | }, 4022 | "to-fast-properties": { 4023 | "version": "2.0.0", 4024 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", 4025 | "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", 4026 | "dev": true 4027 | }, 4028 | "to-object-path": { 4029 | "version": "0.3.0", 4030 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 4031 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 4032 | "dev": true, 4033 | "optional": true, 4034 | "requires": { 4035 | "kind-of": "^3.0.2" 4036 | }, 4037 | "dependencies": { 4038 | "kind-of": { 4039 | "version": "3.2.2", 4040 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4041 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4042 | "dev": true, 4043 | "optional": true, 4044 | "requires": { 4045 | "is-buffer": "^1.1.5" 4046 | } 4047 | } 4048 | } 4049 | }, 4050 | "to-regex": { 4051 | "version": "3.0.2", 4052 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 4053 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 4054 | "dev": true, 4055 | "optional": true, 4056 | "requires": { 4057 | "define-property": "^2.0.2", 4058 | "extend-shallow": "^3.0.2", 4059 | "regex-not": "^1.0.2", 4060 | "safe-regex": "^1.1.0" 4061 | } 4062 | }, 4063 | "to-regex-range": { 4064 | "version": "2.1.1", 4065 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 4066 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 4067 | "dev": true, 4068 | "optional": true, 4069 | "requires": { 4070 | "is-number": "^3.0.0", 4071 | "repeat-string": "^1.6.1" 4072 | } 4073 | }, 4074 | "trim-right": { 4075 | "version": "1.0.1", 4076 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 4077 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", 4078 | "dev": true 4079 | }, 4080 | "type-detect": { 4081 | "version": "1.0.0", 4082 | "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-1.0.0.tgz", 4083 | "integrity": "sha1-diIXzAbbJY7EiQihKY6LlRIejqI=", 4084 | "dev": true 4085 | }, 4086 | "uglify-js": { 4087 | "version": "2.8.29", 4088 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", 4089 | "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", 4090 | "dev": true, 4091 | "requires": { 4092 | "source-map": "~0.5.1", 4093 | "uglify-to-browserify": "~1.0.0", 4094 | "yargs": "~3.10.0" 4095 | } 4096 | }, 4097 | "uglify-to-browserify": { 4098 | "version": "1.0.2", 4099 | "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", 4100 | "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", 4101 | "dev": true, 4102 | "optional": true 4103 | }, 4104 | "unicode-canonical-property-names-ecmascript": { 4105 | "version": "1.0.4", 4106 | "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz", 4107 | "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==", 4108 | "dev": true 4109 | }, 4110 | "unicode-match-property-ecmascript": { 4111 | "version": "1.0.4", 4112 | "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz", 4113 | "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==", 4114 | "dev": true, 4115 | "requires": { 4116 | "unicode-canonical-property-names-ecmascript": "^1.0.4", 4117 | "unicode-property-aliases-ecmascript": "^1.0.4" 4118 | } 4119 | }, 4120 | "unicode-match-property-value-ecmascript": { 4121 | "version": "1.1.0", 4122 | "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.1.0.tgz", 4123 | "integrity": "sha512-hDTHvaBk3RmFzvSl0UVrUmC3PuW9wKVnpoUDYH0JDkSIovzw+J5viQmeYHxVSBptubnr7PbH2e0fnpDRQnQl5g==", 4124 | "dev": true 4125 | }, 4126 | "unicode-property-aliases-ecmascript": { 4127 | "version": "1.0.5", 4128 | "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.0.5.tgz", 4129 | "integrity": "sha512-L5RAqCfXqAwR3RriF8pM0lU0w4Ryf/GgzONwi6KnL1taJQa7x1TCxdJnILX59WIGOwR57IVxn7Nej0fz1Ny6fw==", 4130 | "dev": true 4131 | }, 4132 | "union-value": { 4133 | "version": "1.0.1", 4134 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", 4135 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", 4136 | "dev": true, 4137 | "optional": true, 4138 | "requires": { 4139 | "arr-union": "^3.1.0", 4140 | "get-value": "^2.0.6", 4141 | "is-extendable": "^0.1.1", 4142 | "set-value": "^2.0.1" 4143 | } 4144 | }, 4145 | "unset-value": { 4146 | "version": "1.0.0", 4147 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 4148 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 4149 | "dev": true, 4150 | "optional": true, 4151 | "requires": { 4152 | "has-value": "^0.3.1", 4153 | "isobject": "^3.0.0" 4154 | }, 4155 | "dependencies": { 4156 | "has-value": { 4157 | "version": "0.3.1", 4158 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 4159 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 4160 | "dev": true, 4161 | "optional": true, 4162 | "requires": { 4163 | "get-value": "^2.0.3", 4164 | "has-values": "^0.1.4", 4165 | "isobject": "^2.0.0" 4166 | }, 4167 | "dependencies": { 4168 | "isobject": { 4169 | "version": "2.1.0", 4170 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 4171 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 4172 | "dev": true, 4173 | "optional": true, 4174 | "requires": { 4175 | "isarray": "1.0.0" 4176 | } 4177 | } 4178 | } 4179 | }, 4180 | "has-values": { 4181 | "version": "0.1.4", 4182 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 4183 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 4184 | "dev": true, 4185 | "optional": true 4186 | } 4187 | } 4188 | }, 4189 | "upath": { 4190 | "version": "1.2.0", 4191 | "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz", 4192 | "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==", 4193 | "dev": true, 4194 | "optional": true 4195 | }, 4196 | "urix": { 4197 | "version": "0.1.0", 4198 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 4199 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 4200 | "dev": true, 4201 | "optional": true 4202 | }, 4203 | "use": { 4204 | "version": "3.1.1", 4205 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", 4206 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", 4207 | "dev": true, 4208 | "optional": true 4209 | }, 4210 | "util-deprecate": { 4211 | "version": "1.0.2", 4212 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4213 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 4214 | "dev": true, 4215 | "optional": true 4216 | }, 4217 | "window-size": { 4218 | "version": "0.1.0", 4219 | "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", 4220 | "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", 4221 | "dev": true 4222 | }, 4223 | "wordwrap": { 4224 | "version": "0.0.2", 4225 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", 4226 | "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", 4227 | "dev": true 4228 | }, 4229 | "wrappy": { 4230 | "version": "1.0.2", 4231 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 4232 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 4233 | "dev": true 4234 | }, 4235 | "yargs": { 4236 | "version": "3.10.0", 4237 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", 4238 | "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", 4239 | "dev": true, 4240 | "requires": { 4241 | "camelcase": "^1.0.2", 4242 | "cliui": "^2.1.0", 4243 | "decamelize": "^1.0.0", 4244 | "window-size": "0.1.0" 4245 | } 4246 | } 4247 | } 4248 | } 4249 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "babel-plugin-jsx-remove-data-test-id", 3 | "version": "2.1.3", 4 | "description": "babel plugin to remove data-test-id attributes", 5 | "main": "lib/index.js", 6 | "keywords": [ 7 | "babel", 8 | "plugin", 9 | "tdd", 10 | "tests", 11 | "specs", 12 | "qa", 13 | "strip", 14 | "className", 15 | "jsx", 16 | "react", 17 | "unit testing", 18 | "e2e testing", 19 | "test-id" 20 | ], 21 | "repository": "git://github.com/coderas/babel-plugin-jsx-remove-data-test-id.git", 22 | "scripts": { 23 | "build": "babel src --out-dir lib", 24 | "prepare": "npm test && npm run build", 25 | "test": "mocha \"**/*.spec.js\" --compilers js:@babel/register --reporter spec" 26 | }, 27 | "author": "Rich Gorman", 28 | "license": "MIT", 29 | "peerDependencies": { 30 | "@babel/core": "^7.0.0" 31 | }, 32 | "devDependencies": { 33 | "@babel/cli": "^7.2.3", 34 | "@babel/core": "^7.2.2", 35 | "@babel/plugin-transform-arrow-functions": "^7.2.0", 36 | "@babel/plugin-transform-react-jsx": "^7.3.0", 37 | "@babel/preset-env": "^7.3.1", 38 | "@babel/register": "^7.0.0", 39 | "babel-core": "^6.26.3", 40 | "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", 41 | "babel-plugin-transform-react-jsx": "^6.8.0", 42 | "babel-preset-env": "^1.7.0", 43 | "chai": "^3.5.0", 44 | "mocha": "^3.1.2", 45 | "uglify-js": "^2.7.3" 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /src/index.js: -------------------------------------------------------------------------------- 1 | const getAttributeIdentifiers = options => { 2 | if(!options || typeof(options.attributes) === 'undefined') return ['data-test-id', 'data-testid']; 3 | 4 | if(Array.isArray(options.attributes)) { 5 | if(options.attributes.length === 0) { 6 | throw new Error('option attributes must be an array with at least one element'); 7 | } 8 | 9 | if (options.attributes.length !== options.attributes.filter(attr => attr && typeof(attr) === 'string').length) { 10 | throw new Error('all items in the option attributes must be non empty strings'); 11 | } 12 | 13 | return options.attributes; 14 | } 15 | 16 | if(!options.attributes || typeof(options.attributes) !== 'string') { 17 | throw new Error('option attributes must be a non empty string or an array with non empty strings'); 18 | } 19 | 20 | return [options.attributes]; 21 | } 22 | 23 | const RemoveDataTestIds = ({ types: t }) => { 24 | const visitor = { 25 | ObjectProperty: (path, state) => { 26 | const attributeIdentifiers = getAttributeIdentifiers(state.opts); 27 | 28 | const isTestIdProperty = (key) => { 29 | return attributeIdentifiers.find((attribute) => { 30 | return t.isStringLiteral(key, { value: attribute }) 31 | }); 32 | }; 33 | 34 | if (isTestIdProperty(path.node.key)) 35 | path.remove(); 36 | }, 37 | JSXOpeningElement: (path, state) => { 38 | if (path.node.hasStripped) { 39 | return; 40 | } 41 | 42 | const attributeIdentifiers = getAttributeIdentifiers(state.opts); 43 | 44 | const validTestIdAttributes = attr => { 45 | const isIdent = attributeIdentifiers.find( 46 | attribute => { 47 | return t.isJSXIdentifier(attr.name, { name: attribute }); 48 | } 49 | ); 50 | return t.isJSXAttribute(attr) && isIdent; 51 | }; 52 | 53 | const replaceClassNameValues = attr => { 54 | const matchingAttrs = currentAttr => { 55 | if (attr !== currentAttr) { 56 | return currentAttr; 57 | } 58 | }; 59 | 60 | const isDefined = value => typeof value !== 'undefined'; 61 | 62 | const attrs = ( 63 | path.node.attributes 64 | .map(matchingAttrs) 65 | .filter(isDefined) 66 | ); 67 | 68 | const node = t.jSXOpeningElement( 69 | path.node.name, 70 | attrs, 71 | path.node.selfClosing 72 | ); 73 | node.hasStripped = true; 74 | path.replaceWith(node); 75 | }; 76 | 77 | path.node.attributes 78 | .filter(validTestIdAttributes) 79 | .forEach(replaceClassNameValues); 80 | } 81 | }; 82 | 83 | return { 84 | visitor 85 | }; 86 | }; 87 | 88 | export default RemoveDataTestIds; 89 | -------------------------------------------------------------------------------- /tests/remove-data-test-id.spec.js: -------------------------------------------------------------------------------- 1 | import * as babel6 from 'babel-core'; 2 | import * as babel7 from '@babel/core'; 3 | import { expect } from 'chai'; 4 | import { minify } from 'uglify-js'; 5 | 6 | const uglify = code => minify(code, { 7 | fromString: true, 8 | mangle: false 9 | }).code; 10 | 11 | const runTests = (label, transform) => { 12 | describe(label, () => { 13 | describe('jsx-remove-data-test-id', () => { 14 | it('does not replace data-something-else', () => { 15 | const code = '

hi, finally it is cake time

'; 16 | const actual = transform(code, { usePlugin: true }); 17 | const expected = transform(code); 18 | expect(uglify(actual)).to.equal(uglify(expected)); 19 | }); 20 | 21 | it('does not remove attributes that contain "data-test-id" in part only', () => { 22 | const code = '

hi, finally it is cake time

'; 23 | const actual = transform(code, { usePlugin: true }); 24 | const expected = transform(code); 25 | expect(uglify(actual)).to.equal(uglify(expected)); 26 | }); 27 | 28 | it('removes data-test-id', () => { 29 | const code = '

'; 30 | const expectedCode = '

'; 31 | const actual = transform(code, { usePlugin: true }); 32 | const expected = transform(expectedCode); 33 | expect(uglify(actual)).to.equal(uglify(expected)); 34 | }); 35 | 36 | it('removes data-test-id funcs', () => { 37 | const code = '

{}}>

'; 38 | const expectedCode = '

'; 39 | const actual = transform(code, { usePlugin: true }); 40 | const expected = transform(expectedCode); 41 | expect(uglify(actual)).to.equal(uglify(expected)); 42 | }); 43 | 44 | it('removes data-test-id bools', () => { 45 | const code = '

'; 46 | const expectedCode = '

'; 47 | const actual = transform(code, { usePlugin: true }); 48 | const expected = transform(expectedCode); 49 | expect(uglify(actual)).to.equal(uglify(expected)); 50 | }); 51 | 52 | it('removes data-test-id properties from objects and their nested objects', () => { 53 | const code = '

'; 54 | const expectedCode = '

'; 55 | const actual = transform(code, { usePlugin: true }); 56 | const expected = transform(expectedCode); 57 | expect(uglify(actual)).to.equal(uglify(expected)); 58 | }) 59 | 60 | it('removes data-test-id properties from nested objects', () => { 61 | const code = '

'; 62 | const expectedCode = '

'; 63 | const actual = transform(code, { usePlugin: true }); 64 | const expected = transform(expectedCode); 65 | expect(uglify(actual)).to.equal(uglify(expected)); 66 | }) 67 | 68 | it('does not remove empty object expressions and their relative JSX attributes', () => { 69 | const code = '

'; 70 | const expectedCode = '

'; 71 | const actual = transform(code, { usePlugin: true }); 72 | const expected = transform(expectedCode); 73 | expect(uglify(actual)).to.equal(uglify(expected)); 74 | }) 75 | 76 | it('does not remove properties that contain "data-test-id" in part only', () => { 77 | const code = '

'; 78 | const expectedCode = '

'; 79 | const actual = transform(code, { usePlugin: true }); 80 | const expected = transform(expectedCode); 81 | expect(uglify(actual)).to.equal(uglify(expected)); 82 | }) 83 | 84 | describe('with invalid options.attributes', () => { 85 | it('throws error when attributes is empty string', () => { 86 | const code = '

'; 87 | const expectedCode = '

'; 88 | const action = () => transform(code, { 89 | useErroneousAttributes: true, 90 | attributes: '' 91 | }); 92 | expect(action).to.throw(); 93 | }); 94 | 95 | it('throws error when attributes is empty array', () => { 96 | const code = '

'; 97 | const expectedCode = '

'; 98 | const action = () => transform(code, { 99 | useErroneousAttributes: true, 100 | attributes: [] 101 | }); 102 | expect(action).to.throw(); 103 | }); 104 | }) 105 | 106 | describe('with valid options.attributes', () => { 107 | it('does not remove attributes that match options.attributes in part only', () => { 108 | const code = '

hi, finally it is cake time

'; 109 | const actual = transform(code, { useValidAttributes: true }); 110 | const expected = transform(code); 111 | expect(uglify(actual)).to.equal(uglify(expected)); 112 | }); 113 | 114 | it('removes options.attributes', () => { 115 | const code = '

'; 116 | const expectedCode = '

'; 117 | const actual = transform(code, { useValidAttributes: true }); 118 | const expected = transform(expectedCode); 119 | expect(uglify(actual)).to.equal(uglify(expected)); 120 | }); 121 | 122 | it('removes options.attributes funcs', () => { 123 | const code = '

{}} useless-attr={() => {}}>

'; 124 | const expectedCode = '

'; 125 | const actual = transform(code, { useValidAttributes: true }); 126 | const expected = transform(expectedCode); 127 | expect(uglify(actual)).to.equal(uglify(expected)); 128 | }); 129 | 130 | it('removes options.attributes bools', () => { 131 | const code = '

'; 132 | const expectedCode = '

'; 133 | const actual = transform(code, { useValidAttributes: true }); 134 | const expected = transform(expectedCode); 135 | expect(uglify(actual)).to.equal(uglify(expected)); 136 | }); 137 | }) 138 | }); 139 | }) 140 | } 141 | 142 | runTests( 143 | "babel6", 144 | ( 145 | code, 146 | { 147 | useErroneousAttributes = false, 148 | useValidAttributes = false, 149 | usePlugin = false, 150 | attributes 151 | } = {} 152 | ) => { 153 | let plugins; 154 | if (useErroneousAttributes) { 155 | plugins = [ 156 | ["./src", { attributes }], 157 | ["transform-react-jsx", { pragma: "j" }], 158 | ["transform-es2015-arrow-functions", {}] 159 | ]; 160 | } else if (useValidAttributes) { 161 | plugins = [ 162 | ["./src", { attributes: ["selenium-id", "useless-attr"] }], 163 | ["transform-react-jsx", { pragma: "j" }], 164 | ["transform-es2015-arrow-functions", {}] 165 | ]; 166 | } else { 167 | plugins = [ 168 | usePlugin && "./src", 169 | ["transform-react-jsx", { pragma: "j" }], 170 | ["transform-es2015-arrow-functions", {}] 171 | ].filter(Boolean); 172 | } 173 | return babel6.transform(code, { plugins }).code; 174 | } 175 | ); 176 | runTests( 177 | "babel7", 178 | ( 179 | code, 180 | { 181 | useErroneousAttributes = false, 182 | useValidAttributes = false, 183 | usePlugin = false, 184 | attributes 185 | } = {} 186 | ) => { 187 | let plugins 188 | if (useErroneousAttributes) { 189 | plugins = [ 190 | ['./src', { attributes }], 191 | ["@babel/transform-react-jsx", { pragma: "j" }], 192 | ["@babel/transform-arrow-functions", {}] 193 | ] 194 | } else if (useValidAttributes) { 195 | plugins = [ 196 | ['./src', { attributes: ['selenium-id', 'useless-attr'] }], 197 | ["@babel/transform-react-jsx", { pragma: "j" }], 198 | ["@babel/transform-arrow-functions", {}] 199 | ] 200 | } else { 201 | plugins = [ 202 | usePlugin && "./src", 203 | ["@babel/transform-react-jsx", { pragma: "j" }], 204 | ["@babel/transform-arrow-functions", {}] 205 | ].filter(Boolean) 206 | } 207 | return babel7.transformSync(code, { plugins }).code; 208 | } 209 | ); 210 | --------------------------------------------------------------------------------