├── .eslintignore ├── .eslintrc ├── .gitignore ├── .npmignore ├── .travis.yml ├── CHANGELOG.md ├── LICENSE ├── README.md ├── __snapshots__ └── test.js.snap ├── add-markers.js ├── index.js ├── package-lock.json ├── package.json ├── test.js └── yarn.lock /.eslintignore: -------------------------------------------------------------------------------- 1 | .gitignore -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "eslint:recommended", 3 | "env": { 4 | "node": true, 5 | "es6": true, 6 | "jest": true 7 | }, 8 | "plugins": ["node"], 9 | "rules": { 10 | "node/no-unsupported-features": ["error", {"version": 6}], 11 | "node/no-missing-require": ["error"] 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | *.log 3 | .DS_Store 4 | .idea 5 | coverage 6 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | __snapshots__ 2 | package-lock.json 3 | yarn.lock -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 6 4 | cache: yarn 5 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 0.3.4 4 | 5 | - Fixed dependencies listed in package.json. See 6 | https://github.com/j0lv3r4/mdx-prism/issues/8 7 | 8 | ## 0.3.1+fork.0.1.0 9 | 10 | - Fork from @mapbox/rehype-prism 11 | - Add markers following react-refractor example 12 | - Add highlight line support following gatsby-remark-prismjs example 13 | 14 | ## 0.3.1 15 | 16 | - Allow uppercase language names in the `language-*` class (e.g. `language-CSS`). 17 | 18 | ## 0.3.0 19 | 20 | - Add `language-*` class to the `
` tag of the output, because many Prism themes rely on this undocumented pattern.
21 | 
22 | ## 0.2.0
23 | 
24 | - **Breaking:** Add `options.ignoreMissing` which defaults to `false`.
25 |   If you are relying on *silent* failures to highlight when the language is not defined, you'll need to use this option.
26 | - **Breaking:** Remove support for `nohighlight` and `no-highlight` classes.
27 |   You can skip highlighting for any given `` by *not* putting a `language-*` class on it.
28 | - Under the hood, use [refractor](https://github.com/wooorm/refractor) instead of Parse5 and PrismJS directly.
29 | 
30 | ## 0.1.0
31 | 
32 | - Initial release.
33 | 


--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
 1 | MIT License
 2 | 
 3 | Copyright (c) 2017 Mapbox
 4 | 
 5 | Permission is hereby granted, free of charge, to any person obtaining a copy
 6 | of this software and associated documentation files (the "Software"), to deal
 7 | in the Software without restriction, including without limitation the rights
 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 | 
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 | 
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 | 


--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
  1 | # mdx-prism
  2 | 
  3 | This is a fork of [@mapbox/rehype-prism](https://github.com/mapbox/rehype-prism) that adds line highlighting capabilities, e.g.:
  4 | 
  5 | Snippet of code from Dan Abramov’s blog
  6 | 
  7 | [rehype](https://github.com/wooorm/rehype) plugin to highlight code blocks in HTML with [Prism] (via [refractor]).
  8 | 
  9 | (If you would like to highlight code blocks with [highlight.js](https://github.com/isagalaev/highlight.js), instead, check out [rehype-highlight](https://github.com/wooorm/rehype-highlight).)
 10 | 
 11 | **Best suited for usage in Node.**
 12 | If you would like to perform syntax highlighting *in the browser*, you should look into [less heavy ways to use refractor](https://github.com/wooorm/refractor#browser).
 13 | 
 14 | ## Installation
 15 | 
 16 | ```
 17 | npm install mdx-prism
 18 | ```
 19 | 
 20 | ## API
 21 | 
 22 | `rehype().use(rehypePrism, [options])`
 23 | 
 24 | Syntax highlights `pre > code`.
 25 | Under the hood, it uses [refractor], which is a virtual version of [Prism].
 26 | 
 27 | The code language is configured by setting a `language-{name}` class on the `` element.
 28 | You can use any [language supported by refractor].
 29 | 
 30 | If no `language-{name}` class is found on a `` element, it will be skipped.
 31 | 
 32 | ### options
 33 | 
 34 | #### options.ignoreMissing
 35 | 
 36 | Type: `boolean`.
 37 | Default: `false`.
 38 | 
 39 | By default, if `{name}` does not correspond to a [language supported by refractor] an error will be thrown.
 40 | 
 41 | If you would like to silently skip `` elements with invalid languages, set this option to `true`.
 42 | 
 43 | ## Usage
 44 | 
 45 | Use this package [as a rehype plugin](https://github.com/rehypejs/rehype/blob/master/doc/plugins.md#using-plugins).
 46 | 
 47 | Some examples of how you might do that:
 48 | 
 49 | ```js
 50 | const rehype = require('rehype');
 51 | const mdxPrism = require('mdx-prism');
 52 | 
 53 | rehype()
 54 |   .use(mdxPrism)
 55 |   .process(/* some html */);
 56 | ```
 57 | 
 58 | ```js
 59 | const unified = require('unified');
 60 | const rehypeParse = require('rehype-parse');
 61 | const mdxPrism = require('mdx-prism');
 62 | 
 63 | unified()
 64 |   .use(rehypeParse)
 65 |   .use(mdxPrism)
 66 |   .processSync(/* some html */);
 67 | ```
 68 | 
 69 | If you'd like to get syntax highlighting in Markdown, parse the Markdown (with remark-parse), convert it to rehype, then use this plugin.
 70 | 
 71 | ```js
 72 | const unified = require('unified');
 73 | const remarkParse = require('remark-parse');
 74 | const remarkRehype = require('remark-rehype');
 75 | const mdxPrism = require('mdx-prism');
 76 | 
 77 | unified()
 78 |   .use(remarkParse)
 79 |   .use(remarkRehype)
 80 |   .use(mdxPrism)
 81 |   .process(/* some markdown */);
 82 | ```
 83 | 
 84 | ## FAQ
 85 | 
 86 | 
87 | Why does mdx-prism copy the language- class to the <pre> tag? 88 | 89 | [Prism recommends](https://prismjs.com/#basic-usage) adding the `language-` class to the `` tag like this: 90 | 91 | ```html 92 |
p { color: red }
93 | ``` 94 | 95 | It bases this recommendation on the HTML5 spec. However, an undocumented behavior of their JavaScript is that, in the process of highlighting the code, they also copy the `language-` class to the `
` tag:
 96 | 
 97 |   ```html
 98 |   
p { color: red }
99 | ``` 100 | 101 | This resulted in many [Prism themes](https://github.com/PrismJS/prism-themes) relying on this behavior by using CSS selectors like `pre[class*="language-"]`. So in order for people using mdx-prism to get the most out of these themes, we decided to do the same. 102 |
103 | 104 | [Prism]: http://prismjs.com/ 105 | 106 | [refractor]: https://github.com/wooorm/refractor 107 | 108 | [language supported by refractor]: https://github.com/wooorm/refractor#syntaxes 109 | -------------------------------------------------------------------------------- /__snapshots__/test.js.snap: -------------------------------------------------------------------------------- 1 | // Jest Snapshot v1, https://goo.gl/fbAQLP 2 | 3 | exports[`copies the language- class to pre tag 1`] = `"
"`; 4 | 5 | exports[`does nothing to code block without language- class 1`] = `"
p { color: red }
"`; 6 | 7 | exports[`finds code and highlights 1`] = ` 8 | "
9 |

foo

10 |
p { color: red }
11 |
" 12 | `; 13 | 14 | exports[`handles newlines in code correctly 1`] = ` 15 | "
16 |

foo

17 |
interface Thing {
 18 | 
a: number 19 |
} 20 |
21 |
22 |
" 23 | `; 24 | 25 | exports[`handles newlines in code correctly 2`] = ` 26 | Object { 27 | "children": Array [ 28 | Object { 29 | "children": Array [ 30 | Object { 31 | "position": Object { 32 | "end": Object { 33 | "column": 5, 34 | "line": 2, 35 | "offset": 10, 36 | }, 37 | "start": Object { 38 | "column": 6, 39 | "line": 1, 40 | "offset": 5, 41 | }, 42 | }, 43 | "type": "text", 44 | "value": " 45 | ", 46 | }, 47 | Object { 48 | "children": Array [ 49 | Object { 50 | "position": Object { 51 | "end": Object { 52 | "column": 11, 53 | "line": 2, 54 | "offset": 16, 55 | }, 56 | "start": Object { 57 | "column": 8, 58 | "line": 2, 59 | "offset": 13, 60 | }, 61 | }, 62 | "type": "text", 63 | "value": "foo", 64 | }, 65 | ], 66 | "position": Object { 67 | "end": Object { 68 | "column": 15, 69 | "line": 2, 70 | "offset": 20, 71 | }, 72 | "start": Object { 73 | "column": 5, 74 | "line": 2, 75 | "offset": 10, 76 | }, 77 | }, 78 | "properties": Object {}, 79 | "tagName": "p", 80 | "type": "element", 81 | }, 82 | Object { 83 | "position": Object { 84 | "end": Object { 85 | "column": 5, 86 | "line": 3, 87 | "offset": 25, 88 | }, 89 | "start": Object { 90 | "column": 15, 91 | "line": 2, 92 | "offset": 20, 93 | }, 94 | }, 95 | "type": "text", 96 | "value": " 97 | ", 98 | }, 99 | Object { 100 | "children": Array [ 101 | Object { 102 | "children": Array [ 103 | Object { 104 | "children": Array [ 105 | Object { 106 | "lineNumber": 1, 107 | "position": Object { 108 | "end": Object { 109 | "column": 38, 110 | "line": 1, 111 | "offset": 37, 112 | }, 113 | "start": Object { 114 | "column": 29, 115 | "line": 1, 116 | "offset": 28, 117 | }, 118 | }, 119 | "type": "text", 120 | "value": "interface", 121 | }, 122 | ], 123 | "lineNumber": 1, 124 | "position": Object { 125 | "end": Object { 126 | "column": 45, 127 | "line": 1, 128 | "offset": 44, 129 | }, 130 | "start": Object { 131 | "column": 1, 132 | "line": 1, 133 | "offset": 0, 134 | }, 135 | }, 136 | "properties": Object { 137 | "className": Array [ 138 | "token", 139 | "keyword", 140 | ], 141 | }, 142 | "tagName": "span", 143 | "type": "element", 144 | }, 145 | Object { 146 | "lineNumber": 1, 147 | "position": Object { 148 | "end": Object { 149 | "column": 46, 150 | "line": 1, 151 | "offset": 45, 152 | }, 153 | "start": Object { 154 | "column": 45, 155 | "line": 1, 156 | "offset": 44, 157 | }, 158 | }, 159 | "type": "text", 160 | "value": " ", 161 | }, 162 | Object { 163 | "children": Array [ 164 | Object { 165 | "children": Array [ 166 | Object { 167 | "lineNumber": 1, 168 | "position": Object { 169 | "end": Object { 170 | "column": 119, 171 | "line": 1, 172 | "offset": 118, 173 | }, 174 | "start": Object { 175 | "column": 114, 176 | "line": 1, 177 | "offset": 113, 178 | }, 179 | }, 180 | "type": "text", 181 | "value": "Thing", 182 | }, 183 | ], 184 | "lineNumber": 1, 185 | "position": Object { 186 | "end": Object { 187 | "column": 126, 188 | "line": 1, 189 | "offset": 125, 190 | }, 191 | "start": Object { 192 | "column": 77, 193 | "line": 1, 194 | "offset": 76, 195 | }, 196 | }, 197 | "properties": Object { 198 | "className": Array [ 199 | "token", 200 | "maybe-class-name", 201 | ], 202 | }, 203 | "tagName": "span", 204 | "type": "element", 205 | }, 206 | ], 207 | "lineNumber": 1, 208 | "position": Object { 209 | "end": Object { 210 | "column": 133, 211 | "line": 1, 212 | "offset": 132, 213 | }, 214 | "start": Object { 215 | "column": 46, 216 | "line": 1, 217 | "offset": 45, 218 | }, 219 | }, 220 | "properties": Object { 221 | "className": Array [ 222 | "token", 223 | "class-name", 224 | ], 225 | }, 226 | "tagName": "span", 227 | "type": "element", 228 | }, 229 | Object { 230 | "lineNumber": 1, 231 | "position": Object { 232 | "end": Object { 233 | "column": 134, 234 | "line": 1, 235 | "offset": 133, 236 | }, 237 | "start": Object { 238 | "column": 133, 239 | "line": 1, 240 | "offset": 132, 241 | }, 242 | }, 243 | "type": "text", 244 | "value": " ", 245 | }, 246 | Object { 247 | "children": Array [ 248 | Object { 249 | "lineNumber": 1, 250 | "position": Object { 251 | "end": Object { 252 | "column": 167, 253 | "line": 1, 254 | "offset": 166, 255 | }, 256 | "start": Object { 257 | "column": 166, 258 | "line": 1, 259 | "offset": 165, 260 | }, 261 | }, 262 | "type": "text", 263 | "value": "{", 264 | }, 265 | ], 266 | "lineNumber": 1, 267 | "position": Object { 268 | "end": Object { 269 | "column": 174, 270 | "line": 1, 271 | "offset": 173, 272 | }, 273 | "start": Object { 274 | "column": 134, 275 | "line": 1, 276 | "offset": 133, 277 | }, 278 | }, 279 | "properties": Object { 280 | "className": Array [ 281 | "token", 282 | "punctuation", 283 | ], 284 | }, 285 | "tagName": "span", 286 | "type": "element", 287 | }, 288 | Object { 289 | "lineNumber": 1, 290 | "type": "text", 291 | "value": " 292 | ", 293 | }, 294 | Object { 295 | "children": Array [ 296 | Object { 297 | "lineNumber": 2, 298 | "type": "text", 299 | "value": "a", 300 | }, 301 | Object { 302 | "children": Array [ 303 | Object { 304 | "lineNumber": 2, 305 | "position": Object { 306 | "end": Object { 307 | "column": 32, 308 | "line": 2, 309 | "offset": 205, 310 | }, 311 | "start": Object { 312 | "column": 31, 313 | "line": 2, 314 | "offset": 204, 315 | }, 316 | }, 317 | "type": "text", 318 | "value": ":", 319 | }, 320 | ], 321 | "lineNumber": 2, 322 | "position": Object { 323 | "end": Object { 324 | "column": 39, 325 | "line": 2, 326 | "offset": 212, 327 | }, 328 | "start": Object { 329 | "column": 2, 330 | "line": 2, 331 | "offset": 175, 332 | }, 333 | }, 334 | "properties": Object { 335 | "className": Array [ 336 | "token", 337 | "operator", 338 | ], 339 | }, 340 | "tagName": "span", 341 | "type": "element", 342 | }, 343 | Object { 344 | "lineNumber": 2, 345 | "position": Object { 346 | "end": Object { 347 | "column": 40, 348 | "line": 2, 349 | "offset": 213, 350 | }, 351 | "start": Object { 352 | "column": 39, 353 | "line": 2, 354 | "offset": 212, 355 | }, 356 | }, 357 | "type": "text", 358 | "value": " ", 359 | }, 360 | Object { 361 | "children": Array [ 362 | Object { 363 | "lineNumber": 2, 364 | "position": Object { 365 | "end": Object { 366 | "column": 74, 367 | "line": 2, 368 | "offset": 247, 369 | }, 370 | "start": Object { 371 | "column": 68, 372 | "line": 2, 373 | "offset": 241, 374 | }, 375 | }, 376 | "type": "text", 377 | "value": "number", 378 | }, 379 | ], 380 | "lineNumber": 2, 381 | "position": Object { 382 | "end": Object { 383 | "column": 81, 384 | "line": 2, 385 | "offset": 254, 386 | }, 387 | "start": Object { 388 | "column": 40, 389 | "line": 2, 390 | "offset": 213, 391 | }, 392 | }, 393 | "properties": Object { 394 | "className": Array [ 395 | "token", 396 | "builtin", 397 | ], 398 | }, 399 | "tagName": "span", 400 | "type": "element", 401 | }, 402 | Object { 403 | "lineNumber": 2, 404 | "type": "text", 405 | "value": " 406 | ", 407 | }, 408 | ], 409 | "lineNumber": 2, 410 | "properties": Object { 411 | "className": "mdx-marker", 412 | }, 413 | "tagName": "div", 414 | "type": "element", 415 | }, 416 | Object { 417 | "children": Array [ 418 | Object { 419 | "lineNumber": 3, 420 | "position": Object { 421 | "end": Object { 422 | "column": 34, 423 | "line": 3, 424 | "offset": 288, 425 | }, 426 | "start": Object { 427 | "column": 33, 428 | "line": 3, 429 | "offset": 287, 430 | }, 431 | }, 432 | "type": "text", 433 | "value": "}", 434 | }, 435 | ], 436 | "lineNumber": 3, 437 | "position": Object { 438 | "end": Object { 439 | "column": 41, 440 | "line": 3, 441 | "offset": 295, 442 | }, 443 | "start": Object { 444 | "column": 1, 445 | "line": 3, 446 | "offset": 255, 447 | }, 448 | }, 449 | "properties": Object { 450 | "className": Array [ 451 | "token", 452 | "punctuation", 453 | ], 454 | }, 455 | "tagName": "span", 456 | "type": "element", 457 | }, 458 | Object { 459 | "lineNumber": 3, 460 | "type": "text", 461 | "value": " 462 | ", 463 | }, 464 | ], 465 | "position": Object { 466 | "end": Object { 467 | "column": 8, 468 | "line": 6, 469 | "offset": 104, 470 | }, 471 | "start": Object { 472 | "column": 10, 473 | "line": 3, 474 | "offset": 30, 475 | }, 476 | }, 477 | "properties": Object { 478 | "className": Array [ 479 | "language-typescript{2}", 480 | ], 481 | }, 482 | "tagName": "code", 483 | "type": "element", 484 | }, 485 | Object { 486 | "position": Object { 487 | "end": Object { 488 | "column": 5, 489 | "line": 7, 490 | "offset": 109, 491 | }, 492 | "start": Object { 493 | "column": 8, 494 | "line": 6, 495 | "offset": 104, 496 | }, 497 | }, 498 | "type": "text", 499 | "value": " 500 | ", 501 | }, 502 | ], 503 | "position": Object { 504 | "end": Object { 505 | "column": 11, 506 | "line": 7, 507 | "offset": 115, 508 | }, 509 | "start": Object { 510 | "column": 5, 511 | "line": 3, 512 | "offset": 25, 513 | }, 514 | }, 515 | "properties": Object { 516 | "className": Array [ 517 | "language-typescript", 518 | ], 519 | }, 520 | "tagName": "pre", 521 | "type": "element", 522 | }, 523 | Object { 524 | "position": Object { 525 | "end": Object { 526 | "column": 3, 527 | "line": 8, 528 | "offset": 118, 529 | }, 530 | "start": Object { 531 | "column": 11, 532 | "line": 7, 533 | "offset": 115, 534 | }, 535 | }, 536 | "type": "text", 537 | "value": " 538 | ", 539 | }, 540 | ], 541 | "position": Object { 542 | "end": Object { 543 | "column": 9, 544 | "line": 8, 545 | "offset": 124, 546 | }, 547 | "start": Object { 548 | "column": 1, 549 | "line": 1, 550 | "offset": 0, 551 | }, 552 | }, 553 | "properties": Object {}, 554 | "tagName": "div", 555 | "type": "element", 556 | }, 557 | ], 558 | "data": Object { 559 | "quirksMode": false, 560 | }, 561 | "position": Object { 562 | "end": Object { 563 | "column": 9, 564 | "line": 8, 565 | "offset": 124, 566 | }, 567 | "start": Object { 568 | "column": 1, 569 | "line": 1, 570 | "offset": 0, 571 | }, 572 | }, 573 | "type": "root", 574 | } 575 | `; 576 | 577 | exports[`handles uppercase languages correctly 1`] = ` 578 | "
579 |

foo

580 |
p { color: red }
581 |
" 582 | `; 583 | 584 | exports[`with options.ignoreMissing, does nothing to code block with fake language- class 1`] = `"
p { color: red }
"`; 585 | -------------------------------------------------------------------------------- /add-markers.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Code copied inspired from from: https://github.com/rexxars/react-refractor/blob/master/src/addMarkers.js 3 | */ 4 | const lineNumberify = function lineNumberify(ast, lineNum = 1) { 5 | let lineNumber = lineNum; 6 | return ast.reduce( 7 | (result, node) => { 8 | if (node.type === 'text') { 9 | if (node.value.indexOf('\n') === -1) { 10 | node.lineNumber = lineNumber; 11 | result.nodes.push(node); 12 | return result; 13 | } 14 | 15 | const lines = node.value.split('\n'); 16 | for (let i = 0; i < lines.length; i++) { 17 | if (i !== 0) ++lineNumber; 18 | if (i === lines.length - 1 && lines[i].length === 0) continue; 19 | result.nodes.push({ 20 | type: 'text', 21 | value: i === lines.length - 1 ? lines[i] : `${lines[i]}\n`, 22 | lineNumber: lineNumber 23 | }); 24 | } 25 | 26 | result.lineNumber = lineNumber; 27 | return result; 28 | } 29 | 30 | if (node.children) { 31 | node.lineNumber = lineNumber; 32 | const processed = lineNumberify(node.children, lineNumber); 33 | node.children = processed.nodes; 34 | result.lineNumber = processed.lineNumber; 35 | result.nodes.push(node); 36 | return result; 37 | } 38 | 39 | result.nodes.push(node); 40 | return result; 41 | }, 42 | { nodes: [], lineNumber: lineNumber } 43 | ); 44 | }; 45 | 46 | const wrapLines = function wrapLines(ast, markers, options) { 47 | let i = 0; 48 | const wrapped = markers.reduce((nodes, marker) => { 49 | const line = marker.line; 50 | const children = []; 51 | for (; i < ast.length; i++) { 52 | if (ast[i].lineNumber < line) { 53 | nodes.push(ast[i]); 54 | continue; 55 | } 56 | 57 | if (ast[i].lineNumber === line) { 58 | children.push(ast[i]); 59 | continue; 60 | } 61 | 62 | if (ast[i].lineNumber > line) { 63 | break; 64 | } 65 | } 66 | 67 | nodes.push({ 68 | type: 'element', 69 | tagName: marker.component || 'div', 70 | properties: marker.component 71 | ? options 72 | : { className: marker.className || 'mdx-marker' }, 73 | children: children, 74 | lineNumber: line 75 | }); 76 | 77 | return nodes; 78 | }, []); 79 | 80 | for (; i < ast.length; i++) { 81 | wrapped.push(ast[i]); 82 | } 83 | 84 | return wrapped; 85 | }; 86 | 87 | module.exports = function(ast, options) { 88 | const markers = options.markers 89 | .map(marker => { 90 | return marker.line ? marker : { line: marker }; 91 | }) 92 | .sort((nodeA, nodeB) => { 93 | return nodeA.line - nodeB.line; 94 | }); 95 | 96 | const numbered = lineNumberify(ast).nodes; 97 | const wrapped = wrapLines(numbered, markers, options); 98 | return wrapped; 99 | }; 100 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const rangeParser = require('parse-numeric-range'); 4 | const rehype = require('rehype'); 5 | const visit = require('unist-util-visit'); 6 | const nodeToString = require('hast-util-to-string'); 7 | const unified = require('unified'); 8 | const parse = require('rehype-parse'); 9 | const refractor = require('refractor'); 10 | const addMarkers = require('./add-markers'); 11 | 12 | /** 13 | * This module walks through the node tree and does: 14 | * - gets the class name 15 | * - parses the class and extracts the highlight lines directive and the language name 16 | * - highlights the code using refractor 17 | * - if markers are present then: 18 | * - converts AST to HTML 19 | * - then applies some fixes to make line highlighting work with JSX found here: https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-remark-prismjs/src/directives.js#L113-L119 20 | * - add markers using: https://github.com/rexxars/react-refractor/blob/master/src/addMarkers.js 21 | * - converts the code back from HTML to AST 22 | * - sets the code as value 23 | */ 24 | 25 | module.exports = (options = {}) => { 26 | return tree => { 27 | visit(tree, 'element', visitor); 28 | }; 29 | 30 | function visitor(node, index, parent) { 31 | if (!parent || parent.tagName !== 'pre' || node.tagName !== 'code') { 32 | return; 33 | } 34 | 35 | const className = getLangClass(node); 36 | const { highlightLines, splitLanguage } = parseLineNumberRange(className); 37 | const lang = getLanguage(splitLanguage); 38 | const markers = highlightLines; 39 | 40 | if (lang === null) { 41 | return; 42 | } 43 | 44 | let result; 45 | try { 46 | parent.properties.className = (parent.properties.className || []) 47 | .concat('language-' + lang); 48 | 49 | result = refractor.highlight(nodeToString(node), lang); 50 | 51 | if (markers && markers.length > 0) { 52 | // This blocks attempts this fix: 53 | // https://github.com/gatsbyjs/gatsby/blob/master/packages/gatsby-remark-prismjs/src/directives.js#L113-L119 54 | const PLAIN_TEXT_WITH_LF_TEST = /[^<]*\n[^<]*<\/span>/g; 55 | 56 | // AST to HTML 57 | let html_ = rehype() 58 | .stringify({ type: 'root', children: result }) 59 | .toString(); 60 | 61 | // Fix JSX issue 62 | html_ = html_.replace(PLAIN_TEXT_WITH_LF_TEST, match => { 63 | return match.replace( 64 | /\n/g, 65 | '\n' 66 | ); 67 | }); 68 | 69 | // HTML to AST 70 | const hast_ = unified() 71 | .use(parse, { emitParseErrors: true, fragment: true }) 72 | .parse(html_); 73 | 74 | // Add markers 75 | result = addMarkers(hast_.children, { markers }); 76 | } 77 | } catch (err) { 78 | if (options.ignoreMissing && /Unknown language/.test(err.message)) { 79 | return; 80 | } 81 | 82 | throw err; 83 | } 84 | 85 | node.children = result; 86 | } 87 | }; 88 | 89 | const parseLineNumberRange = language => { 90 | if (!language) { 91 | return ''; 92 | } 93 | if (language.split('{').length > 1) { 94 | let [splitLanguage, ...options] = language.split('{'); 95 | let highlightLines = []; 96 | options.forEach(option => { 97 | option = option.slice(0, -1); 98 | if (rangeParser.parse(option).length > 0) { 99 | highlightLines = rangeParser.parse(option).filter(n => n > 0); 100 | } 101 | }); 102 | 103 | return { 104 | splitLanguage, 105 | highlightLines 106 | }; 107 | } 108 | 109 | return { splitLanguage: language }; 110 | }; 111 | 112 | function getLangClass(node) { 113 | const className = node.properties.className || []; 114 | for (const item of className) { 115 | if (item.slice(0, 9) === 'language-') { 116 | return item; 117 | } 118 | } 119 | return null; 120 | } 121 | 122 | function getLanguage(className = '') { 123 | if (className.slice(0, 9) === 'language-') { 124 | return className.slice(9).toLowerCase(); 125 | } 126 | 127 | return null; 128 | } 129 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "mdx-prism", 3 | "version": "0.3.4", 4 | "description": "A fork of the rehype-prism plugin to highlight code blocks in HTML with Prism and more", 5 | "main": "index.js", 6 | "scripts": { 7 | "precommit": "lint-staged", 8 | "lint": "eslint .", 9 | "format": "prettier --single-quote --write '{,lib/,test/}*.js'", 10 | "test-jest": "jest", 11 | "pretest": "npm run lint", 12 | "test": "jest" 13 | }, 14 | "repository": { 15 | "type": "git", 16 | "url": "git+https://github.com/j0lv3r4/mdx-prism.git" 17 | }, 18 | "keywords": [ 19 | "rehype", 20 | "rehype-plugin", 21 | "mdx-plugin", 22 | "syntax-highlighting", 23 | "prism", 24 | "html" 25 | ], 26 | "author": "Juan Olvera (https://jolvera.dev)", 27 | "license": "MIT", 28 | "bugs": { 29 | "url": "https://github.com/j0lv3r4/mdx-prism/issues" 30 | }, 31 | "homepage": "https://github.com/j0lv3r4/mdx-prism#readme", 32 | "dependencies": { 33 | "hast-util-to-string": "^1.0.0", 34 | "parse-numeric-range": "^0.0.2", 35 | "refractor": "3.3.0", 36 | "rehype": "^11.0.0", 37 | "rehype-parse": "^7.0.1", 38 | "unified": "^9.2.1", 39 | "unist-util-visit": "^1.1.3" 40 | }, 41 | "devDependencies": { 42 | "dedent": "^0.7.0", 43 | "eslint": "^4.0.0", 44 | "eslint-plugin-node": "^5.0.0", 45 | "husky": "^0.13.4", 46 | "jest": "^20.0.4", 47 | "lint-staged": "^4.0.0", 48 | "prettier": "^1.4.4" 49 | }, 50 | "lint-staged": { 51 | "{,lib/,test/}*.js": [ 52 | "prettier --single-quote --write", 53 | "git add" 54 | ] 55 | }, 56 | "jest": { 57 | "coverageReporters": [ 58 | "json", 59 | "lcov", 60 | "text", 61 | "html" 62 | ], 63 | "resetMocks": true, 64 | "testRegex": "/test\\.js$" 65 | }, 66 | "engines": { 67 | "node": ">=6" 68 | }, 69 | "np": { 70 | "yarn": false 71 | } 72 | } 73 | -------------------------------------------------------------------------------- /test.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const rehype = require('rehype'); 4 | const rehypeParse = require('rehype-parse'); 5 | const unified = require('unified'); 6 | const dedent = require('dedent'); 7 | const rehypePrism = require('./index'); 8 | 9 | const processHtml = (html, options) => { 10 | return rehype() 11 | .data('settings', { fragment: true }) 12 | .use(rehypePrism, options) 13 | .processSync(html) 14 | .toString(); 15 | }; 16 | 17 | test('copies the language- class to pre tag', () => { 18 | const result = processHtml(dedent` 19 |
20 | `); 21 | expect(result).toMatchSnapshot(); 22 | }); 23 | 24 | test('finds code and highlights', () => { 25 | const result = processHtml(dedent` 26 |
27 |

foo

28 |
p { color: red }
29 |
30 | `); 31 | expect(result).toMatchSnapshot(); 32 | }); 33 | 34 | test('handles newlines in code correctly', () => { 35 | const html = dedent` 36 |
37 |

foo

38 |
interface Thing {
39 |   a: number
40 | }
41 | 
42 |       
43 |
44 | `; 45 | const stringResult = processHtml(html); 46 | expect(stringResult).toMatchSnapshot(); 47 | 48 | const parsedAst = unified().use(rehypeParse, { fragment: true }).parse(html); 49 | const transformedAst = unified().use(rehypePrism).run(parsedAst); 50 | expect(transformedAst).resolves.toMatchSnapshot(); 51 | }); 52 | 53 | test('handles uppercase languages correctly', () => { 54 | const result = processHtml(dedent` 55 |
56 |

foo

57 |
p { color: red }
58 |
59 | `); 60 | expect(result).toMatchSnapshot(); 61 | }); 62 | 63 | test('does nothing to code block without language- class', () => { 64 | const result = processHtml(dedent` 65 |
p { color: red }
66 | `); 67 | expect(result).toMatchSnapshot(); 68 | }); 69 | 70 | test('throw error with fake language- class', () => { 71 | expect(() => { 72 | processHtml(dedent` 73 |
p { color: red }
74 | `); 75 | }).toThrow(/Unknown language/); 76 | }); 77 | 78 | test('with options.ignoreMissing, does nothing to code block with fake language- class', () => { 79 | const html = dedent` 80 |
p { color: red }
81 | `; 82 | const result = processHtml(html, { ignoreMissing: true }); 83 | expect(result).toMatchSnapshot(); 84 | }); 85 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@types/hast@^2.0.0": 6 | "integrity" "sha512-viwwrB+6xGzw+G1eWpF9geV3fnsDgXqHG+cqgiHrvQfDUW5hzhCyV7Sy3UJxhfRFBsgky2SSW33qi/YrIkjX5Q==" 7 | "resolved" "https://registry.npmjs.org/@types/hast/-/hast-2.3.1.tgz" 8 | "version" "2.3.1" 9 | dependencies: 10 | "@types/unist" "*" 11 | 12 | "@types/parse5@^5.0.0": 13 | "integrity" "sha512-kUNnecmtkunAoQ3CnjmMkzNU/gtxG8guhi+Fk2U/kOpIKjIMKnXGp4IJCgQJrXSgMsWYimYG4TGjz/UzbGEBTw==" 14 | "resolved" "https://registry.npmjs.org/@types/parse5/-/parse5-5.0.3.tgz" 15 | "version" "5.0.3" 16 | 17 | "@types/unist@*": 18 | "integrity" "sha512-FvUupuM3rlRsRtCN+fDudtmytGO6iHJuuRKS1Ss0pG5z8oX0diNEw94UEL7hgDbpN94rgaK5R7sWm6RrSkZuAQ==" 19 | "resolved" "https://registry.npmjs.org/@types/unist/-/unist-2.0.3.tgz" 20 | "version" "2.0.3" 21 | 22 | "@types/unist@^2.0.0", "@types/unist@^2.0.2": 23 | "integrity" "sha512-wnra4Vw9dopnuybR6HBywJ/URYpYrKLoepBTEtgfJup8Ahoi2zJECPP2cwiXp7btTvOT2CULv87aQRA4eZSP6g==" 24 | "resolved" "https://registry.npmjs.org/@types/unist/-/unist-2.0.5.tgz" 25 | "version" "2.0.5" 26 | 27 | "abab@^1.0.3": 28 | "integrity" "sha1-uB3l9ydOxOdW15fNg08wNkJyTl0=" 29 | "resolved" "https://registry.npmjs.org/abab/-/abab-1.0.3.tgz" 30 | "version" "1.0.3" 31 | 32 | "acorn-globals@^3.1.0": 33 | "integrity" "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=" 34 | "resolved" "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz" 35 | "version" "3.1.0" 36 | dependencies: 37 | "acorn" "^4.0.4" 38 | 39 | "acorn-jsx@^3.0.0": 40 | "integrity" "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=" 41 | "resolved" "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz" 42 | "version" "3.0.1" 43 | dependencies: 44 | "acorn" "^3.0.4" 45 | 46 | "acorn@^3.0.4": 47 | "integrity" "sha1-ReN/s56No/JbruP/U2niu18iAXo=" 48 | "resolved" "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz" 49 | "version" "3.3.0" 50 | 51 | "acorn@^4.0.4": 52 | "integrity" "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=" 53 | "resolved" "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz" 54 | "version" "4.0.13" 55 | 56 | "acorn@^5.0.1": 57 | "integrity" "sha1-xGDfCEkUY/AozLguqzcwvwEIez0=" 58 | "resolved" "https://registry.npmjs.org/acorn/-/acorn-5.0.3.tgz" 59 | "version" "5.0.3" 60 | 61 | "ajv-keywords@^1.0.0": 62 | "integrity" "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=" 63 | "resolved" "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz" 64 | "version" "1.5.1" 65 | 66 | "ajv@^4.7.0", "ajv@>=4.10.0": 67 | "integrity" "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=" 68 | "resolved" "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz" 69 | "version" "4.11.8" 70 | dependencies: 71 | "co" "^4.6.0" 72 | "json-stable-stringify" "^1.0.1" 73 | 74 | "ajv@^6.12.3": 75 | "integrity" "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==" 76 | "resolved" "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz" 77 | "version" "6.12.6" 78 | dependencies: 79 | "fast-deep-equal" "^3.1.1" 80 | "fast-json-stable-stringify" "^2.0.0" 81 | "json-schema-traverse" "^0.4.1" 82 | "uri-js" "^4.2.2" 83 | 84 | "amdefine@>=0.0.4": 85 | "integrity" "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=" 86 | "resolved" "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz" 87 | "version" "1.0.1" 88 | 89 | "ansi-escapes@^1.0.0", "ansi-escapes@^1.4.0": 90 | "integrity" "sha1-06ioOzGapneTZisT52HHkRQiMG4=" 91 | "resolved" "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz" 92 | "version" "1.4.0" 93 | 94 | "ansi-escapes@^2.0.0": 95 | "integrity" "sha1-W65SvkJIeN2Xg+iRDj/Cki6DyBs=" 96 | "resolved" "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-2.0.0.tgz" 97 | "version" "2.0.0" 98 | 99 | "ansi-regex@^2.0.0", "ansi-regex@^2.1.1": 100 | "integrity" "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" 101 | "resolved" "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz" 102 | "version" "2.1.1" 103 | 104 | "ansi-styles@^2.2.1": 105 | "integrity" "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" 106 | "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz" 107 | "version" "2.2.1" 108 | 109 | "ansi-styles@^3.0.0": 110 | "integrity" "sha1-CcIC1ckX7CMYjKpcnLkXnNlUd1A=" 111 | "resolved" "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.1.0.tgz" 112 | "version" "3.1.0" 113 | dependencies: 114 | "color-convert" "^1.0.0" 115 | 116 | "anymatch@^1.3.0": 117 | "integrity" "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==" 118 | "resolved" "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz" 119 | "version" "1.3.2" 120 | dependencies: 121 | "micromatch" "^2.1.5" 122 | "normalize-path" "^2.0.0" 123 | 124 | "app-root-path@^2.0.0": 125 | "integrity" "sha1-zWLc+OT9WkF+/GZNLlsQZTxlG0Y=" 126 | "resolved" "https://registry.npmjs.org/app-root-path/-/app-root-path-2.0.1.tgz" 127 | "version" "2.0.1" 128 | 129 | "append-transform@^0.4.0": 130 | "integrity" "sha1-126/jKlNJ24keja61EpLdKthGZE=" 131 | "resolved" "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz" 132 | "version" "0.4.0" 133 | dependencies: 134 | "default-require-extensions" "^1.0.0" 135 | 136 | "argparse@^1.0.7": 137 | "integrity" "sha1-c9g7wmP4bpf4zE9rrhsOkKfSLIY=" 138 | "resolved" "https://registry.npmjs.org/argparse/-/argparse-1.0.9.tgz" 139 | "version" "1.0.9" 140 | dependencies: 141 | "sprintf-js" "~1.0.2" 142 | 143 | "arr-diff@^2.0.0": 144 | "integrity" "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=" 145 | "resolved" "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz" 146 | "version" "2.0.0" 147 | dependencies: 148 | "arr-flatten" "^1.0.1" 149 | 150 | "arr-flatten@^1.0.1": 151 | "integrity" "sha1-onTthawIhJtr14R8RYB0XcUa37E=" 152 | "resolved" "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.0.3.tgz" 153 | "version" "1.0.3" 154 | 155 | "array-equal@^1.0.0": 156 | "integrity" "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=" 157 | "resolved" "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz" 158 | "version" "1.0.0" 159 | 160 | "array-union@^1.0.1": 161 | "integrity" "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=" 162 | "resolved" "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz" 163 | "version" "1.0.2" 164 | dependencies: 165 | "array-uniq" "^1.0.1" 166 | 167 | "array-uniq@^1.0.1": 168 | "integrity" "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=" 169 | "resolved" "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz" 170 | "version" "1.0.3" 171 | 172 | "array-unique@^0.2.1": 173 | "integrity" "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=" 174 | "resolved" "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz" 175 | "version" "0.2.1" 176 | 177 | "arrify@^1.0.0", "arrify@^1.0.1": 178 | "integrity" "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=" 179 | "resolved" "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz" 180 | "version" "1.0.1" 181 | 182 | "asn1@~0.2.3": 183 | "integrity" "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==" 184 | "resolved" "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz" 185 | "version" "0.2.4" 186 | dependencies: 187 | "safer-buffer" "~2.1.0" 188 | 189 | "assert-plus@^1.0.0", "assert-plus@1.0.0": 190 | "integrity" "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=" 191 | "resolved" "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz" 192 | "version" "1.0.0" 193 | 194 | "async@^2.1.4": 195 | "integrity" "sha1-YqVrJ5yYoR0JhwlqAcw+6463u9c=" 196 | "resolved" "https://registry.npmjs.org/async/-/async-2.4.1.tgz" 197 | "version" "2.4.1" 198 | dependencies: 199 | "lodash" "^4.14.0" 200 | 201 | "asynckit@^0.4.0": 202 | "integrity" "sha1-x57Zf380y48robyXkLzDZkdLS3k=" 203 | "resolved" "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz" 204 | "version" "0.4.0" 205 | 206 | "aws-sign2@~0.7.0": 207 | "integrity" "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=" 208 | "resolved" "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz" 209 | "version" "0.7.0" 210 | 211 | "aws4@^1.8.0": 212 | "integrity" "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==" 213 | "resolved" "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz" 214 | "version" "1.11.0" 215 | 216 | "babel-code-frame@^6.22.0": 217 | "integrity" "sha1-AnYgvuVnqIwyVhV05/0IAdMxGOQ=" 218 | "resolved" "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.22.0.tgz" 219 | "version" "6.22.0" 220 | dependencies: 221 | "chalk" "^1.1.0" 222 | "esutils" "^2.0.2" 223 | "js-tokens" "^3.0.0" 224 | 225 | "babel-core@^6.0.0", "babel-core@^6.24.1": 226 | "integrity" "sha1-fdQrBGPHQunVKW3rPsZ6kyLa1yk=" 227 | "resolved" "https://registry.npmjs.org/babel-core/-/babel-core-6.25.0.tgz" 228 | "version" "6.25.0" 229 | dependencies: 230 | "babel-code-frame" "^6.22.0" 231 | "babel-generator" "^6.25.0" 232 | "babel-helpers" "^6.24.1" 233 | "babel-messages" "^6.23.0" 234 | "babel-register" "^6.24.1" 235 | "babel-runtime" "^6.22.0" 236 | "babel-template" "^6.25.0" 237 | "babel-traverse" "^6.25.0" 238 | "babel-types" "^6.25.0" 239 | "babylon" "^6.17.2" 240 | "convert-source-map" "^1.1.0" 241 | "debug" "^2.1.1" 242 | "json5" "^0.5.0" 243 | "lodash" "^4.2.0" 244 | "minimatch" "^3.0.2" 245 | "path-is-absolute" "^1.0.0" 246 | "private" "^0.1.6" 247 | "slash" "^1.0.0" 248 | "source-map" "^0.5.0" 249 | 250 | "babel-generator@^6.18.0", "babel-generator@^6.25.0": 251 | "integrity" "sha1-M6GvcNXyiQrrRlpKd5PB32qeqfw=" 252 | "resolved" "https://registry.npmjs.org/babel-generator/-/babel-generator-6.25.0.tgz" 253 | "version" "6.25.0" 254 | dependencies: 255 | "babel-messages" "^6.23.0" 256 | "babel-runtime" "^6.22.0" 257 | "babel-types" "^6.25.0" 258 | "detect-indent" "^4.0.0" 259 | "jsesc" "^1.3.0" 260 | "lodash" "^4.2.0" 261 | "source-map" "^0.5.0" 262 | "trim-right" "^1.0.1" 263 | 264 | "babel-helpers@^6.24.1": 265 | "integrity" "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=" 266 | "resolved" "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz" 267 | "version" "6.24.1" 268 | dependencies: 269 | "babel-runtime" "^6.22.0" 270 | "babel-template" "^6.24.1" 271 | 272 | "babel-jest@^20.0.3": 273 | "integrity" "sha1-5KA7E9wQOJ4UD8ZF0J/8TO0wFnE=" 274 | "resolved" "https://registry.npmjs.org/babel-jest/-/babel-jest-20.0.3.tgz" 275 | "version" "20.0.3" 276 | dependencies: 277 | "babel-core" "^6.0.0" 278 | "babel-plugin-istanbul" "^4.0.0" 279 | "babel-preset-jest" "^20.0.3" 280 | 281 | "babel-messages@^6.23.0": 282 | "integrity" "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=" 283 | "resolved" "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz" 284 | "version" "6.23.0" 285 | dependencies: 286 | "babel-runtime" "^6.22.0" 287 | 288 | "babel-plugin-istanbul@^4.0.0": 289 | "integrity" "sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==" 290 | "resolved" "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz" 291 | "version" "4.1.6" 292 | dependencies: 293 | "babel-plugin-syntax-object-rest-spread" "^6.13.0" 294 | "find-up" "^2.1.0" 295 | "istanbul-lib-instrument" "^1.10.1" 296 | "test-exclude" "^4.2.1" 297 | 298 | "babel-plugin-jest-hoist@^20.0.3": 299 | "integrity" "sha1-r+3IU70/jcNUjqZx++adA8wsF2c=" 300 | "resolved" "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-20.0.3.tgz" 301 | "version" "20.0.3" 302 | 303 | "babel-plugin-syntax-object-rest-spread@^6.13.0": 304 | "integrity" "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=" 305 | "resolved" "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz" 306 | "version" "6.13.0" 307 | 308 | "babel-preset-jest@^20.0.3": 309 | "integrity" "sha1-y6yq3stdaJyh4d4TYOv8ZoYsF4o=" 310 | "resolved" "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-20.0.3.tgz" 311 | "version" "20.0.3" 312 | dependencies: 313 | "babel-plugin-jest-hoist" "^20.0.3" 314 | 315 | "babel-register@^6.24.1": 316 | "integrity" "sha1-fhDhOi9xBlvfrVoXh7pFvKbe118=" 317 | "resolved" "https://registry.npmjs.org/babel-register/-/babel-register-6.24.1.tgz" 318 | "version" "6.24.1" 319 | dependencies: 320 | "babel-core" "^6.24.1" 321 | "babel-runtime" "^6.22.0" 322 | "core-js" "^2.4.0" 323 | "home-or-tmp" "^2.0.0" 324 | "lodash" "^4.2.0" 325 | "mkdirp" "^0.5.1" 326 | "source-map-support" "^0.4.2" 327 | 328 | "babel-runtime@^6.22.0": 329 | "integrity" "sha1-CpSJ8UTecO+zzkMArM2zKeL8VDs=" 330 | "resolved" "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.23.0.tgz" 331 | "version" "6.23.0" 332 | dependencies: 333 | "core-js" "^2.4.0" 334 | "regenerator-runtime" "^0.10.0" 335 | 336 | "babel-template@^6.16.0", "babel-template@^6.24.1", "babel-template@^6.25.0": 337 | "integrity" "sha1-ZlJBFmt8KqTGGdceGSlpVSsQwHE=" 338 | "resolved" "https://registry.npmjs.org/babel-template/-/babel-template-6.25.0.tgz" 339 | "version" "6.25.0" 340 | dependencies: 341 | "babel-runtime" "^6.22.0" 342 | "babel-traverse" "^6.25.0" 343 | "babel-types" "^6.25.0" 344 | "babylon" "^6.17.2" 345 | "lodash" "^4.2.0" 346 | 347 | "babel-traverse@^6.18.0", "babel-traverse@^6.25.0": 348 | "integrity" "sha1-IldJfi/NGbie3BPEyROB+VEklvE=" 349 | "resolved" "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.25.0.tgz" 350 | "version" "6.25.0" 351 | dependencies: 352 | "babel-code-frame" "^6.22.0" 353 | "babel-messages" "^6.23.0" 354 | "babel-runtime" "^6.22.0" 355 | "babel-types" "^6.25.0" 356 | "babylon" "^6.17.2" 357 | "debug" "^2.2.0" 358 | "globals" "^9.0.0" 359 | "invariant" "^2.2.0" 360 | "lodash" "^4.2.0" 361 | 362 | "babel-types@^6.18.0", "babel-types@^6.25.0": 363 | "integrity" "sha1-cK+ySNVmDl0Y+BHZHIMDtUE0oY4=" 364 | "resolved" "https://registry.npmjs.org/babel-types/-/babel-types-6.25.0.tgz" 365 | "version" "6.25.0" 366 | dependencies: 367 | "babel-runtime" "^6.22.0" 368 | "esutils" "^2.0.2" 369 | "lodash" "^4.2.0" 370 | "to-fast-properties" "^1.0.1" 371 | 372 | "babylon@^6.17.2", "babylon@^6.18.0": 373 | "integrity" "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==" 374 | "resolved" "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz" 375 | "version" "6.18.0" 376 | 377 | "bail@^1.0.0": 378 | "integrity" "sha1-kSV53os5Gq3zxf30zSoPwiXfO8I=" 379 | "resolved" "https://registry.npmjs.org/bail/-/bail-1.0.1.tgz" 380 | "version" "1.0.1" 381 | 382 | "balanced-match@^1.0.0": 383 | "integrity" "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=" 384 | "resolved" "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz" 385 | "version" "1.0.0" 386 | 387 | "bcrypt-pbkdf@^1.0.0": 388 | "integrity" "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=" 389 | "resolved" "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz" 390 | "version" "1.0.2" 391 | dependencies: 392 | "tweetnacl" "^0.14.3" 393 | 394 | "brace-expansion@^1.1.7": 395 | "integrity" "sha1-wHshHHyVLsH479Uad+8NHTmQopI=" 396 | "resolved" "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.8.tgz" 397 | "version" "1.1.8" 398 | dependencies: 399 | "balanced-match" "^1.0.0" 400 | "concat-map" "0.0.1" 401 | 402 | "braces@^1.8.2": 403 | "integrity" "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=" 404 | "resolved" "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz" 405 | "version" "1.8.5" 406 | dependencies: 407 | "expand-range" "^1.8.1" 408 | "preserve" "^0.2.0" 409 | "repeat-element" "^1.1.2" 410 | 411 | "browser-resolve@^1.11.2": 412 | "integrity" "sha1-j/CbCixCFxihBRwmCzLkj0QpOM4=" 413 | "resolved" "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.2.tgz" 414 | "version" "1.11.2" 415 | dependencies: 416 | "resolve" "1.1.7" 417 | 418 | "bser@^2.0.0": 419 | "integrity" "sha1-mseNPtXZFYBP2HrLFYvHlxR6Fxk=" 420 | "resolved" "https://registry.npmjs.org/bser/-/bser-2.0.0.tgz" 421 | "version" "2.0.0" 422 | dependencies: 423 | "node-int64" "^0.4.0" 424 | 425 | "bser@1.0.2": 426 | "integrity" "sha1-OBEWlwsqbe6lZG3RXdcnhES1YWk=" 427 | "resolved" "https://registry.npmjs.org/bser/-/bser-1.0.2.tgz" 428 | "version" "1.0.2" 429 | dependencies: 430 | "node-int64" "^0.4.0" 431 | 432 | "builtin-modules@^1.0.0": 433 | "integrity" "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=" 434 | "resolved" "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz" 435 | "version" "1.1.1" 436 | 437 | "call-bind@^1.0.0": 438 | "integrity" "sha512-AEXsYIyyDY3MCzbwdhzG3Jx1R0J2wetQyUynn6dYHAO+bg8l1k7jwZtRv4ryryFs7EP+NDlikJlVe59jr0cM2w==" 439 | "resolved" "https://registry.npmjs.org/call-bind/-/call-bind-1.0.0.tgz" 440 | "version" "1.0.0" 441 | dependencies: 442 | "function-bind" "^1.1.1" 443 | "get-intrinsic" "^1.0.0" 444 | 445 | "caller-path@^0.1.0": 446 | "integrity" "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=" 447 | "resolved" "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz" 448 | "version" "0.1.0" 449 | dependencies: 450 | "callsites" "^0.2.0" 451 | 452 | "callsites@^0.2.0": 453 | "integrity" "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=" 454 | "resolved" "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz" 455 | "version" "0.2.0" 456 | 457 | "callsites@^2.0.0": 458 | "integrity" "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=" 459 | "resolved" "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz" 460 | "version" "2.0.0" 461 | 462 | "camelcase@^3.0.0": 463 | "integrity" "sha1-MvxLn82vhF/N9+c7uXysImHwqwo=" 464 | "resolved" "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz" 465 | "version" "3.0.0" 466 | 467 | "caseless@~0.12.0": 468 | "integrity" "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" 469 | "resolved" "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz" 470 | "version" "0.12.0" 471 | 472 | "ccount@^1.0.0": 473 | "integrity" "sha1-ZlaHlFFowhjsd/9hpBVa4AInqWw=" 474 | "resolved" "https://registry.npmjs.org/ccount/-/ccount-1.0.1.tgz" 475 | "version" "1.0.1" 476 | 477 | "chalk@^1.0.0", "chalk@^1.1.0", "chalk@^1.1.1", "chalk@^1.1.3": 478 | "integrity" "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=" 479 | "resolved" "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz" 480 | "version" "1.1.3" 481 | dependencies: 482 | "ansi-styles" "^2.2.1" 483 | "escape-string-regexp" "^1.0.2" 484 | "has-ansi" "^2.0.0" 485 | "strip-ansi" "^3.0.0" 486 | "supports-color" "^2.0.0" 487 | 488 | "character-entities-html4@^1.0.0": 489 | "integrity" "sha1-GrCFUdPOH6HfCNAPucod77FHoGw=" 490 | "resolved" "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-1.1.0.tgz" 491 | "version" "1.1.0" 492 | 493 | "character-entities-legacy@^1.0.0": 494 | "integrity" "sha1-sYqtmPa3vMZGweTIH58ZVjdqVho=" 495 | "resolved" "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-1.1.0.tgz" 496 | "version" "1.1.0" 497 | 498 | "character-entities@^1.0.0": 499 | "integrity" "sha512-iBMyeEHxfVnIakwOuDXpVkc54HijNgCyQB2w0VfGQThle6NXn50zU6V/u+LDhxHcDUPojn6Kpga3PTAD8W1bQw==" 500 | "resolved" "https://registry.npmjs.org/character-entities/-/character-entities-1.2.4.tgz" 501 | "version" "1.2.4" 502 | 503 | "character-reference-invalid@^1.0.0": 504 | "integrity" "sha512-mKKUkUbhPpQlCOfIuZkvSEgktjPFIsZKRRbC6KWVEMvlzblj3i3asQv5ODsrwt0N3pHAEvjP8KTQPHkp0+6jOg==" 505 | "resolved" "https://registry.npmjs.org/character-reference-invalid/-/character-reference-invalid-1.1.4.tgz" 506 | "version" "1.1.4" 507 | 508 | "ci-info@^1.0.0": 509 | "integrity" "sha1-3FKF8rTiUYIWg2gcOBwziPRuxTQ=" 510 | "resolved" "https://registry.npmjs.org/ci-info/-/ci-info-1.0.0.tgz" 511 | "version" "1.0.0" 512 | 513 | "circular-json@^0.3.1": 514 | "integrity" "sha1-vos2rvzN6LPKeqLWr8B6NyQsDS0=" 515 | "resolved" "https://registry.npmjs.org/circular-json/-/circular-json-0.3.1.tgz" 516 | "version" "0.3.1" 517 | 518 | "cli-cursor@^1.0.2": 519 | "integrity" "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=" 520 | "resolved" "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz" 521 | "version" "1.0.2" 522 | dependencies: 523 | "restore-cursor" "^1.0.1" 524 | 525 | "cli-cursor@^2.1.0": 526 | "integrity" "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=" 527 | "resolved" "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz" 528 | "version" "2.1.0" 529 | dependencies: 530 | "restore-cursor" "^2.0.0" 531 | 532 | "cli-spinners@^0.1.2": 533 | "integrity" "sha1-u3ZNiOGF+54eaiofGXcjGPYF4xw=" 534 | "resolved" "https://registry.npmjs.org/cli-spinners/-/cli-spinners-0.1.2.tgz" 535 | "version" "0.1.2" 536 | 537 | "cli-truncate@^0.2.1": 538 | "integrity" "sha1-nxXPuwcFAFNpIWxiasfQWrkN1XQ=" 539 | "resolved" "https://registry.npmjs.org/cli-truncate/-/cli-truncate-0.2.1.tgz" 540 | "version" "0.2.1" 541 | dependencies: 542 | "slice-ansi" "0.0.4" 543 | "string-width" "^1.0.1" 544 | 545 | "cli-width@^2.0.0": 546 | "integrity" "sha1-sjTKIJsp72b8UY2bmNWEewDt8Ao=" 547 | "resolved" "https://registry.npmjs.org/cli-width/-/cli-width-2.1.0.tgz" 548 | "version" "2.1.0" 549 | 550 | "clipboard@^2.0.0": 551 | "integrity" "sha512-g5zbiixBRk/wyKakSwCKd7vQXDjFnAMGHoEyBogG/bw9kTD9GvdAvaoRR1ALcEzt3pVKxZR0pViekPMIS0QyGg==" 552 | "resolved" "https://registry.npmjs.org/clipboard/-/clipboard-2.0.6.tgz" 553 | "version" "2.0.6" 554 | dependencies: 555 | "good-listener" "^1.2.2" 556 | "select" "^1.1.2" 557 | "tiny-emitter" "^2.0.0" 558 | 559 | "cliui@^3.2.0": 560 | "integrity" "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=" 561 | "resolved" "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz" 562 | "version" "3.2.0" 563 | dependencies: 564 | "string-width" "^1.0.1" 565 | "strip-ansi" "^3.0.1" 566 | "wrap-ansi" "^2.0.0" 567 | 568 | "co@^4.6.0": 569 | "integrity" "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" 570 | "resolved" "https://registry.npmjs.org/co/-/co-4.6.0.tgz" 571 | "version" "4.6.0" 572 | 573 | "code-point-at@^1.0.0": 574 | "integrity" "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" 575 | "resolved" "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz" 576 | "version" "1.1.0" 577 | 578 | "color-convert@^1.0.0": 579 | "integrity" "sha1-Gsz5fdc5uYO/mU1W/sj5WFNkG3o=" 580 | "resolved" "https://registry.npmjs.org/color-convert/-/color-convert-1.9.0.tgz" 581 | "version" "1.9.0" 582 | dependencies: 583 | "color-name" "^1.1.1" 584 | 585 | "color-name@^1.1.1": 586 | "integrity" "sha1-XIq3K2S9IhXWF66VWeuxSEdc+Y0=" 587 | "resolved" "https://registry.npmjs.org/color-name/-/color-name-1.1.2.tgz" 588 | "version" "1.1.2" 589 | 590 | "combined-stream@^1.0.6", "combined-stream@~1.0.6": 591 | "integrity" "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==" 592 | "resolved" "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz" 593 | "version" "1.0.8" 594 | dependencies: 595 | "delayed-stream" "~1.0.0" 596 | 597 | "comma-separated-tokens@^1.0.0": 598 | "integrity" "sha1-brAfRzC956f85dXi2UO91jcnKAE=" 599 | "resolved" "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-1.0.3.tgz" 600 | "version" "1.0.3" 601 | dependencies: 602 | "trim" "0.0.1" 603 | 604 | "commander@^2.9.0": 605 | "integrity" "sha1-nJkJQXbhIkDLItbFFGCYQA/g99Q=" 606 | "resolved" "https://registry.npmjs.org/commander/-/commander-2.9.0.tgz" 607 | "version" "2.9.0" 608 | dependencies: 609 | "graceful-readlink" ">= 1.0.0" 610 | 611 | "concat-map@0.0.1": 612 | "integrity" "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" 613 | "resolved" "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" 614 | "version" "0.0.1" 615 | 616 | "concat-stream@^1.6.0": 617 | "integrity" "sha1-CqxmL9Ur54lk1VMvaUeE5wEQrPc=" 618 | "resolved" "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.0.tgz" 619 | "version" "1.6.0" 620 | dependencies: 621 | "inherits" "^2.0.3" 622 | "readable-stream" "^2.2.2" 623 | "typedarray" "^0.0.6" 624 | 625 | "content-type-parser@^1.0.1": 626 | "integrity" "sha1-w+VpiMU8ZRJ/tG1AMqOpACRv3JQ=" 627 | "resolved" "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.1.tgz" 628 | "version" "1.0.1" 629 | 630 | "convert-source-map@^1.1.0", "convert-source-map@^1.4.0": 631 | "integrity" "sha1-ms1whRxtXf3ZPZKC5e35SgP/RrU=" 632 | "resolved" "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.5.0.tgz" 633 | "version" "1.5.0" 634 | 635 | "core-js@^2.4.0": 636 | "integrity" "sha1-TekR5mew6ukSTjQlS1OupvxhjT4=" 637 | "resolved" "https://registry.npmjs.org/core-js/-/core-js-2.4.1.tgz" 638 | "version" "2.4.1" 639 | 640 | "core-util-is@~1.0.0", "core-util-is@1.0.2": 641 | "integrity" "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" 642 | "resolved" "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz" 643 | "version" "1.0.2" 644 | 645 | "cosmiconfig@^1.1.0": 646 | "integrity" "sha1-DeoPmATv37kp+7GxiOJVU+oFPTc=" 647 | "resolved" "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-1.1.0.tgz" 648 | "version" "1.1.0" 649 | dependencies: 650 | "graceful-fs" "^4.1.2" 651 | "js-yaml" "^3.4.3" 652 | "minimist" "^1.2.0" 653 | "object-assign" "^4.0.1" 654 | "os-homedir" "^1.0.1" 655 | "parse-json" "^2.2.0" 656 | "pinkie-promise" "^2.0.0" 657 | "require-from-string" "^1.1.0" 658 | 659 | "cross-spawn@^5.0.1": 660 | "integrity" "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=" 661 | "resolved" "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz" 662 | "version" "5.1.0" 663 | dependencies: 664 | "lru-cache" "^4.0.1" 665 | "shebang-command" "^1.2.0" 666 | "which" "^1.2.9" 667 | 668 | "cssom@>= 0.3.2 < 0.4.0", "cssom@0.3.x": 669 | "integrity" "sha1-uANhcMefB6kP8vFuIihAJ6JDhIs=" 670 | "resolved" "https://registry.npmjs.org/cssom/-/cssom-0.3.2.tgz" 671 | "version" "0.3.2" 672 | 673 | "cssstyle@>= 0.2.37 < 0.3.0": 674 | "integrity" "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=" 675 | "resolved" "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz" 676 | "version" "0.2.37" 677 | dependencies: 678 | "cssom" "0.3.x" 679 | 680 | "dashdash@^1.12.0": 681 | "integrity" "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=" 682 | "resolved" "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz" 683 | "version" "1.14.1" 684 | dependencies: 685 | "assert-plus" "^1.0.0" 686 | 687 | "date-fns@^1.27.2": 688 | "integrity" "sha1-JXz8RdMi30XvVlhmWWfuhBzXP68=" 689 | "resolved" "https://registry.npmjs.org/date-fns/-/date-fns-1.28.5.tgz" 690 | "version" "1.28.5" 691 | 692 | "debug@^2.1.1", "debug@^2.2.0", "debug@^2.6.3", "debug@^2.6.8": 693 | "integrity" "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==" 694 | "resolved" "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" 695 | "version" "2.6.9" 696 | dependencies: 697 | "ms" "2.0.0" 698 | 699 | "decamelize@^1.1.1": 700 | "integrity" "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" 701 | "resolved" "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz" 702 | "version" "1.2.0" 703 | 704 | "dedent@^0.7.0": 705 | "integrity" "sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=" 706 | "resolved" "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz" 707 | "version" "0.7.0" 708 | 709 | "deep-is@~0.1.3": 710 | "integrity" "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" 711 | "resolved" "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz" 712 | "version" "0.1.3" 713 | 714 | "default-require-extensions@^1.0.0": 715 | "integrity" "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=" 716 | "resolved" "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz" 717 | "version" "1.0.0" 718 | dependencies: 719 | "strip-bom" "^2.0.0" 720 | 721 | "define-properties@^1.1.3": 722 | "integrity" "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==" 723 | "resolved" "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz" 724 | "version" "1.1.3" 725 | dependencies: 726 | "object-keys" "^1.0.12" 727 | 728 | "del@^2.0.2": 729 | "integrity" "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=" 730 | "resolved" "https://registry.npmjs.org/del/-/del-2.2.2.tgz" 731 | "version" "2.2.2" 732 | dependencies: 733 | "globby" "^5.0.0" 734 | "is-path-cwd" "^1.0.0" 735 | "is-path-in-cwd" "^1.0.0" 736 | "object-assign" "^4.0.1" 737 | "pify" "^2.0.0" 738 | "pinkie-promise" "^2.0.0" 739 | "rimraf" "^2.2.8" 740 | 741 | "delayed-stream@~1.0.0": 742 | "integrity" "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=" 743 | "resolved" "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz" 744 | "version" "1.0.0" 745 | 746 | "delegate@^3.1.2": 747 | "integrity" "sha1-moJRp3fXAl+qVXN7w7BxdCEnqf0=" 748 | "resolved" "https://registry.npmjs.org/delegate/-/delegate-3.1.3.tgz" 749 | "version" "3.1.3" 750 | 751 | "detect-indent@^4.0.0": 752 | "integrity" "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=" 753 | "resolved" "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz" 754 | "version" "4.0.0" 755 | dependencies: 756 | "repeating" "^2.0.0" 757 | 758 | "diff@^3.2.0": 759 | "integrity" "sha1-yc45Okt8vQsFinJck98pkCeGj/k=" 760 | "resolved" "https://registry.npmjs.org/diff/-/diff-3.2.0.tgz" 761 | "version" "3.2.0" 762 | 763 | "doctrine@^2.0.0": 764 | "integrity" "sha1-xz2NKQnSIpHhoAejlYBNqLZl/mM=" 765 | "resolved" "https://registry.npmjs.org/doctrine/-/doctrine-2.0.0.tgz" 766 | "version" "2.0.0" 767 | dependencies: 768 | "esutils" "^2.0.2" 769 | "isarray" "^1.0.0" 770 | 771 | "ecc-jsbn@~0.1.1": 772 | "integrity" "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=" 773 | "resolved" "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz" 774 | "version" "0.1.2" 775 | dependencies: 776 | "jsbn" "~0.1.0" 777 | "safer-buffer" "^2.1.0" 778 | 779 | "elegant-spinner@^1.0.1": 780 | "integrity" "sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=" 781 | "resolved" "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz" 782 | "version" "1.0.1" 783 | 784 | "errno@>=0.1.1 <0.2.0-0": 785 | "integrity" "sha1-uJbiOp5ei6M4cfyZar02NfyaHH0=" 786 | "resolved" "https://registry.npmjs.org/errno/-/errno-0.1.4.tgz" 787 | "version" "0.1.4" 788 | dependencies: 789 | "prr" "~0.0.0" 790 | 791 | "error-ex@^1.2.0": 792 | "integrity" "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=" 793 | "resolved" "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz" 794 | "version" "1.3.1" 795 | dependencies: 796 | "is-arrayish" "^0.2.1" 797 | 798 | "escape-string-regexp@^1.0.2", "escape-string-regexp@^1.0.5": 799 | "integrity" "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=" 800 | "resolved" "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz" 801 | "version" "1.0.5" 802 | 803 | "escodegen@^1.6.1": 804 | "integrity" "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=" 805 | "resolved" "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz" 806 | "version" "1.8.1" 807 | dependencies: 808 | "esprima" "^2.7.1" 809 | "estraverse" "^1.9.1" 810 | "esutils" "^2.0.2" 811 | "optionator" "^0.8.1" 812 | optionalDependencies: 813 | "source-map" "~0.2.0" 814 | 815 | "eslint-plugin-node@^5.0.0": 816 | "integrity" "sha512-9xERRx9V/8ciUHlTDlz9S4JiTL6Dc5oO+jKTy2mvQpxjhycpYZXzTT1t90IXjf+nAYw6/8sDnZfkeixJHxromA==" 817 | "resolved" "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-5.0.0.tgz" 818 | "version" "5.0.0" 819 | dependencies: 820 | "ignore" "^3.3.3" 821 | "minimatch" "^3.0.4" 822 | "resolve" "^1.3.3" 823 | "semver" "5.3.0" 824 | 825 | "eslint-scope@^3.7.1": 826 | "integrity" "sha1-PWPD7f2gLgbgGkUq2IyqzHzctug=" 827 | "resolved" "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.1.tgz" 828 | "version" "3.7.1" 829 | dependencies: 830 | "esrecurse" "^4.1.0" 831 | "estraverse" "^4.1.1" 832 | 833 | "eslint@^4.0.0", "eslint@>=3.1.0": 834 | "integrity" "sha1-cnfAFDf99B3M0WjVqg5Jt1yh8mA=" 835 | "resolved" "https://registry.npmjs.org/eslint/-/eslint-4.0.0.tgz" 836 | "version" "4.0.0" 837 | dependencies: 838 | "babel-code-frame" "^6.22.0" 839 | "chalk" "^1.1.3" 840 | "concat-stream" "^1.6.0" 841 | "debug" "^2.6.8" 842 | "doctrine" "^2.0.0" 843 | "eslint-scope" "^3.7.1" 844 | "espree" "^3.4.3" 845 | "esquery" "^1.0.0" 846 | "estraverse" "^4.2.0" 847 | "esutils" "^2.0.2" 848 | "file-entry-cache" "^2.0.0" 849 | "glob" "^7.1.2" 850 | "globals" "^9.17.0" 851 | "ignore" "^3.3.3" 852 | "imurmurhash" "^0.1.4" 853 | "inquirer" "^3.0.6" 854 | "is-my-json-valid" "^2.16.0" 855 | "is-resolvable" "^1.0.0" 856 | "js-yaml" "^3.8.4" 857 | "json-stable-stringify" "^1.0.1" 858 | "levn" "^0.3.0" 859 | "lodash" "^4.17.4" 860 | "mkdirp" "^0.5.1" 861 | "natural-compare" "^1.4.0" 862 | "optionator" "^0.8.2" 863 | "path-is-inside" "^1.0.2" 864 | "pluralize" "^4.0.0" 865 | "progress" "^2.0.0" 866 | "require-uncached" "^1.0.3" 867 | "strip-json-comments" "~2.0.1" 868 | "table" "^4.0.1" 869 | "text-table" "~0.2.0" 870 | 871 | "espree@^3.4.3": 872 | "integrity" "sha1-KRC1zNSc6JPC//+qtP2LOjG4I3Q=" 873 | "resolved" "https://registry.npmjs.org/espree/-/espree-3.4.3.tgz" 874 | "version" "3.4.3" 875 | dependencies: 876 | "acorn" "^5.0.1" 877 | "acorn-jsx" "^3.0.0" 878 | 879 | "esprima@^2.7.1": 880 | "integrity" "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=" 881 | "resolved" "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz" 882 | "version" "2.7.3" 883 | 884 | "esprima@^4.0.0": 885 | "integrity" "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" 886 | "resolved" "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz" 887 | "version" "4.0.1" 888 | 889 | "esquery@^1.0.0": 890 | "integrity" "sha1-z7qLV9f7qT8XKYqKAGoEzaE9gPo=" 891 | "resolved" "https://registry.npmjs.org/esquery/-/esquery-1.0.0.tgz" 892 | "version" "1.0.0" 893 | dependencies: 894 | "estraverse" "^4.0.0" 895 | 896 | "esrecurse@^4.1.0": 897 | "integrity" "sha1-+pVo2Y04I/mkHZHpAtyrnqblsWM=" 898 | "resolved" "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.0.tgz" 899 | "version" "4.2.0" 900 | dependencies: 901 | "estraverse" "^4.1.0" 902 | "object-assign" "^4.0.1" 903 | 904 | "estraverse@^1.9.1": 905 | "integrity" "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=" 906 | "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz" 907 | "version" "1.9.3" 908 | 909 | "estraverse@^4.0.0", "estraverse@^4.1.0", "estraverse@^4.1.1", "estraverse@^4.2.0": 910 | "integrity" "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=" 911 | "resolved" "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz" 912 | "version" "4.2.0" 913 | 914 | "esutils@^2.0.2": 915 | "integrity" "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=" 916 | "resolved" "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz" 917 | "version" "2.0.2" 918 | 919 | "exec-sh@^0.2.0": 920 | "integrity" "sha1-FPdd4/INKG75MwmbLOUKkDWc7xA=" 921 | "resolved" "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.0.tgz" 922 | "version" "0.2.0" 923 | dependencies: 924 | "merge" "^1.1.3" 925 | 926 | "execa@^0.7.0": 927 | "integrity" "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=" 928 | "resolved" "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz" 929 | "version" "0.7.0" 930 | dependencies: 931 | "cross-spawn" "^5.0.1" 932 | "get-stream" "^3.0.0" 933 | "is-stream" "^1.1.0" 934 | "npm-run-path" "^2.0.0" 935 | "p-finally" "^1.0.0" 936 | "signal-exit" "^3.0.0" 937 | "strip-eof" "^1.0.0" 938 | 939 | "exit-hook@^1.0.0": 940 | "integrity" "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=" 941 | "resolved" "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz" 942 | "version" "1.1.1" 943 | 944 | "expand-brackets@^0.1.4": 945 | "integrity" "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=" 946 | "resolved" "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz" 947 | "version" "0.1.5" 948 | dependencies: 949 | "is-posix-bracket" "^0.1.0" 950 | 951 | "expand-range@^1.8.1": 952 | "integrity" "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=" 953 | "resolved" "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz" 954 | "version" "1.8.2" 955 | dependencies: 956 | "fill-range" "^2.1.0" 957 | 958 | "extend@^3.0.0", "extend@~3.0.2": 959 | "integrity" "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" 960 | "resolved" "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz" 961 | "version" "3.0.2" 962 | 963 | "external-editor@^2.0.4": 964 | "integrity" "sha1-HtkZnanL/i7y96MbL96LDRI2iXI=" 965 | "resolved" "https://registry.npmjs.org/external-editor/-/external-editor-2.0.4.tgz" 966 | "version" "2.0.4" 967 | dependencies: 968 | "iconv-lite" "^0.4.17" 969 | "jschardet" "^1.4.2" 970 | "tmp" "^0.0.31" 971 | 972 | "extglob@^0.3.1": 973 | "integrity" "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=" 974 | "resolved" "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz" 975 | "version" "0.3.2" 976 | dependencies: 977 | "is-extglob" "^1.0.0" 978 | 979 | "extsprintf@^1.2.0", "extsprintf@1.3.0": 980 | "integrity" "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" 981 | "resolved" "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz" 982 | "version" "1.3.0" 983 | 984 | "fast-deep-equal@^3.1.1": 985 | "integrity" "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" 986 | "resolved" "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz" 987 | "version" "3.1.3" 988 | 989 | "fast-json-stable-stringify@^2.0.0": 990 | "integrity" "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" 991 | "resolved" "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz" 992 | "version" "2.1.0" 993 | 994 | "fast-levenshtein@~2.0.4": 995 | "integrity" "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" 996 | "resolved" "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz" 997 | "version" "2.0.6" 998 | 999 | "fb-watchman@^1.8.0": 1000 | "integrity" "sha1-okz0eCf4LTj7Waaa1wt247auc4M=" 1001 | "resolved" "https://registry.npmjs.org/fb-watchman/-/fb-watchman-1.9.2.tgz" 1002 | "version" "1.9.2" 1003 | dependencies: 1004 | "bser" "1.0.2" 1005 | 1006 | "fb-watchman@^2.0.0": 1007 | "integrity" "sha1-VOmr99+i8mzZsWNsWIwa/AXeXVg=" 1008 | "resolved" "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.0.tgz" 1009 | "version" "2.0.0" 1010 | dependencies: 1011 | "bser" "^2.0.0" 1012 | 1013 | "figures@^1.7.0": 1014 | "integrity" "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=" 1015 | "resolved" "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz" 1016 | "version" "1.7.0" 1017 | dependencies: 1018 | "escape-string-regexp" "^1.0.5" 1019 | "object-assign" "^4.1.0" 1020 | 1021 | "figures@^2.0.0": 1022 | "integrity" "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=" 1023 | "resolved" "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz" 1024 | "version" "2.0.0" 1025 | dependencies: 1026 | "escape-string-regexp" "^1.0.5" 1027 | 1028 | "file-entry-cache@^2.0.0": 1029 | "integrity" "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=" 1030 | "resolved" "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz" 1031 | "version" "2.0.0" 1032 | dependencies: 1033 | "flat-cache" "^1.2.1" 1034 | "object-assign" "^4.0.1" 1035 | 1036 | "filename-regex@^2.0.0": 1037 | "integrity" "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" 1038 | "resolved" "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz" 1039 | "version" "2.0.1" 1040 | 1041 | "fileset@^2.0.2": 1042 | "integrity" "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=" 1043 | "resolved" "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz" 1044 | "version" "2.0.3" 1045 | dependencies: 1046 | "glob" "^7.0.3" 1047 | "minimatch" "^3.0.3" 1048 | 1049 | "fill-range@^2.1.0": 1050 | "integrity" "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==" 1051 | "resolved" "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz" 1052 | "version" "2.2.4" 1053 | dependencies: 1054 | "is-number" "^2.1.0" 1055 | "isobject" "^2.0.0" 1056 | "randomatic" "^3.0.0" 1057 | "repeat-element" "^1.1.2" 1058 | "repeat-string" "^1.5.2" 1059 | 1060 | "find-parent-dir@^0.3.0": 1061 | "integrity" "sha1-M8RLQpqysvBkYpnF+fcY83b/jVQ=" 1062 | "resolved" "https://registry.npmjs.org/find-parent-dir/-/find-parent-dir-0.3.0.tgz" 1063 | "version" "0.3.0" 1064 | 1065 | "find-up@^1.0.0": 1066 | "integrity" "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=" 1067 | "resolved" "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz" 1068 | "version" "1.1.2" 1069 | dependencies: 1070 | "path-exists" "^2.0.0" 1071 | "pinkie-promise" "^2.0.0" 1072 | 1073 | "find-up@^2.1.0": 1074 | "integrity" "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=" 1075 | "resolved" "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz" 1076 | "version" "2.1.0" 1077 | dependencies: 1078 | "locate-path" "^2.0.0" 1079 | 1080 | "flat-cache@^1.2.1": 1081 | "integrity" "sha1-+oZxTnLCHbiGAXYezy9VXRq8a5Y=" 1082 | "resolved" "https://registry.npmjs.org/flat-cache/-/flat-cache-1.2.2.tgz" 1083 | "version" "1.2.2" 1084 | dependencies: 1085 | "circular-json" "^0.3.1" 1086 | "del" "^2.0.2" 1087 | "graceful-fs" "^4.1.2" 1088 | "write" "^0.2.1" 1089 | 1090 | "for-in@^1.0.1": 1091 | "integrity" "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=" 1092 | "resolved" "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz" 1093 | "version" "1.0.2" 1094 | 1095 | "for-own@^0.1.4": 1096 | "integrity" "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=" 1097 | "resolved" "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz" 1098 | "version" "0.1.5" 1099 | dependencies: 1100 | "for-in" "^1.0.1" 1101 | 1102 | "forever-agent@~0.6.1": 1103 | "integrity" "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=" 1104 | "resolved" "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz" 1105 | "version" "0.6.1" 1106 | 1107 | "form-data@~2.3.2": 1108 | "integrity" "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==" 1109 | "resolved" "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz" 1110 | "version" "2.3.3" 1111 | dependencies: 1112 | "asynckit" "^0.4.0" 1113 | "combined-stream" "^1.0.6" 1114 | "mime-types" "^2.1.12" 1115 | 1116 | "fs.realpath@^1.0.0": 1117 | "integrity" "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" 1118 | "resolved" "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz" 1119 | "version" "1.0.0" 1120 | 1121 | "function-bind@^1.1.1": 1122 | "integrity" "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" 1123 | "resolved" "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz" 1124 | "version" "1.1.1" 1125 | 1126 | "generate-function@^2.0.0": 1127 | "integrity" "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=" 1128 | "resolved" "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz" 1129 | "version" "2.0.0" 1130 | 1131 | "generate-object-property@^1.1.0": 1132 | "integrity" "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=" 1133 | "resolved" "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz" 1134 | "version" "1.2.0" 1135 | dependencies: 1136 | "is-property" "^1.0.0" 1137 | 1138 | "get-caller-file@^1.0.1": 1139 | "integrity" "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=" 1140 | "resolved" "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz" 1141 | "version" "1.0.2" 1142 | 1143 | "get-intrinsic@^1.0.0": 1144 | "integrity" "sha512-aeX0vrFm21ILl3+JpFFRNe9aUvp6VFZb2/CTbgLb8j75kOhvoNYjt9d8KA/tJG4gSo8nzEDedRl0h7vDmBYRVg==" 1145 | "resolved" "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.2.tgz" 1146 | "version" "1.0.2" 1147 | dependencies: 1148 | "function-bind" "^1.1.1" 1149 | "has" "^1.0.3" 1150 | "has-symbols" "^1.0.1" 1151 | 1152 | "get-stream@^3.0.0": 1153 | "integrity" "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=" 1154 | "resolved" "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz" 1155 | "version" "3.0.0" 1156 | 1157 | "getpass@^0.1.1": 1158 | "integrity" "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=" 1159 | "resolved" "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz" 1160 | "version" "0.1.7" 1161 | dependencies: 1162 | "assert-plus" "^1.0.0" 1163 | 1164 | "glob-base@^0.3.0": 1165 | "integrity" "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=" 1166 | "resolved" "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz" 1167 | "version" "0.3.0" 1168 | dependencies: 1169 | "glob-parent" "^2.0.0" 1170 | "is-glob" "^2.0.0" 1171 | 1172 | "glob-parent@^2.0.0": 1173 | "integrity" "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=" 1174 | "resolved" "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz" 1175 | "version" "2.0.0" 1176 | dependencies: 1177 | "is-glob" "^2.0.0" 1178 | 1179 | "glob@^7.0.3", "glob@^7.0.5", "glob@^7.1.1", "glob@^7.1.2": 1180 | "integrity" "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==" 1181 | "resolved" "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz" 1182 | "version" "7.1.2" 1183 | dependencies: 1184 | "fs.realpath" "^1.0.0" 1185 | "inflight" "^1.0.4" 1186 | "inherits" "2" 1187 | "minimatch" "^3.0.4" 1188 | "once" "^1.3.0" 1189 | "path-is-absolute" "^1.0.0" 1190 | 1191 | "globals@^9.0.0", "globals@^9.17.0": 1192 | "integrity" "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==" 1193 | "resolved" "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz" 1194 | "version" "9.18.0" 1195 | 1196 | "globby@^5.0.0": 1197 | "integrity" "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=" 1198 | "resolved" "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz" 1199 | "version" "5.0.0" 1200 | dependencies: 1201 | "array-union" "^1.0.1" 1202 | "arrify" "^1.0.0" 1203 | "glob" "^7.0.3" 1204 | "object-assign" "^4.0.1" 1205 | "pify" "^2.0.0" 1206 | "pinkie-promise" "^2.0.0" 1207 | 1208 | "good-listener@^1.2.2": 1209 | "integrity" "sha1-1TswzfkxPf+33JoNR3CWqm0UXFA=" 1210 | "resolved" "https://registry.npmjs.org/good-listener/-/good-listener-1.2.2.tgz" 1211 | "version" "1.2.2" 1212 | dependencies: 1213 | "delegate" "^3.1.2" 1214 | 1215 | "graceful-fs@^4.1.11", "graceful-fs@^4.1.2": 1216 | "integrity" "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=" 1217 | "resolved" "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz" 1218 | "version" "4.1.11" 1219 | 1220 | "graceful-readlink@>= 1.0.0": 1221 | "integrity" "sha1-TK+tdrxi8C+gObL5Tpo906ORpyU=" 1222 | "resolved" "https://registry.npmjs.org/graceful-readlink/-/graceful-readlink-1.0.1.tgz" 1223 | "version" "1.0.1" 1224 | 1225 | "growly@^1.3.0": 1226 | "integrity" "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=" 1227 | "resolved" "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz" 1228 | "version" "1.3.0" 1229 | 1230 | "handlebars@^4.0.3": 1231 | "integrity" "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==" 1232 | "resolved" "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz" 1233 | "version" "4.7.6" 1234 | dependencies: 1235 | "minimist" "^1.2.5" 1236 | "neo-async" "^2.6.0" 1237 | "source-map" "^0.6.1" 1238 | "wordwrap" "^1.0.0" 1239 | optionalDependencies: 1240 | "uglify-js" "^3.1.4" 1241 | 1242 | "har-schema@^2.0.0": 1243 | "integrity" "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=" 1244 | "resolved" "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz" 1245 | "version" "2.0.0" 1246 | 1247 | "har-validator@~5.1.3": 1248 | "integrity" "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==" 1249 | "resolved" "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz" 1250 | "version" "5.1.5" 1251 | dependencies: 1252 | "ajv" "^6.12.3" 1253 | "har-schema" "^2.0.0" 1254 | 1255 | "has-ansi@^2.0.0": 1256 | "integrity" "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=" 1257 | "resolved" "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz" 1258 | "version" "2.0.0" 1259 | dependencies: 1260 | "ansi-regex" "^2.0.0" 1261 | 1262 | "has-flag@^1.0.0": 1263 | "integrity" "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=" 1264 | "resolved" "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz" 1265 | "version" "1.0.0" 1266 | 1267 | "has-symbols@^1.0.1": 1268 | "integrity" "sha512-PLcsoqu++dmEIZB+6totNFKq/7Do+Z0u4oT0zKOJNl3lYK6vGwwu2hjHs+68OEZbTjiUE9bgOABXbP/GvrS0Kg==" 1269 | "resolved" "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.1.tgz" 1270 | "version" "1.0.1" 1271 | 1272 | "has@^1.0.3": 1273 | "integrity" "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==" 1274 | "resolved" "https://registry.npmjs.org/has/-/has-1.0.3.tgz" 1275 | "version" "1.0.3" 1276 | dependencies: 1277 | "function-bind" "^1.1.1" 1278 | 1279 | "hast-util-from-parse5@^6.0.0": 1280 | "integrity" "sha512-jeJUWiN5pSxW12Rh01smtVkZgZr33wBokLzKLwinYOUfSzm1Nl/c3GUGebDyOKjdsRgMvoVbV0VpAcpjF4NrJA==" 1281 | "resolved" "https://registry.npmjs.org/hast-util-from-parse5/-/hast-util-from-parse5-6.0.1.tgz" 1282 | "version" "6.0.1" 1283 | dependencies: 1284 | "@types/parse5" "^5.0.0" 1285 | "hastscript" "^6.0.0" 1286 | "property-information" "^5.0.0" 1287 | "vfile" "^4.0.0" 1288 | "vfile-location" "^3.2.0" 1289 | "web-namespaces" "^1.0.0" 1290 | 1291 | "hast-util-is-element@^1.0.0": 1292 | "integrity" "sha1-P3IWl4sq4U2YdJh4eCZ18zvjzgA=" 1293 | "resolved" "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-1.0.0.tgz" 1294 | "version" "1.0.0" 1295 | 1296 | "hast-util-parse-selector@^2.0.0": 1297 | "integrity" "sha1-tVwPS7e7IEDIicMl74erKcOBArQ=" 1298 | "resolved" "https://registry.npmjs.org/hast-util-parse-selector/-/hast-util-parse-selector-2.1.0.tgz" 1299 | "version" "2.1.0" 1300 | 1301 | "hast-util-to-html@^7.1.1": 1302 | "integrity" "sha512-yk2+1p3EJTEE9ZEUkgHsUSVhIpCsL/bvT8E5GzmWc+N1Po5gBw+0F8bo7dpxXR0nu0bQVxVZGX2lBGF21CmeDw==" 1303 | "resolved" "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-7.1.3.tgz" 1304 | "version" "7.1.3" 1305 | dependencies: 1306 | "ccount" "^1.0.0" 1307 | "comma-separated-tokens" "^1.0.0" 1308 | "hast-util-is-element" "^1.0.0" 1309 | "hast-util-whitespace" "^1.0.0" 1310 | "html-void-elements" "^1.0.0" 1311 | "property-information" "^5.0.0" 1312 | "space-separated-tokens" "^1.0.0" 1313 | "stringify-entities" "^3.0.1" 1314 | "unist-util-is" "^4.0.0" 1315 | "xtend" "^4.0.0" 1316 | 1317 | "hast-util-to-string@^1.0.0": 1318 | "integrity" "sha1-FsB2cfDyrHc15FXNrjLHwbiWPyo=" 1319 | "resolved" "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-1.0.0.tgz" 1320 | "version" "1.0.0" 1321 | 1322 | "hast-util-whitespace@^1.0.0": 1323 | "integrity" "sha1-vQlpGWJdKTbh/xe8Tff9cn8X7Ok=" 1324 | "resolved" "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-1.0.0.tgz" 1325 | "version" "1.0.0" 1326 | 1327 | "hastscript@^6.0.0": 1328 | "integrity" "sha512-nDM6bvd7lIqDUiYEiu5Sl/+6ReP0BMk/2f4U/Rooccxkj0P5nm+acM5PrGJ/t5I8qPGiqZSE6hVAwZEdZIvP4w==" 1329 | "resolved" "https://registry.npmjs.org/hastscript/-/hastscript-6.0.0.tgz" 1330 | "version" "6.0.0" 1331 | dependencies: 1332 | "@types/hast" "^2.0.0" 1333 | "comma-separated-tokens" "^1.0.0" 1334 | "hast-util-parse-selector" "^2.0.0" 1335 | "property-information" "^5.0.0" 1336 | "space-separated-tokens" "^1.0.0" 1337 | 1338 | "home-or-tmp@^2.0.0": 1339 | "integrity" "sha1-42w/LSyufXRqhX440Y1fMqeILbg=" 1340 | "resolved" "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz" 1341 | "version" "2.0.0" 1342 | dependencies: 1343 | "os-homedir" "^1.0.0" 1344 | "os-tmpdir" "^1.0.1" 1345 | 1346 | "hosted-git-info@^2.1.4": 1347 | "integrity" "sha1-AHa59GonBQbduq6lZJaJdGBhKmc=" 1348 | "resolved" "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.4.2.tgz" 1349 | "version" "2.4.2" 1350 | 1351 | "html-encoding-sniffer@^1.0.1": 1352 | "integrity" "sha1-eb96eF6klf5mFl5zQVPzY/9UN9o=" 1353 | "resolved" "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.1.tgz" 1354 | "version" "1.0.1" 1355 | dependencies: 1356 | "whatwg-encoding" "^1.0.1" 1357 | 1358 | "html-void-elements@^1.0.0": 1359 | "integrity" "sha1-+Sm+omehnjU1lQUCyhLBWfG1Wa8=" 1360 | "resolved" "https://registry.npmjs.org/html-void-elements/-/html-void-elements-1.0.1.tgz" 1361 | "version" "1.0.1" 1362 | 1363 | "http-signature@~1.2.0": 1364 | "integrity" "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=" 1365 | "resolved" "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz" 1366 | "version" "1.2.0" 1367 | dependencies: 1368 | "assert-plus" "^1.0.0" 1369 | "jsprim" "^1.2.2" 1370 | "sshpk" "^1.7.0" 1371 | 1372 | "husky@^0.13.4": 1373 | "integrity" "sha1-SHhcUCjeNFKlHEjBLE+UshJKFAc=" 1374 | "resolved" "https://registry.npmjs.org/husky/-/husky-0.13.4.tgz" 1375 | "version" "0.13.4" 1376 | dependencies: 1377 | "chalk" "^1.1.3" 1378 | "find-parent-dir" "^0.3.0" 1379 | "is-ci" "^1.0.9" 1380 | "normalize-path" "^1.0.0" 1381 | 1382 | "iconv-lite@^0.4.17": 1383 | "integrity" "sha512-sr1ZQph3UwHTR0XftSbK85OvBbxe/abLGzEnPENCQwmHf7sck8Oyu4ob3LgBxWWxRoM+QszeUyl7jbqapu2TqA==" 1384 | "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.18.tgz" 1385 | "version" "0.4.18" 1386 | 1387 | "iconv-lite@0.4.13": 1388 | "integrity" "sha1-H4irpKsLFQjoMSrMOTRfNumS4vI=" 1389 | "resolved" "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.13.tgz" 1390 | "version" "0.4.13" 1391 | 1392 | "ignore@^3.3.3": 1393 | "integrity" "sha1-QyNS5XrM2HqzEQ6C0/6g5HgSFW0=" 1394 | "resolved" "https://registry.npmjs.org/ignore/-/ignore-3.3.3.tgz" 1395 | "version" "3.3.3" 1396 | 1397 | "imurmurhash@^0.1.4": 1398 | "integrity" "sha1-khi5srkoojixPcT7a21XbyMUU+o=" 1399 | "resolved" "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz" 1400 | "version" "0.1.4" 1401 | 1402 | "indent-string@^2.1.0": 1403 | "integrity" "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=" 1404 | "resolved" "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz" 1405 | "version" "2.1.0" 1406 | dependencies: 1407 | "repeating" "^2.0.0" 1408 | 1409 | "indent-string@^3.0.0": 1410 | "integrity" "sha1-CP9DNGAziDmbMp5rlTjcejz13n0=" 1411 | "resolved" "https://registry.npmjs.org/indent-string/-/indent-string-3.1.0.tgz" 1412 | "version" "3.1.0" 1413 | 1414 | "inflight@^1.0.4": 1415 | "integrity" "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=" 1416 | "resolved" "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz" 1417 | "version" "1.0.6" 1418 | dependencies: 1419 | "once" "^1.3.0" 1420 | "wrappy" "1" 1421 | 1422 | "inherits@^2.0.3", "inherits@~2.0.3", "inherits@2": 1423 | "integrity" "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" 1424 | "resolved" "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz" 1425 | "version" "2.0.3" 1426 | 1427 | "inquirer@^3.0.6": 1428 | "integrity" "sha512-H50sHQwgvvaTBd3HpKMVtL/u6LoHDvYym51gd7bGQe/+9HkCE+J0/3N5FJLfd6O6oz44hHewC2Pc2LodzWVafQ==" 1429 | "resolved" "https://registry.npmjs.org/inquirer/-/inquirer-3.1.1.tgz" 1430 | "version" "3.1.1" 1431 | dependencies: 1432 | "ansi-escapes" "^2.0.0" 1433 | "chalk" "^1.0.0" 1434 | "cli-cursor" "^2.1.0" 1435 | "cli-width" "^2.0.0" 1436 | "external-editor" "^2.0.4" 1437 | "figures" "^2.0.0" 1438 | "lodash" "^4.3.0" 1439 | "mute-stream" "0.0.7" 1440 | "run-async" "^2.2.0" 1441 | "rx-lite" "^4.0.8" 1442 | "rx-lite-aggregates" "^4.0.8" 1443 | "string-width" "^2.0.0" 1444 | "strip-ansi" "^3.0.0" 1445 | "through" "^2.3.6" 1446 | 1447 | "invariant@^2.2.0": 1448 | "integrity" "sha1-nh9WrArNtr8wMwbzOL47IErmA2A=" 1449 | "resolved" "https://registry.npmjs.org/invariant/-/invariant-2.2.2.tgz" 1450 | "version" "2.2.2" 1451 | dependencies: 1452 | "loose-envify" "^1.0.0" 1453 | 1454 | "invert-kv@^1.0.0": 1455 | "integrity" "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=" 1456 | "resolved" "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz" 1457 | "version" "1.0.0" 1458 | 1459 | "is-alphabetical@^1.0.0": 1460 | "integrity" "sha1-4lRMEwWCVfIUTLdXBmzTNCocjEY=" 1461 | "resolved" "https://registry.npmjs.org/is-alphabetical/-/is-alphabetical-1.0.0.tgz" 1462 | "version" "1.0.0" 1463 | 1464 | "is-alphanumerical@^1.0.0": 1465 | "integrity" "sha1-4GSS5xnBvxXewjnk8a9fZ7TW578=" 1466 | "resolved" "https://registry.npmjs.org/is-alphanumerical/-/is-alphanumerical-1.0.0.tgz" 1467 | "version" "1.0.0" 1468 | dependencies: 1469 | "is-alphabetical" "^1.0.0" 1470 | "is-decimal" "^1.0.0" 1471 | 1472 | "is-arrayish@^0.2.1": 1473 | "integrity" "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=" 1474 | "resolved" "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz" 1475 | "version" "0.2.1" 1476 | 1477 | "is-buffer@^1.1.5": 1478 | "integrity" "sha1-Hzsm72E7IUuIy8ojzGwB2Hlh7sw=" 1479 | "resolved" "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.5.tgz" 1480 | "version" "1.1.5" 1481 | 1482 | "is-buffer@^2.0.0": 1483 | "integrity" "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" 1484 | "resolved" "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz" 1485 | "version" "2.0.5" 1486 | 1487 | "is-builtin-module@^1.0.0": 1488 | "integrity" "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=" 1489 | "resolved" "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz" 1490 | "version" "1.0.0" 1491 | dependencies: 1492 | "builtin-modules" "^1.0.0" 1493 | 1494 | "is-ci@^1.0.10", "is-ci@^1.0.9": 1495 | "integrity" "sha1-9zkzayYyNlBhqdSCcM1WrjNpMY4=" 1496 | "resolved" "https://registry.npmjs.org/is-ci/-/is-ci-1.0.10.tgz" 1497 | "version" "1.0.10" 1498 | dependencies: 1499 | "ci-info" "^1.0.0" 1500 | 1501 | "is-decimal@^1.0.0": 1502 | "integrity" "sha1-lAV5tupjxigICmnmK9qIyEcLT+A=" 1503 | "resolved" "https://registry.npmjs.org/is-decimal/-/is-decimal-1.0.0.tgz" 1504 | "version" "1.0.0" 1505 | 1506 | "is-dotfile@^1.0.0": 1507 | "integrity" "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=" 1508 | "resolved" "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz" 1509 | "version" "1.0.3" 1510 | 1511 | "is-equal-shallow@^0.1.3": 1512 | "integrity" "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=" 1513 | "resolved" "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz" 1514 | "version" "0.1.3" 1515 | dependencies: 1516 | "is-primitive" "^2.0.0" 1517 | 1518 | "is-extendable@^0.1.1": 1519 | "integrity" "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" 1520 | "resolved" "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz" 1521 | "version" "0.1.1" 1522 | 1523 | "is-extglob@^1.0.0": 1524 | "integrity" "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=" 1525 | "resolved" "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz" 1526 | "version" "1.0.0" 1527 | 1528 | "is-finite@^1.0.0": 1529 | "integrity" "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=" 1530 | "resolved" "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz" 1531 | "version" "1.0.2" 1532 | dependencies: 1533 | "number-is-nan" "^1.0.0" 1534 | 1535 | "is-fullwidth-code-point@^1.0.0": 1536 | "integrity" "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=" 1537 | "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz" 1538 | "version" "1.0.0" 1539 | dependencies: 1540 | "number-is-nan" "^1.0.0" 1541 | 1542 | "is-fullwidth-code-point@^2.0.0": 1543 | "integrity" "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" 1544 | "resolved" "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz" 1545 | "version" "2.0.0" 1546 | 1547 | "is-glob@^2.0.0", "is-glob@^2.0.1": 1548 | "integrity" "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=" 1549 | "resolved" "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz" 1550 | "version" "2.0.1" 1551 | dependencies: 1552 | "is-extglob" "^1.0.0" 1553 | 1554 | "is-hexadecimal@^1.0.0": 1555 | "integrity" "sha1-XEWXcdKvmi45Ungf1U/LG8/kETw=" 1556 | "resolved" "https://registry.npmjs.org/is-hexadecimal/-/is-hexadecimal-1.0.0.tgz" 1557 | "version" "1.0.0" 1558 | 1559 | "is-my-ip-valid@^1.0.0": 1560 | "integrity" "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==" 1561 | "resolved" "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz" 1562 | "version" "1.0.0" 1563 | 1564 | "is-my-json-valid@^2.16.0": 1565 | "integrity" "sha512-VTPuvvGQtxvCeghwspQu1rBgjYUT6FGxPlvFKbYuFtgc4ADsX3U5ihZOYN0qyU6u+d4X9xXb0IT5O6QpXKt87A==" 1566 | "resolved" "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.20.5.tgz" 1567 | "version" "2.20.5" 1568 | dependencies: 1569 | "generate-function" "^2.0.0" 1570 | "generate-object-property" "^1.1.0" 1571 | "is-my-ip-valid" "^1.0.0" 1572 | "jsonpointer" "^4.0.0" 1573 | "xtend" "^4.0.0" 1574 | 1575 | "is-number@^2.1.0": 1576 | "integrity" "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=" 1577 | "resolved" "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz" 1578 | "version" "2.1.0" 1579 | dependencies: 1580 | "kind-of" "^3.0.2" 1581 | 1582 | "is-number@^4.0.0": 1583 | "integrity" "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" 1584 | "resolved" "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz" 1585 | "version" "4.0.0" 1586 | 1587 | "is-path-cwd@^1.0.0": 1588 | "integrity" "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=" 1589 | "resolved" "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz" 1590 | "version" "1.0.0" 1591 | 1592 | "is-path-in-cwd@^1.0.0": 1593 | "integrity" "sha1-ZHdYK4IU1gI0YJRWcAO+ip6sBNw=" 1594 | "resolved" "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz" 1595 | "version" "1.0.0" 1596 | dependencies: 1597 | "is-path-inside" "^1.0.0" 1598 | 1599 | "is-path-inside@^1.0.0": 1600 | "integrity" "sha1-/AbloWg/vaE95mev9xe7wQpI838=" 1601 | "resolved" "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.0.tgz" 1602 | "version" "1.0.0" 1603 | dependencies: 1604 | "path-is-inside" "^1.0.1" 1605 | 1606 | "is-plain-obj@^2.0.0": 1607 | "integrity" "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" 1608 | "resolved" "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz" 1609 | "version" "2.1.0" 1610 | 1611 | "is-posix-bracket@^0.1.0": 1612 | "integrity" "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=" 1613 | "resolved" "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz" 1614 | "version" "0.1.1" 1615 | 1616 | "is-primitive@^2.0.0": 1617 | "integrity" "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=" 1618 | "resolved" "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz" 1619 | "version" "2.0.0" 1620 | 1621 | "is-promise@^2.1.0": 1622 | "integrity" "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" 1623 | "resolved" "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz" 1624 | "version" "2.1.0" 1625 | 1626 | "is-property@^1.0.0": 1627 | "integrity" "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" 1628 | "resolved" "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz" 1629 | "version" "1.0.2" 1630 | 1631 | "is-resolvable@^1.0.0": 1632 | "integrity" "sha1-jfV8YeouPFAUCNEA+wE8+NbgzGI=" 1633 | "resolved" "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.0.0.tgz" 1634 | "version" "1.0.0" 1635 | dependencies: 1636 | "tryit" "^1.0.1" 1637 | 1638 | "is-stream@^1.1.0": 1639 | "integrity" "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=" 1640 | "resolved" "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz" 1641 | "version" "1.1.0" 1642 | 1643 | "is-typedarray@~1.0.0": 1644 | "integrity" "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" 1645 | "resolved" "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz" 1646 | "version" "1.0.0" 1647 | 1648 | "is-utf8@^0.2.0": 1649 | "integrity" "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=" 1650 | "resolved" "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz" 1651 | "version" "0.2.1" 1652 | 1653 | "isarray@^1.0.0", "isarray@~1.0.0", "isarray@1.0.0": 1654 | "integrity" "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" 1655 | "resolved" "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" 1656 | "version" "1.0.0" 1657 | 1658 | "isexe@^2.0.0": 1659 | "integrity" "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=" 1660 | "resolved" "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz" 1661 | "version" "2.0.0" 1662 | 1663 | "isobject@^2.0.0": 1664 | "integrity" "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=" 1665 | "resolved" "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz" 1666 | "version" "2.1.0" 1667 | dependencies: 1668 | "isarray" "1.0.0" 1669 | 1670 | "isstream@~0.1.2": 1671 | "integrity" "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" 1672 | "resolved" "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz" 1673 | "version" "0.1.2" 1674 | 1675 | "istanbul-api@^1.1.1": 1676 | "integrity" "sha512-zV14oa+hjBNP3gJTM/BzNdJpInHKbZ9cLIEwVasuaTUA1ebF9TBOIfcC5SDAE3C11rXxOw3KSimKGMiFz6PpWQ==" 1677 | "resolved" "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.1.9.tgz" 1678 | "version" "1.1.9" 1679 | dependencies: 1680 | "async" "^2.1.4" 1681 | "fileset" "^2.0.2" 1682 | "istanbul-lib-coverage" "^1.1.1" 1683 | "istanbul-lib-hook" "^1.0.7" 1684 | "istanbul-lib-instrument" "^1.7.2" 1685 | "istanbul-lib-report" "^1.1.1" 1686 | "istanbul-lib-source-maps" "^1.2.1" 1687 | "istanbul-reports" "^1.1.1" 1688 | "js-yaml" "^3.7.0" 1689 | "mkdirp" "^0.5.1" 1690 | "once" "^1.4.0" 1691 | 1692 | "istanbul-lib-coverage@^1.0.1", "istanbul-lib-coverage@^1.1.1", "istanbul-lib-coverage@^1.2.1": 1693 | "integrity" "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==" 1694 | "resolved" "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz" 1695 | "version" "1.2.1" 1696 | 1697 | "istanbul-lib-hook@^1.0.7": 1698 | "integrity" "sha512-3U2HB9y1ZV9UmFlE12Fx+nPtFqIymzrqCksrXujm3NVbAZIJg/RfYgO1XiIa0mbmxTjWpVEVlkIZJ25xVIAfkQ==" 1699 | "resolved" "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.0.7.tgz" 1700 | "version" "1.0.7" 1701 | dependencies: 1702 | "append-transform" "^0.4.0" 1703 | 1704 | "istanbul-lib-instrument@^1.10.1", "istanbul-lib-instrument@^1.4.2", "istanbul-lib-instrument@^1.7.2": 1705 | "integrity" "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==" 1706 | "resolved" "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz" 1707 | "version" "1.10.2" 1708 | dependencies: 1709 | "babel-generator" "^6.18.0" 1710 | "babel-template" "^6.16.0" 1711 | "babel-traverse" "^6.18.0" 1712 | "babel-types" "^6.18.0" 1713 | "babylon" "^6.18.0" 1714 | "istanbul-lib-coverage" "^1.2.1" 1715 | "semver" "^5.3.0" 1716 | 1717 | "istanbul-lib-report@^1.1.1": 1718 | "integrity" "sha512-tvF+YmCmH4thnez6JFX06ujIA19WPa9YUiwjc1uALF2cv5dmE3It8b5I8Ob7FHJ70H9Y5yF+TDkVa/mcADuw1Q==" 1719 | "resolved" "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.1.tgz" 1720 | "version" "1.1.1" 1721 | dependencies: 1722 | "istanbul-lib-coverage" "^1.1.1" 1723 | "mkdirp" "^0.5.1" 1724 | "path-parse" "^1.0.5" 1725 | "supports-color" "^3.1.2" 1726 | 1727 | "istanbul-lib-source-maps@^1.1.0", "istanbul-lib-source-maps@^1.2.1": 1728 | "integrity" "sha512-mukVvSXCn9JQvdJl8wP/iPhqig0MRtuWuD4ZNKo6vB2Ik//AmhAKe3QnPN02dmkRe3lTudFk3rzoHhwU4hb94w==" 1729 | "resolved" "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.1.tgz" 1730 | "version" "1.2.1" 1731 | dependencies: 1732 | "debug" "^2.6.3" 1733 | "istanbul-lib-coverage" "^1.1.1" 1734 | "mkdirp" "^0.5.1" 1735 | "rimraf" "^2.6.1" 1736 | "source-map" "^0.5.3" 1737 | 1738 | "istanbul-reports@^1.1.1": 1739 | "integrity" "sha512-P8G873A0kW24XRlxHVGhMJBhQ8gWAec+dae7ZxOBzxT4w+a9ATSPvRVK3LB1RAJ9S8bg2tOyWHAGW40Zd2dKfw==" 1740 | "resolved" "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.1.1.tgz" 1741 | "version" "1.1.1" 1742 | dependencies: 1743 | "handlebars" "^4.0.3" 1744 | 1745 | "jest-changed-files@^20.0.3": 1746 | "integrity" "sha1-k5TVzGXEOEBhSb7xv01Sto4D4/g=" 1747 | "resolved" "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-20.0.3.tgz" 1748 | "version" "20.0.3" 1749 | 1750 | "jest-cli@^20.0.4": 1751 | "integrity" "sha1-5TKxnYiuW8bEF+iwWTpv6VSx3JM=" 1752 | "resolved" "https://registry.npmjs.org/jest-cli/-/jest-cli-20.0.4.tgz" 1753 | "version" "20.0.4" 1754 | dependencies: 1755 | "ansi-escapes" "^1.4.0" 1756 | "callsites" "^2.0.0" 1757 | "chalk" "^1.1.3" 1758 | "graceful-fs" "^4.1.11" 1759 | "is-ci" "^1.0.10" 1760 | "istanbul-api" "^1.1.1" 1761 | "istanbul-lib-coverage" "^1.0.1" 1762 | "istanbul-lib-instrument" "^1.4.2" 1763 | "istanbul-lib-source-maps" "^1.1.0" 1764 | "jest-changed-files" "^20.0.3" 1765 | "jest-config" "^20.0.4" 1766 | "jest-docblock" "^20.0.3" 1767 | "jest-environment-jsdom" "^20.0.3" 1768 | "jest-haste-map" "^20.0.4" 1769 | "jest-jasmine2" "^20.0.4" 1770 | "jest-message-util" "^20.0.3" 1771 | "jest-regex-util" "^20.0.3" 1772 | "jest-resolve-dependencies" "^20.0.3" 1773 | "jest-runtime" "^20.0.4" 1774 | "jest-snapshot" "^20.0.3" 1775 | "jest-util" "^20.0.3" 1776 | "micromatch" "^2.3.11" 1777 | "node-notifier" "^5.0.2" 1778 | "pify" "^2.3.0" 1779 | "slash" "^1.0.0" 1780 | "string-length" "^1.0.1" 1781 | "throat" "^3.0.0" 1782 | "which" "^1.2.12" 1783 | "worker-farm" "^1.3.1" 1784 | "yargs" "^7.0.2" 1785 | 1786 | "jest-config@^20.0.4": 1787 | "integrity" "sha1-43kwqyIXyRNgXv8T5712PsSPruo=" 1788 | "resolved" "https://registry.npmjs.org/jest-config/-/jest-config-20.0.4.tgz" 1789 | "version" "20.0.4" 1790 | dependencies: 1791 | "chalk" "^1.1.3" 1792 | "glob" "^7.1.1" 1793 | "jest-environment-jsdom" "^20.0.3" 1794 | "jest-environment-node" "^20.0.3" 1795 | "jest-jasmine2" "^20.0.4" 1796 | "jest-matcher-utils" "^20.0.3" 1797 | "jest-regex-util" "^20.0.3" 1798 | "jest-resolve" "^20.0.4" 1799 | "jest-validate" "^20.0.3" 1800 | "pretty-format" "^20.0.3" 1801 | 1802 | "jest-diff@^20.0.3": 1803 | "integrity" "sha1-gfKI/Z5nXw+yPHXxwrGURf5YZhc=" 1804 | "resolved" "https://registry.npmjs.org/jest-diff/-/jest-diff-20.0.3.tgz" 1805 | "version" "20.0.3" 1806 | dependencies: 1807 | "chalk" "^1.1.3" 1808 | "diff" "^3.2.0" 1809 | "jest-matcher-utils" "^20.0.3" 1810 | "pretty-format" "^20.0.3" 1811 | 1812 | "jest-docblock@^20.0.3": 1813 | "integrity" "sha1-F76phDQswz2DxQ++FUXqDvqkRxI=" 1814 | "resolved" "https://registry.npmjs.org/jest-docblock/-/jest-docblock-20.0.3.tgz" 1815 | "version" "20.0.3" 1816 | 1817 | "jest-environment-jsdom@^20.0.3": 1818 | "integrity" "sha1-BIqKwS7iJfcZBBdxODS7mZeH3pk=" 1819 | "resolved" "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-20.0.3.tgz" 1820 | "version" "20.0.3" 1821 | dependencies: 1822 | "jest-mock" "^20.0.3" 1823 | "jest-util" "^20.0.3" 1824 | "jsdom" "^9.12.0" 1825 | 1826 | "jest-environment-node@^20.0.3": 1827 | "integrity" "sha1-1Ii8RhKvLCRumG6K52caCZFj1AM=" 1828 | "resolved" "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-20.0.3.tgz" 1829 | "version" "20.0.3" 1830 | dependencies: 1831 | "jest-mock" "^20.0.3" 1832 | "jest-util" "^20.0.3" 1833 | 1834 | "jest-haste-map@^20.0.4": 1835 | "integrity" "sha512-0IKAQjUvuZjMCNi/0VNQQF74/H9KB67hsHJqGiwTWQC6XO5Azs7kLWm+6Q/dwuhvDUvABDOBMFK2/FwZ3sZ07Q==" 1836 | "resolved" "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-20.0.5.tgz" 1837 | "version" "20.0.5" 1838 | dependencies: 1839 | "fb-watchman" "^2.0.0" 1840 | "graceful-fs" "^4.1.11" 1841 | "jest-docblock" "^20.0.3" 1842 | "micromatch" "^2.3.11" 1843 | "sane" "~1.6.0" 1844 | "worker-farm" "^1.3.1" 1845 | 1846 | "jest-jasmine2@^20.0.4": 1847 | "integrity" "sha1-/MWxQReA2RHQQpAu8YWehS5g1eE=" 1848 | "resolved" "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-20.0.4.tgz" 1849 | "version" "20.0.4" 1850 | dependencies: 1851 | "chalk" "^1.1.3" 1852 | "graceful-fs" "^4.1.11" 1853 | "jest-diff" "^20.0.3" 1854 | "jest-matcher-utils" "^20.0.3" 1855 | "jest-matchers" "^20.0.3" 1856 | "jest-message-util" "^20.0.3" 1857 | "jest-snapshot" "^20.0.3" 1858 | "once" "^1.4.0" 1859 | "p-map" "^1.1.1" 1860 | 1861 | "jest-matcher-utils@^20.0.3": 1862 | "integrity" "sha1-s6a443yld4A7CDKpixZPRLeBVhI=" 1863 | "resolved" "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-20.0.3.tgz" 1864 | "version" "20.0.3" 1865 | dependencies: 1866 | "chalk" "^1.1.3" 1867 | "pretty-format" "^20.0.3" 1868 | 1869 | "jest-matchers@^20.0.3": 1870 | "integrity" "sha1-ymnbHDLbWm9wf6XgQBq7VXAN/WA=" 1871 | "resolved" "https://registry.npmjs.org/jest-matchers/-/jest-matchers-20.0.3.tgz" 1872 | "version" "20.0.3" 1873 | dependencies: 1874 | "jest-diff" "^20.0.3" 1875 | "jest-matcher-utils" "^20.0.3" 1876 | "jest-message-util" "^20.0.3" 1877 | "jest-regex-util" "^20.0.3" 1878 | 1879 | "jest-message-util@^20.0.3": 1880 | "integrity" "sha1-auwoRDBvyw5udNV5bBAG2W/dgxw=" 1881 | "resolved" "https://registry.npmjs.org/jest-message-util/-/jest-message-util-20.0.3.tgz" 1882 | "version" "20.0.3" 1883 | dependencies: 1884 | "chalk" "^1.1.3" 1885 | "micromatch" "^2.3.11" 1886 | "slash" "^1.0.0" 1887 | 1888 | "jest-mock@^20.0.3": 1889 | "integrity" "sha1-i8Bw6QQUqhVcEajWTIaaDVxx2lk=" 1890 | "resolved" "https://registry.npmjs.org/jest-mock/-/jest-mock-20.0.3.tgz" 1891 | "version" "20.0.3" 1892 | 1893 | "jest-regex-util@^20.0.3": 1894 | "integrity" "sha1-hburXRM+RGJbGfr4xqpRItCF12I=" 1895 | "resolved" "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-20.0.3.tgz" 1896 | "version" "20.0.3" 1897 | 1898 | "jest-resolve-dependencies@^20.0.3": 1899 | "integrity" "sha1-bhSntxevDyyzZnxUneQK8Bexcjo=" 1900 | "resolved" "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-20.0.3.tgz" 1901 | "version" "20.0.3" 1902 | dependencies: 1903 | "jest-regex-util" "^20.0.3" 1904 | 1905 | "jest-resolve@^20.0.4": 1906 | "integrity" "sha1-lEiz6La6/BVHlETGSZBFt//ll6U=" 1907 | "resolved" "https://registry.npmjs.org/jest-resolve/-/jest-resolve-20.0.4.tgz" 1908 | "version" "20.0.4" 1909 | dependencies: 1910 | "browser-resolve" "^1.11.2" 1911 | "is-builtin-module" "^1.0.0" 1912 | "resolve" "^1.3.2" 1913 | 1914 | "jest-runtime@^20.0.4": 1915 | "integrity" "sha1-osgCIZxCA/dU3xQE5JAYYWnRJNg=" 1916 | "resolved" "https://registry.npmjs.org/jest-runtime/-/jest-runtime-20.0.4.tgz" 1917 | "version" "20.0.4" 1918 | dependencies: 1919 | "babel-core" "^6.0.0" 1920 | "babel-jest" "^20.0.3" 1921 | "babel-plugin-istanbul" "^4.0.0" 1922 | "chalk" "^1.1.3" 1923 | "convert-source-map" "^1.4.0" 1924 | "graceful-fs" "^4.1.11" 1925 | "jest-config" "^20.0.4" 1926 | "jest-haste-map" "^20.0.4" 1927 | "jest-regex-util" "^20.0.3" 1928 | "jest-resolve" "^20.0.4" 1929 | "jest-util" "^20.0.3" 1930 | "json-stable-stringify" "^1.0.1" 1931 | "micromatch" "^2.3.11" 1932 | "strip-bom" "3.0.0" 1933 | "yargs" "^7.0.2" 1934 | 1935 | "jest-snapshot@^20.0.3": 1936 | "integrity" "sha1-W4R+GtsaTZCFKn+fElCG4YfHZWY=" 1937 | "resolved" "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-20.0.3.tgz" 1938 | "version" "20.0.3" 1939 | dependencies: 1940 | "chalk" "^1.1.3" 1941 | "jest-diff" "^20.0.3" 1942 | "jest-matcher-utils" "^20.0.3" 1943 | "jest-util" "^20.0.3" 1944 | "natural-compare" "^1.4.0" 1945 | "pretty-format" "^20.0.3" 1946 | 1947 | "jest-util@^20.0.3": 1948 | "integrity" "sha1-DAf32A2C9OWmfG+LnD/n9lz9Mq0=" 1949 | "resolved" "https://registry.npmjs.org/jest-util/-/jest-util-20.0.3.tgz" 1950 | "version" "20.0.3" 1951 | dependencies: 1952 | "chalk" "^1.1.3" 1953 | "graceful-fs" "^4.1.11" 1954 | "jest-message-util" "^20.0.3" 1955 | "jest-mock" "^20.0.3" 1956 | "jest-validate" "^20.0.3" 1957 | "leven" "^2.1.0" 1958 | "mkdirp" "^0.5.1" 1959 | 1960 | "jest-validate@^20.0.3": 1961 | "integrity" "sha1-0M/R3k9XnymEhJJcKA+PHZTsPKs=" 1962 | "resolved" "https://registry.npmjs.org/jest-validate/-/jest-validate-20.0.3.tgz" 1963 | "version" "20.0.3" 1964 | dependencies: 1965 | "chalk" "^1.1.3" 1966 | "jest-matcher-utils" "^20.0.3" 1967 | "leven" "^2.1.0" 1968 | "pretty-format" "^20.0.3" 1969 | 1970 | "jest@^20.0.4": 1971 | "integrity" "sha1-PdJgwpidba1nix6cxNkZRPbWAqw=" 1972 | "resolved" "https://registry.npmjs.org/jest/-/jest-20.0.4.tgz" 1973 | "version" "20.0.4" 1974 | dependencies: 1975 | "jest-cli" "^20.0.4" 1976 | 1977 | "js-tokens@^3.0.0": 1978 | "integrity" "sha1-COnxMkhKLEWjCQfp3E1VZ7fxFNc=" 1979 | "resolved" "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.1.tgz" 1980 | "version" "3.0.1" 1981 | 1982 | "js-yaml@^3.4.3", "js-yaml@^3.7.0", "js-yaml@^3.8.4": 1983 | "integrity" "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==" 1984 | "resolved" "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz" 1985 | "version" "3.14.1" 1986 | dependencies: 1987 | "argparse" "^1.0.7" 1988 | "esprima" "^4.0.0" 1989 | 1990 | "jsbn@~0.1.0": 1991 | "integrity" "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" 1992 | "resolved" "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz" 1993 | "version" "0.1.1" 1994 | 1995 | "jschardet@^1.4.2": 1996 | "integrity" "sha1-KqEH8UKvQSHRRWWdRPUIMJYeaZo=" 1997 | "resolved" "https://registry.npmjs.org/jschardet/-/jschardet-1.4.2.tgz" 1998 | "version" "1.4.2" 1999 | 2000 | "jsdom@^9.12.0": 2001 | "integrity" "sha1-6MVG//ywbADUgzyoRBD+1/igl9Q=" 2002 | "resolved" "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz" 2003 | "version" "9.12.0" 2004 | dependencies: 2005 | "abab" "^1.0.3" 2006 | "acorn" "^4.0.4" 2007 | "acorn-globals" "^3.1.0" 2008 | "array-equal" "^1.0.0" 2009 | "content-type-parser" "^1.0.1" 2010 | "cssom" ">= 0.3.2 < 0.4.0" 2011 | "cssstyle" ">= 0.2.37 < 0.3.0" 2012 | "escodegen" "^1.6.1" 2013 | "html-encoding-sniffer" "^1.0.1" 2014 | "nwmatcher" ">= 1.3.9 < 2.0.0" 2015 | "parse5" "^1.5.1" 2016 | "request" "^2.79.0" 2017 | "sax" "^1.2.1" 2018 | "symbol-tree" "^3.2.1" 2019 | "tough-cookie" "^2.3.2" 2020 | "webidl-conversions" "^4.0.0" 2021 | "whatwg-encoding" "^1.0.1" 2022 | "whatwg-url" "^4.3.0" 2023 | "xml-name-validator" "^2.0.1" 2024 | 2025 | "jsesc@^1.3.0": 2026 | "integrity" "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=" 2027 | "resolved" "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz" 2028 | "version" "1.3.0" 2029 | 2030 | "json-schema-traverse@^0.4.1": 2031 | "integrity" "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" 2032 | "resolved" "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz" 2033 | "version" "0.4.1" 2034 | 2035 | "json-schema@0.2.3": 2036 | "integrity" "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=" 2037 | "resolved" "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz" 2038 | "version" "0.2.3" 2039 | 2040 | "json-stable-stringify@^1.0.1": 2041 | "integrity" "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=" 2042 | "resolved" "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz" 2043 | "version" "1.0.1" 2044 | dependencies: 2045 | "jsonify" "~0.0.0" 2046 | 2047 | "json-stringify-safe@~5.0.1": 2048 | "integrity" "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" 2049 | "resolved" "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz" 2050 | "version" "5.0.1" 2051 | 2052 | "json5@^0.5.0": 2053 | "integrity" "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=" 2054 | "resolved" "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz" 2055 | "version" "0.5.1" 2056 | 2057 | "jsonify@~0.0.0": 2058 | "integrity" "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=" 2059 | "resolved" "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz" 2060 | "version" "0.0.0" 2061 | 2062 | "jsonpointer@^4.0.0": 2063 | "integrity" "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=" 2064 | "resolved" "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz" 2065 | "version" "4.0.1" 2066 | 2067 | "jsprim@^1.2.2": 2068 | "integrity" "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=" 2069 | "resolved" "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz" 2070 | "version" "1.4.1" 2071 | dependencies: 2072 | "assert-plus" "1.0.0" 2073 | "extsprintf" "1.3.0" 2074 | "json-schema" "0.2.3" 2075 | "verror" "1.10.0" 2076 | 2077 | "kind-of@^3.0.2": 2078 | "integrity" "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=" 2079 | "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz" 2080 | "version" "3.2.2" 2081 | dependencies: 2082 | "is-buffer" "^1.1.5" 2083 | 2084 | "kind-of@^6.0.0": 2085 | "integrity" "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==" 2086 | "resolved" "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz" 2087 | "version" "6.0.3" 2088 | 2089 | "lcid@^1.0.0": 2090 | "integrity" "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=" 2091 | "resolved" "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz" 2092 | "version" "1.0.0" 2093 | dependencies: 2094 | "invert-kv" "^1.0.0" 2095 | 2096 | "leven@^2.1.0": 2097 | "integrity" "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=" 2098 | "resolved" "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz" 2099 | "version" "2.1.0" 2100 | 2101 | "levn@^0.3.0", "levn@~0.3.0": 2102 | "integrity" "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=" 2103 | "resolved" "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz" 2104 | "version" "0.3.0" 2105 | dependencies: 2106 | "prelude-ls" "~1.1.2" 2107 | "type-check" "~0.3.2" 2108 | 2109 | "lint-staged@^4.0.0": 2110 | "integrity" "sha1-wVZp9ZhhSm5oCQMD4XWnmdSODYU=" 2111 | "resolved" "https://registry.npmjs.org/lint-staged/-/lint-staged-4.0.0.tgz" 2112 | "version" "4.0.0" 2113 | dependencies: 2114 | "app-root-path" "^2.0.0" 2115 | "cosmiconfig" "^1.1.0" 2116 | "execa" "^0.7.0" 2117 | "listr" "^0.12.0" 2118 | "lodash.chunk" "^4.2.0" 2119 | "minimatch" "^3.0.0" 2120 | "npm-which" "^3.0.1" 2121 | "p-map" "^1.1.1" 2122 | "staged-git-files" "0.0.4" 2123 | 2124 | "listr-silent-renderer@^1.1.1": 2125 | "integrity" "sha1-kktaN1cVN3C/Go4/v3S4u/P5JC4=" 2126 | "resolved" "https://registry.npmjs.org/listr-silent-renderer/-/listr-silent-renderer-1.1.1.tgz" 2127 | "version" "1.1.1" 2128 | 2129 | "listr-update-renderer@^0.2.0": 2130 | "integrity" "sha1-yoDhd5tOcCZoB+ju0a1qvjmFUPk=" 2131 | "resolved" "https://registry.npmjs.org/listr-update-renderer/-/listr-update-renderer-0.2.0.tgz" 2132 | "version" "0.2.0" 2133 | dependencies: 2134 | "chalk" "^1.1.3" 2135 | "cli-truncate" "^0.2.1" 2136 | "elegant-spinner" "^1.0.1" 2137 | "figures" "^1.7.0" 2138 | "indent-string" "^3.0.0" 2139 | "log-symbols" "^1.0.2" 2140 | "log-update" "^1.0.2" 2141 | "strip-ansi" "^3.0.1" 2142 | 2143 | "listr-verbose-renderer@^0.4.0": 2144 | "integrity" "sha1-RNwBuww0oDxXIVTU0Izemx3FYg8=" 2145 | "resolved" "https://registry.npmjs.org/listr-verbose-renderer/-/listr-verbose-renderer-0.4.0.tgz" 2146 | "version" "0.4.0" 2147 | dependencies: 2148 | "chalk" "^1.1.3" 2149 | "cli-cursor" "^1.0.2" 2150 | "date-fns" "^1.27.2" 2151 | "figures" "^1.7.0" 2152 | 2153 | "listr@^0.12.0": 2154 | "integrity" "sha1-a84sD1YD+klYDqF81qAMwOX6RRo=" 2155 | "resolved" "https://registry.npmjs.org/listr/-/listr-0.12.0.tgz" 2156 | "version" "0.12.0" 2157 | dependencies: 2158 | "chalk" "^1.1.3" 2159 | "cli-truncate" "^0.2.1" 2160 | "figures" "^1.7.0" 2161 | "indent-string" "^2.1.0" 2162 | "is-promise" "^2.1.0" 2163 | "is-stream" "^1.1.0" 2164 | "listr-silent-renderer" "^1.1.1" 2165 | "listr-update-renderer" "^0.2.0" 2166 | "listr-verbose-renderer" "^0.4.0" 2167 | "log-symbols" "^1.0.2" 2168 | "log-update" "^1.0.2" 2169 | "ora" "^0.2.3" 2170 | "p-map" "^1.1.1" 2171 | "rxjs" "^5.0.0-beta.11" 2172 | "stream-to-observable" "^0.1.0" 2173 | "strip-ansi" "^3.0.1" 2174 | 2175 | "load-json-file@^1.0.0": 2176 | "integrity" "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=" 2177 | "resolved" "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz" 2178 | "version" "1.1.0" 2179 | dependencies: 2180 | "graceful-fs" "^4.1.2" 2181 | "parse-json" "^2.2.0" 2182 | "pify" "^2.0.0" 2183 | "pinkie-promise" "^2.0.0" 2184 | "strip-bom" "^2.0.0" 2185 | 2186 | "locate-path@^2.0.0": 2187 | "integrity" "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=" 2188 | "resolved" "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz" 2189 | "version" "2.0.0" 2190 | dependencies: 2191 | "p-locate" "^2.0.0" 2192 | "path-exists" "^3.0.0" 2193 | 2194 | "lodash.chunk@^4.2.0": 2195 | "integrity" "sha1-ZuXOH3btJ7QwPYxlEujRIW6BBrw=" 2196 | "resolved" "https://registry.npmjs.org/lodash.chunk/-/lodash.chunk-4.2.0.tgz" 2197 | "version" "4.2.0" 2198 | 2199 | "lodash@^4.0.0", "lodash@^4.14.0", "lodash@^4.17.4", "lodash@^4.2.0", "lodash@^4.3.0": 2200 | "integrity" "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==" 2201 | "resolved" "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz" 2202 | "version" "4.17.20" 2203 | 2204 | "log-symbols@^1.0.2": 2205 | "integrity" "sha1-N2/3tY6jCGoPCfrMdGF+ylAeGhg=" 2206 | "resolved" "https://registry.npmjs.org/log-symbols/-/log-symbols-1.0.2.tgz" 2207 | "version" "1.0.2" 2208 | dependencies: 2209 | "chalk" "^1.0.0" 2210 | 2211 | "log-update@^1.0.2": 2212 | "integrity" "sha1-GZKfZMQJPS0ucHWh2tivWcKWuNE=" 2213 | "resolved" "https://registry.npmjs.org/log-update/-/log-update-1.0.2.tgz" 2214 | "version" "1.0.2" 2215 | dependencies: 2216 | "ansi-escapes" "^1.0.0" 2217 | "cli-cursor" "^1.0.2" 2218 | 2219 | "loose-envify@^1.0.0": 2220 | "integrity" "sha1-0aitM/qc4OcT1l/dCsi3SNR4yEg=" 2221 | "resolved" "https://registry.npmjs.org/loose-envify/-/loose-envify-1.3.1.tgz" 2222 | "version" "1.3.1" 2223 | dependencies: 2224 | "js-tokens" "^3.0.0" 2225 | 2226 | "lru-cache@^4.0.1": 2227 | "integrity" "sha512-q4spe4KTfsAS1SUHLO0wz8Qiyf1+vMIAgpRYioFYDMNqKfHQbg+AVDH3i4fvpl71/P1L0dBl+fQi+P37UYf0ew==" 2228 | "resolved" "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.1.tgz" 2229 | "version" "4.1.1" 2230 | dependencies: 2231 | "pseudomap" "^1.0.2" 2232 | "yallist" "^2.1.2" 2233 | 2234 | "makeerror@1.0.x": 2235 | "integrity" "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=" 2236 | "resolved" "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz" 2237 | "version" "1.0.11" 2238 | dependencies: 2239 | "tmpl" "1.0.x" 2240 | 2241 | "math-random@^1.0.1": 2242 | "integrity" "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==" 2243 | "resolved" "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz" 2244 | "version" "1.0.4" 2245 | 2246 | "merge@^1.1.3": 2247 | "integrity" "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==" 2248 | "resolved" "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz" 2249 | "version" "1.2.1" 2250 | 2251 | "micromatch@^2.1.5", "micromatch@^2.3.11": 2252 | "integrity" "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=" 2253 | "resolved" "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz" 2254 | "version" "2.3.11" 2255 | dependencies: 2256 | "arr-diff" "^2.0.0" 2257 | "array-unique" "^0.2.1" 2258 | "braces" "^1.8.2" 2259 | "expand-brackets" "^0.1.4" 2260 | "extglob" "^0.3.1" 2261 | "filename-regex" "^2.0.0" 2262 | "is-extglob" "^1.0.0" 2263 | "is-glob" "^2.0.1" 2264 | "kind-of" "^3.0.2" 2265 | "normalize-path" "^2.0.1" 2266 | "object.omit" "^2.0.0" 2267 | "parse-glob" "^3.0.4" 2268 | "regex-cache" "^0.4.2" 2269 | 2270 | "mime-db@1.45.0": 2271 | "integrity" "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==" 2272 | "resolved" "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz" 2273 | "version" "1.45.0" 2274 | 2275 | "mime-types@^2.1.12", "mime-types@~2.1.19": 2276 | "integrity" "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==" 2277 | "resolved" "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz" 2278 | "version" "2.1.28" 2279 | dependencies: 2280 | "mime-db" "1.45.0" 2281 | 2282 | "mimic-fn@^1.0.0": 2283 | "integrity" "sha1-5md4PZLonb00KBi1IwudYqZyrRg=" 2284 | "resolved" "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.1.0.tgz" 2285 | "version" "1.1.0" 2286 | 2287 | "minimatch@^3.0.0", "minimatch@^3.0.2", "minimatch@^3.0.3", "minimatch@^3.0.4": 2288 | "integrity" "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==" 2289 | "resolved" "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz" 2290 | "version" "3.0.4" 2291 | dependencies: 2292 | "brace-expansion" "^1.1.7" 2293 | 2294 | "minimist@^1.1.1", "minimist@^1.2.0", "minimist@^1.2.5": 2295 | "integrity" "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" 2296 | "resolved" "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz" 2297 | "version" "1.2.5" 2298 | 2299 | "mkdirp@^0.5.1": 2300 | "integrity" "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==" 2301 | "resolved" "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz" 2302 | "version" "0.5.5" 2303 | dependencies: 2304 | "minimist" "^1.2.5" 2305 | 2306 | "ms@2.0.0": 2307 | "integrity" "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" 2308 | "resolved" "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" 2309 | "version" "2.0.0" 2310 | 2311 | "mute-stream@0.0.7": 2312 | "integrity" "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" 2313 | "resolved" "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz" 2314 | "version" "0.0.7" 2315 | 2316 | "natural-compare@^1.4.0": 2317 | "integrity" "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=" 2318 | "resolved" "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz" 2319 | "version" "1.4.0" 2320 | 2321 | "neo-async@^2.6.0": 2322 | "integrity" "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" 2323 | "resolved" "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz" 2324 | "version" "2.6.2" 2325 | 2326 | "node-int64@^0.4.0": 2327 | "integrity" "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=" 2328 | "resolved" "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz" 2329 | "version" "0.4.0" 2330 | 2331 | "node-notifier@^5.0.2": 2332 | "integrity" "sha1-L6nhJgX6EACdRFSdb82KY93g5P8=" 2333 | "resolved" "https://registry.npmjs.org/node-notifier/-/node-notifier-5.1.2.tgz" 2334 | "version" "5.1.2" 2335 | dependencies: 2336 | "growly" "^1.3.0" 2337 | "semver" "^5.3.0" 2338 | "shellwords" "^0.1.0" 2339 | "which" "^1.2.12" 2340 | 2341 | "normalize-package-data@^2.3.2": 2342 | "integrity" "sha1-2Bntoqne29H/pWPqQHHZNngilbs=" 2343 | "resolved" "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.3.8.tgz" 2344 | "version" "2.3.8" 2345 | dependencies: 2346 | "hosted-git-info" "^2.1.4" 2347 | "is-builtin-module" "^1.0.0" 2348 | "semver" "2 || 3 || 4 || 5" 2349 | "validate-npm-package-license" "^3.0.1" 2350 | 2351 | "normalize-path@^1.0.0": 2352 | "integrity" "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=" 2353 | "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz" 2354 | "version" "1.0.0" 2355 | 2356 | "normalize-path@^2.0.0", "normalize-path@^2.0.1": 2357 | "integrity" "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=" 2358 | "resolved" "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz" 2359 | "version" "2.1.1" 2360 | dependencies: 2361 | "remove-trailing-separator" "^1.0.1" 2362 | 2363 | "npm-path@^2.0.2": 2364 | "integrity" "sha1-Fc/04ciaONp39W9gVbJPl137K74=" 2365 | "resolved" "https://registry.npmjs.org/npm-path/-/npm-path-2.0.3.tgz" 2366 | "version" "2.0.3" 2367 | dependencies: 2368 | "which" "^1.2.10" 2369 | 2370 | "npm-run-path@^2.0.0": 2371 | "integrity" "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=" 2372 | "resolved" "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz" 2373 | "version" "2.0.2" 2374 | dependencies: 2375 | "path-key" "^2.0.0" 2376 | 2377 | "npm-which@^3.0.1": 2378 | "integrity" "sha1-kiXybsOihcIJyuZ8OxGmtKtxQKo=" 2379 | "resolved" "https://registry.npmjs.org/npm-which/-/npm-which-3.0.1.tgz" 2380 | "version" "3.0.1" 2381 | dependencies: 2382 | "commander" "^2.9.0" 2383 | "npm-path" "^2.0.2" 2384 | "which" "^1.2.10" 2385 | 2386 | "number-is-nan@^1.0.0": 2387 | "integrity" "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=" 2388 | "resolved" "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz" 2389 | "version" "1.0.1" 2390 | 2391 | "nwmatcher@>= 1.3.9 < 2.0.0": 2392 | "integrity" "sha1-eumwew6oBNt+JfBctf5Al9TklJ8=" 2393 | "resolved" "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.1.tgz" 2394 | "version" "1.4.1" 2395 | 2396 | "oauth-sign@~0.9.0": 2397 | "integrity" "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==" 2398 | "resolved" "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz" 2399 | "version" "0.9.0" 2400 | 2401 | "object-assign@^4.0.1", "object-assign@^4.1.0": 2402 | "integrity" "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" 2403 | "resolved" "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" 2404 | "version" "4.1.1" 2405 | 2406 | "object-keys@^1.0.12", "object-keys@^1.1.1": 2407 | "integrity" "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" 2408 | "resolved" "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz" 2409 | "version" "1.1.1" 2410 | 2411 | "object.assign@^4.1.0": 2412 | "integrity" "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==" 2413 | "resolved" "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz" 2414 | "version" "4.1.2" 2415 | dependencies: 2416 | "call-bind" "^1.0.0" 2417 | "define-properties" "^1.1.3" 2418 | "has-symbols" "^1.0.1" 2419 | "object-keys" "^1.1.1" 2420 | 2421 | "object.omit@^2.0.0": 2422 | "integrity" "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=" 2423 | "resolved" "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz" 2424 | "version" "2.0.1" 2425 | dependencies: 2426 | "for-own" "^0.1.4" 2427 | "is-extendable" "^0.1.1" 2428 | 2429 | "once@^1.3.0", "once@^1.4.0": 2430 | "integrity" "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=" 2431 | "resolved" "https://registry.npmjs.org/once/-/once-1.4.0.tgz" 2432 | "version" "1.4.0" 2433 | dependencies: 2434 | "wrappy" "1" 2435 | 2436 | "onetime@^1.0.0": 2437 | "integrity" "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=" 2438 | "resolved" "https://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz" 2439 | "version" "1.1.0" 2440 | 2441 | "onetime@^2.0.0": 2442 | "integrity" "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=" 2443 | "resolved" "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz" 2444 | "version" "2.0.1" 2445 | dependencies: 2446 | "mimic-fn" "^1.0.0" 2447 | 2448 | "optionator@^0.8.1", "optionator@^0.8.2": 2449 | "integrity" "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=" 2450 | "resolved" "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz" 2451 | "version" "0.8.2" 2452 | dependencies: 2453 | "deep-is" "~0.1.3" 2454 | "fast-levenshtein" "~2.0.4" 2455 | "levn" "~0.3.0" 2456 | "prelude-ls" "~1.1.2" 2457 | "type-check" "~0.3.2" 2458 | "wordwrap" "~1.0.0" 2459 | 2460 | "ora@^0.2.3": 2461 | "integrity" "sha1-N1J9Igrc1Tw5tzVx11QVbV22V6Q=" 2462 | "resolved" "https://registry.npmjs.org/ora/-/ora-0.2.3.tgz" 2463 | "version" "0.2.3" 2464 | dependencies: 2465 | "chalk" "^1.1.1" 2466 | "cli-cursor" "^1.0.2" 2467 | "cli-spinners" "^0.1.2" 2468 | "object-assign" "^4.0.1" 2469 | 2470 | "os-homedir@^1.0.0", "os-homedir@^1.0.1": 2471 | "integrity" "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=" 2472 | "resolved" "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz" 2473 | "version" "1.0.2" 2474 | 2475 | "os-locale@^1.4.0": 2476 | "integrity" "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=" 2477 | "resolved" "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz" 2478 | "version" "1.4.0" 2479 | dependencies: 2480 | "lcid" "^1.0.0" 2481 | 2482 | "os-tmpdir@^1.0.1", "os-tmpdir@~1.0.1": 2483 | "integrity" "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=" 2484 | "resolved" "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz" 2485 | "version" "1.0.2" 2486 | 2487 | "p-finally@^1.0.0": 2488 | "integrity" "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=" 2489 | "resolved" "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz" 2490 | "version" "1.0.0" 2491 | 2492 | "p-limit@^1.1.0": 2493 | "integrity" "sha1-sH/y2aXYi+yAYDWJWiurZqJ5iLw=" 2494 | "resolved" "https://registry.npmjs.org/p-limit/-/p-limit-1.1.0.tgz" 2495 | "version" "1.1.0" 2496 | 2497 | "p-locate@^2.0.0": 2498 | "integrity" "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=" 2499 | "resolved" "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz" 2500 | "version" "2.0.0" 2501 | dependencies: 2502 | "p-limit" "^1.1.0" 2503 | 2504 | "p-map@^1.1.1": 2505 | "integrity" "sha1-BfXkrpegaDcbwqXMhr+9vBnErno=" 2506 | "resolved" "https://registry.npmjs.org/p-map/-/p-map-1.1.1.tgz" 2507 | "version" "1.1.1" 2508 | 2509 | "parse-entities@^2.0.0": 2510 | "integrity" "sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==" 2511 | "resolved" "https://registry.npmjs.org/parse-entities/-/parse-entities-2.0.0.tgz" 2512 | "version" "2.0.0" 2513 | dependencies: 2514 | "character-entities" "^1.0.0" 2515 | "character-entities-legacy" "^1.0.0" 2516 | "character-reference-invalid" "^1.0.0" 2517 | "is-alphanumerical" "^1.0.0" 2518 | "is-decimal" "^1.0.0" 2519 | "is-hexadecimal" "^1.0.0" 2520 | 2521 | "parse-glob@^3.0.4": 2522 | "integrity" "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=" 2523 | "resolved" "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz" 2524 | "version" "3.0.4" 2525 | dependencies: 2526 | "glob-base" "^0.3.0" 2527 | "is-dotfile" "^1.0.0" 2528 | "is-extglob" "^1.0.0" 2529 | "is-glob" "^2.0.0" 2530 | 2531 | "parse-json@^2.2.0": 2532 | "integrity" "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=" 2533 | "resolved" "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz" 2534 | "version" "2.2.0" 2535 | dependencies: 2536 | "error-ex" "^1.2.0" 2537 | 2538 | "parse-numeric-range@^0.0.2": 2539 | "integrity" "sha1-tPCdQTx6282Yf26SM8e0shDJOOQ=" 2540 | "resolved" "https://registry.npmjs.org/parse-numeric-range/-/parse-numeric-range-0.0.2.tgz" 2541 | "version" "0.0.2" 2542 | 2543 | "parse5@^1.5.1": 2544 | "integrity" "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=" 2545 | "resolved" "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz" 2546 | "version" "1.5.1" 2547 | 2548 | "parse5@^6.0.0": 2549 | "integrity" "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==" 2550 | "resolved" "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz" 2551 | "version" "6.0.1" 2552 | 2553 | "path-exists@^2.0.0": 2554 | "integrity" "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=" 2555 | "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz" 2556 | "version" "2.1.0" 2557 | dependencies: 2558 | "pinkie-promise" "^2.0.0" 2559 | 2560 | "path-exists@^3.0.0": 2561 | "integrity" "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" 2562 | "resolved" "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz" 2563 | "version" "3.0.0" 2564 | 2565 | "path-is-absolute@^1.0.0": 2566 | "integrity" "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" 2567 | "resolved" "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz" 2568 | "version" "1.0.1" 2569 | 2570 | "path-is-inside@^1.0.1", "path-is-inside@^1.0.2": 2571 | "integrity" "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=" 2572 | "resolved" "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz" 2573 | "version" "1.0.2" 2574 | 2575 | "path-key@^2.0.0": 2576 | "integrity" "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=" 2577 | "resolved" "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz" 2578 | "version" "2.0.1" 2579 | 2580 | "path-parse@^1.0.5": 2581 | "integrity" "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=" 2582 | "resolved" "https://registry.npmjs.org/path-parse/-/path-parse-1.0.5.tgz" 2583 | "version" "1.0.5" 2584 | 2585 | "path-type@^1.0.0": 2586 | "integrity" "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=" 2587 | "resolved" "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz" 2588 | "version" "1.1.0" 2589 | dependencies: 2590 | "graceful-fs" "^4.1.2" 2591 | "pify" "^2.0.0" 2592 | "pinkie-promise" "^2.0.0" 2593 | 2594 | "performance-now@^2.1.0": 2595 | "integrity" "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" 2596 | "resolved" "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz" 2597 | "version" "2.1.0" 2598 | 2599 | "pify@^2.0.0", "pify@^2.3.0": 2600 | "integrity" "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=" 2601 | "resolved" "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz" 2602 | "version" "2.3.0" 2603 | 2604 | "pinkie-promise@^2.0.0": 2605 | "integrity" "sha1-ITXW36ejWMBprJsXh3YogihFD/o=" 2606 | "resolved" "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz" 2607 | "version" "2.0.1" 2608 | dependencies: 2609 | "pinkie" "^2.0.0" 2610 | 2611 | "pinkie@^2.0.0": 2612 | "integrity" "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=" 2613 | "resolved" "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz" 2614 | "version" "2.0.4" 2615 | 2616 | "pluralize@^4.0.0": 2617 | "integrity" "sha1-WbcIwcAZCi9pLxx2GMRGsFL9F2I=" 2618 | "resolved" "https://registry.npmjs.org/pluralize/-/pluralize-4.0.0.tgz" 2619 | "version" "4.0.0" 2620 | 2621 | "prelude-ls@~1.1.2": 2622 | "integrity" "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" 2623 | "resolved" "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz" 2624 | "version" "1.1.2" 2625 | 2626 | "preserve@^0.2.0": 2627 | "integrity" "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=" 2628 | "resolved" "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz" 2629 | "version" "0.2.0" 2630 | 2631 | "prettier@^1.4.4": 2632 | "integrity" "sha512-GuuPazIvjW1DG26yLQgO+nagmRF/h9M4RaCtZWqu/eFW7csdZkQEwPJUeXX10d+LzmCnR9DuIZndqIOn3p2YoA==" 2633 | "resolved" "https://registry.npmjs.org/prettier/-/prettier-1.4.4.tgz" 2634 | "version" "1.4.4" 2635 | 2636 | "pretty-format@^20.0.3": 2637 | "integrity" "sha1-Ag41ClYKH+GpjcO+tsz/s4beixQ=" 2638 | "resolved" "https://registry.npmjs.org/pretty-format/-/pretty-format-20.0.3.tgz" 2639 | "version" "20.0.3" 2640 | dependencies: 2641 | "ansi-regex" "^2.1.1" 2642 | "ansi-styles" "^3.0.0" 2643 | 2644 | "prismjs@~1.23.0": 2645 | "integrity" "sha512-c29LVsqOaLbBHuIbsTxaKENh1N2EQBOHaWv7gkHN4dgRbxSREqDnDbtFJYdpPauS4YCplMSNCABQ6Eeor69bAA==" 2646 | "resolved" "https://registry.npmjs.org/prismjs/-/prismjs-1.23.0.tgz" 2647 | "version" "1.23.0" 2648 | optionalDependencies: 2649 | "clipboard" "^2.0.0" 2650 | 2651 | "private@^0.1.6": 2652 | "integrity" "sha1-aM5eih7woju1cMwoU3tTMqumPvE=" 2653 | "resolved" "https://registry.npmjs.org/private/-/private-0.1.7.tgz" 2654 | "version" "0.1.7" 2655 | 2656 | "process-nextick-args@~1.0.6": 2657 | "integrity" "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=" 2658 | "resolved" "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz" 2659 | "version" "1.0.7" 2660 | 2661 | "progress@^2.0.0": 2662 | "integrity" "sha1-ihvjZr+Pwj2yvSPxDG/pILQ4nR8=" 2663 | "resolved" "https://registry.npmjs.org/progress/-/progress-2.0.0.tgz" 2664 | "version" "2.0.0" 2665 | 2666 | "property-information@^5.0.0": 2667 | "integrity" "sha512-YUHSPk+A30YPv+0Qf8i9Mbfe/C0hdPXk1s1jPVToV8pk8BQtpw10ct89Eo7OWkutrwqvT0eicAxlOg3dOAu8JA==" 2668 | "resolved" "https://registry.npmjs.org/property-information/-/property-information-5.6.0.tgz" 2669 | "version" "5.6.0" 2670 | dependencies: 2671 | "xtend" "^4.0.0" 2672 | 2673 | "prr@~0.0.0": 2674 | "integrity" "sha1-GoS4WQgyVQFBGFPQCB7j+obikmo=" 2675 | "resolved" "https://registry.npmjs.org/prr/-/prr-0.0.0.tgz" 2676 | "version" "0.0.0" 2677 | 2678 | "pseudomap@^1.0.2": 2679 | "integrity" "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" 2680 | "resolved" "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz" 2681 | "version" "1.0.2" 2682 | 2683 | "psl@^1.1.28": 2684 | "integrity" "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" 2685 | "resolved" "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz" 2686 | "version" "1.8.0" 2687 | 2688 | "punycode@^2.1.0", "punycode@^2.1.1": 2689 | "integrity" "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" 2690 | "resolved" "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz" 2691 | "version" "2.1.1" 2692 | 2693 | "qs@~6.5.2": 2694 | "integrity" "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==" 2695 | "resolved" "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz" 2696 | "version" "6.5.2" 2697 | 2698 | "randomatic@^3.0.0": 2699 | "integrity" "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==" 2700 | "resolved" "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz" 2701 | "version" "3.1.1" 2702 | dependencies: 2703 | "is-number" "^4.0.0" 2704 | "kind-of" "^6.0.0" 2705 | "math-random" "^1.0.1" 2706 | 2707 | "read-pkg-up@^1.0.1": 2708 | "integrity" "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=" 2709 | "resolved" "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz" 2710 | "version" "1.0.1" 2711 | dependencies: 2712 | "find-up" "^1.0.0" 2713 | "read-pkg" "^1.0.0" 2714 | 2715 | "read-pkg@^1.0.0": 2716 | "integrity" "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=" 2717 | "resolved" "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz" 2718 | "version" "1.1.0" 2719 | dependencies: 2720 | "load-json-file" "^1.0.0" 2721 | "normalize-package-data" "^2.3.2" 2722 | "path-type" "^1.0.0" 2723 | 2724 | "readable-stream@^2.2.2": 2725 | "integrity" "sha512-u6cxIvtbZcjq2HH71Zc/SRBUl7vbv62szIqmqqGpK3HY5J1c0kR/LUzKUpeoFgMzapvVAlBD+QY56ilWmHi4Nw==" 2726 | "resolved" "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.1.tgz" 2727 | "version" "2.3.1" 2728 | dependencies: 2729 | "core-util-is" "~1.0.0" 2730 | "inherits" "~2.0.3" 2731 | "isarray" "~1.0.0" 2732 | "process-nextick-args" "~1.0.6" 2733 | "safe-buffer" "~5.1.0" 2734 | "string_decoder" "~1.0.0" 2735 | "util-deprecate" "~1.0.1" 2736 | 2737 | "refractor@3.3.0": 2738 | "integrity" "sha512-c/jEhQjk1NDyTF3hMgtu8PigaqkWUv+c5+mBffZCTnjyrNSJkG+0eoTOJV/u0XCTuPfaFzJyj6MM4HnF0Wr27Q==" 2739 | "resolved" "https://registry.npmjs.org/refractor/-/refractor-3.3.0.tgz" 2740 | "version" "3.3.0" 2741 | dependencies: 2742 | "hastscript" "^6.0.0" 2743 | "parse-entities" "^2.0.0" 2744 | "prismjs" "~1.23.0" 2745 | 2746 | "regenerator-runtime@^0.10.0": 2747 | "integrity" "sha1-M2w+/BIgrc7dosn6tntaeVWjNlg=" 2748 | "resolved" "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.10.5.tgz" 2749 | "version" "0.10.5" 2750 | 2751 | "regex-cache@^0.4.2": 2752 | "integrity" "sha1-mxpsNdTQ3871cRrmUejp09cRQUU=" 2753 | "resolved" "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.3.tgz" 2754 | "version" "0.4.3" 2755 | dependencies: 2756 | "is-equal-shallow" "^0.1.3" 2757 | "is-primitive" "^2.0.0" 2758 | 2759 | "rehype-parse@^7.0.0", "rehype-parse@^7.0.1": 2760 | "integrity" "sha512-fOiR9a9xH+Le19i4fGzIEowAbwG7idy2Jzs4mOrFWBSJ0sNUgy0ev871dwWnbOo371SjgjG4pwzrbgSVrKxecw==" 2761 | "resolved" "https://registry.npmjs.org/rehype-parse/-/rehype-parse-7.0.1.tgz" 2762 | "version" "7.0.1" 2763 | dependencies: 2764 | "hast-util-from-parse5" "^6.0.0" 2765 | "parse5" "^6.0.0" 2766 | 2767 | "rehype-stringify@^8.0.0": 2768 | "integrity" "sha512-VkIs18G0pj2xklyllrPSvdShAV36Ff3yE5PUO9u36f6+2qJFnn22Z5gKwBOwgXviux4UC7K+/j13AnZfPICi/g==" 2769 | "resolved" "https://registry.npmjs.org/rehype-stringify/-/rehype-stringify-8.0.0.tgz" 2770 | "version" "8.0.0" 2771 | dependencies: 2772 | "hast-util-to-html" "^7.1.1" 2773 | 2774 | "rehype@^11.0.0": 2775 | "integrity" "sha512-qXqRqiCFJD5CJ61CSJuNImTFrm3zVkOU9XywHDwrUuvWN74MWt72KJ67c5CM5x8g0vGcOkRVCrYj85vqkmHulQ==" 2776 | "resolved" "https://registry.npmjs.org/rehype/-/rehype-11.0.0.tgz" 2777 | "version" "11.0.0" 2778 | dependencies: 2779 | "rehype-parse" "^7.0.0" 2780 | "rehype-stringify" "^8.0.0" 2781 | "unified" "^9.0.0" 2782 | 2783 | "remove-trailing-separator@^1.0.1": 2784 | "integrity" "sha1-abBi2XhyetFNxrVrpKt3L9jXBRE=" 2785 | "resolved" "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.0.2.tgz" 2786 | "version" "1.0.2" 2787 | 2788 | "repeat-element@^1.1.2": 2789 | "integrity" "sha1-7wiaF40Ug7quTZPrmLT55OEdmQo=" 2790 | "resolved" "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz" 2791 | "version" "1.1.2" 2792 | 2793 | "repeat-string@^1.5.2": 2794 | "integrity" "sha1-jcrkcOHIirwtYA//Sndihtp15jc=" 2795 | "resolved" "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz" 2796 | "version" "1.6.1" 2797 | 2798 | "repeating@^2.0.0": 2799 | "integrity" "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=" 2800 | "resolved" "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz" 2801 | "version" "2.0.1" 2802 | dependencies: 2803 | "is-finite" "^1.0.0" 2804 | 2805 | "request@^2.79.0": 2806 | "integrity" "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==" 2807 | "resolved" "https://registry.npmjs.org/request/-/request-2.88.2.tgz" 2808 | "version" "2.88.2" 2809 | dependencies: 2810 | "aws-sign2" "~0.7.0" 2811 | "aws4" "^1.8.0" 2812 | "caseless" "~0.12.0" 2813 | "combined-stream" "~1.0.6" 2814 | "extend" "~3.0.2" 2815 | "forever-agent" "~0.6.1" 2816 | "form-data" "~2.3.2" 2817 | "har-validator" "~5.1.3" 2818 | "http-signature" "~1.2.0" 2819 | "is-typedarray" "~1.0.0" 2820 | "isstream" "~0.1.2" 2821 | "json-stringify-safe" "~5.0.1" 2822 | "mime-types" "~2.1.19" 2823 | "oauth-sign" "~0.9.0" 2824 | "performance-now" "^2.1.0" 2825 | "qs" "~6.5.2" 2826 | "safe-buffer" "^5.1.2" 2827 | "tough-cookie" "~2.5.0" 2828 | "tunnel-agent" "^0.6.0" 2829 | "uuid" "^3.3.2" 2830 | 2831 | "require-directory@^2.1.1": 2832 | "integrity" "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" 2833 | "resolved" "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz" 2834 | "version" "2.1.1" 2835 | 2836 | "require-from-string@^1.1.0": 2837 | "integrity" "sha1-UpyczvJzgK3+yaL5ZbZJu+5jZBg=" 2838 | "resolved" "https://registry.npmjs.org/require-from-string/-/require-from-string-1.2.1.tgz" 2839 | "version" "1.2.1" 2840 | 2841 | "require-main-filename@^1.0.1": 2842 | "integrity" "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=" 2843 | "resolved" "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz" 2844 | "version" "1.0.1" 2845 | 2846 | "require-uncached@^1.0.3": 2847 | "integrity" "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=" 2848 | "resolved" "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz" 2849 | "version" "1.0.3" 2850 | dependencies: 2851 | "caller-path" "^0.1.0" 2852 | "resolve-from" "^1.0.0" 2853 | 2854 | "resolve-from@^1.0.0": 2855 | "integrity" "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=" 2856 | "resolved" "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz" 2857 | "version" "1.0.1" 2858 | 2859 | "resolve@^1.3.2", "resolve@^1.3.3": 2860 | "integrity" "sha1-ZVkHw0aahoDcLeOidaj91paR8OU=" 2861 | "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.3.3.tgz" 2862 | "version" "1.3.3" 2863 | dependencies: 2864 | "path-parse" "^1.0.5" 2865 | 2866 | "resolve@1.1.7": 2867 | "integrity" "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=" 2868 | "resolved" "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz" 2869 | "version" "1.1.7" 2870 | 2871 | "restore-cursor@^1.0.1": 2872 | "integrity" "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=" 2873 | "resolved" "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz" 2874 | "version" "1.0.1" 2875 | dependencies: 2876 | "exit-hook" "^1.0.0" 2877 | "onetime" "^1.0.0" 2878 | 2879 | "restore-cursor@^2.0.0": 2880 | "integrity" "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=" 2881 | "resolved" "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz" 2882 | "version" "2.0.0" 2883 | dependencies: 2884 | "onetime" "^2.0.0" 2885 | "signal-exit" "^3.0.2" 2886 | 2887 | "rimraf@^2.2.8", "rimraf@^2.6.1": 2888 | "integrity" "sha1-wjOOxkPfeht/5cVPqG9XQopV8z0=" 2889 | "resolved" "https://registry.npmjs.org/rimraf/-/rimraf-2.6.1.tgz" 2890 | "version" "2.6.1" 2891 | dependencies: 2892 | "glob" "^7.0.5" 2893 | 2894 | "run-async@^2.2.0": 2895 | "integrity" "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=" 2896 | "resolved" "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz" 2897 | "version" "2.3.0" 2898 | dependencies: 2899 | "is-promise" "^2.1.0" 2900 | 2901 | "rx-lite-aggregates@^4.0.8": 2902 | "integrity" "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=" 2903 | "resolved" "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz" 2904 | "version" "4.0.8" 2905 | dependencies: 2906 | "rx-lite" "*" 2907 | 2908 | "rx-lite@*", "rx-lite@^4.0.8": 2909 | "integrity" "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=" 2910 | "resolved" "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz" 2911 | "version" "4.0.8" 2912 | 2913 | "rxjs@^5.0.0-beta.11": 2914 | "integrity" "sha1-ti91fyeURdJloYpY+wpw3JDpFiY=" 2915 | "resolved" "https://registry.npmjs.org/rxjs/-/rxjs-5.4.1.tgz" 2916 | "version" "5.4.1" 2917 | dependencies: 2918 | "symbol-observable" "^1.0.1" 2919 | 2920 | "safe-buffer@^5.0.1", "safe-buffer@~5.1.0": 2921 | "integrity" "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" 2922 | "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz" 2923 | "version" "5.1.1" 2924 | 2925 | "safe-buffer@^5.1.2": 2926 | "integrity" "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==" 2927 | "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" 2928 | "version" "5.2.1" 2929 | 2930 | "safe-buffer@~5.0.1": 2931 | "integrity" "sha1-0mPKVGls2KMGtcplUekt5XkY++c=" 2932 | "resolved" "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz" 2933 | "version" "5.0.1" 2934 | 2935 | "safer-buffer@^2.0.2", "safer-buffer@^2.1.0", "safer-buffer@~2.1.0": 2936 | "integrity" "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" 2937 | "resolved" "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" 2938 | "version" "2.1.2" 2939 | 2940 | "sane@~1.6.0": 2941 | "integrity" "sha1-lhDEUjB6E10pwf3+JUcDQYDEZ3U=" 2942 | "resolved" "https://registry.npmjs.org/sane/-/sane-1.6.0.tgz" 2943 | "version" "1.6.0" 2944 | dependencies: 2945 | "anymatch" "^1.3.0" 2946 | "exec-sh" "^0.2.0" 2947 | "fb-watchman" "^1.8.0" 2948 | "minimatch" "^3.0.2" 2949 | "minimist" "^1.1.1" 2950 | "walker" "~1.0.5" 2951 | "watch" "~0.10.0" 2952 | 2953 | "sax@^1.2.1": 2954 | "integrity" "sha1-/YYxojvHgmvvXYcb24c3jJVkeCg=" 2955 | "resolved" "https://registry.npmjs.org/sax/-/sax-1.2.2.tgz" 2956 | "version" "1.2.2" 2957 | 2958 | "select@^1.1.2": 2959 | "integrity" "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0=" 2960 | "resolved" "https://registry.npmjs.org/select/-/select-1.1.2.tgz" 2961 | "version" "1.1.2" 2962 | 2963 | "semver@^5.3.0", "semver@2 || 3 || 4 || 5", "semver@5.3.0": 2964 | "integrity" "sha1-myzl094C0XxgEq0yaqa00M9U+U8=" 2965 | "resolved" "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz" 2966 | "version" "5.3.0" 2967 | 2968 | "set-blocking@^2.0.0": 2969 | "integrity" "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" 2970 | "resolved" "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz" 2971 | "version" "2.0.0" 2972 | 2973 | "shebang-command@^1.2.0": 2974 | "integrity" "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=" 2975 | "resolved" "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz" 2976 | "version" "1.2.0" 2977 | dependencies: 2978 | "shebang-regex" "^1.0.0" 2979 | 2980 | "shebang-regex@^1.0.0": 2981 | "integrity" "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=" 2982 | "resolved" "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz" 2983 | "version" "1.0.0" 2984 | 2985 | "shellwords@^0.1.0": 2986 | "integrity" "sha1-Zq/Ue2oSky2Qccv9mKUueFzQuhQ=" 2987 | "resolved" "https://registry.npmjs.org/shellwords/-/shellwords-0.1.0.tgz" 2988 | "version" "0.1.0" 2989 | 2990 | "signal-exit@^3.0.0", "signal-exit@^3.0.2": 2991 | "integrity" "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" 2992 | "resolved" "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz" 2993 | "version" "3.0.2" 2994 | 2995 | "slash@^1.0.0": 2996 | "integrity" "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=" 2997 | "resolved" "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz" 2998 | "version" "1.0.0" 2999 | 3000 | "slice-ansi@0.0.4": 3001 | "integrity" "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=" 3002 | "resolved" "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz" 3003 | "version" "0.0.4" 3004 | 3005 | "source-map-support@^0.4.2": 3006 | "integrity" "sha1-AyAt9lwG0r2MfsI2KhkwVv7407E=" 3007 | "resolved" "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.15.tgz" 3008 | "version" "0.4.15" 3009 | dependencies: 3010 | "source-map" "^0.5.6" 3011 | 3012 | "source-map@^0.5.0", "source-map@^0.5.3", "source-map@^0.5.6": 3013 | "integrity" "sha1-dc449SvwczxafwwRjYEzSiu19BI=" 3014 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz" 3015 | "version" "0.5.6" 3016 | 3017 | "source-map@^0.6.1": 3018 | "integrity" "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" 3019 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz" 3020 | "version" "0.6.1" 3021 | 3022 | "source-map@~0.2.0": 3023 | "integrity" "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=" 3024 | "resolved" "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz" 3025 | "version" "0.2.0" 3026 | dependencies: 3027 | "amdefine" ">=0.0.4" 3028 | 3029 | "space-separated-tokens@^1.0.0": 3030 | "integrity" "sha1-noxgQHqlJ3Qs2eruJUHexjnxJps=" 3031 | "resolved" "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-1.1.0.tgz" 3032 | "version" "1.1.0" 3033 | dependencies: 3034 | "trim" "0.0.1" 3035 | 3036 | "spdx-correct@~1.0.0": 3037 | "integrity" "sha1-SzBz2TP/UfORLwOsVRlJikFQ20A=" 3038 | "resolved" "https://registry.npmjs.org/spdx-correct/-/spdx-correct-1.0.2.tgz" 3039 | "version" "1.0.2" 3040 | dependencies: 3041 | "spdx-license-ids" "^1.0.2" 3042 | 3043 | "spdx-expression-parse@~1.0.0": 3044 | "integrity" "sha1-m98vIOH0DtRH++JzJmGR/O1RYmw=" 3045 | "resolved" "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz" 3046 | "version" "1.0.4" 3047 | 3048 | "spdx-license-ids@^1.0.2": 3049 | "integrity" "sha1-yd96NCRZSt5r0RkA1ZZpbcBrrFc=" 3050 | "resolved" "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz" 3051 | "version" "1.2.2" 3052 | 3053 | "sprintf-js@~1.0.2": 3054 | "integrity" "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=" 3055 | "resolved" "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz" 3056 | "version" "1.0.3" 3057 | 3058 | "sshpk@^1.7.0": 3059 | "integrity" "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==" 3060 | "resolved" "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz" 3061 | "version" "1.16.1" 3062 | dependencies: 3063 | "asn1" "~0.2.3" 3064 | "assert-plus" "^1.0.0" 3065 | "bcrypt-pbkdf" "^1.0.0" 3066 | "dashdash" "^1.12.0" 3067 | "ecc-jsbn" "~0.1.1" 3068 | "getpass" "^0.1.1" 3069 | "jsbn" "~0.1.0" 3070 | "safer-buffer" "^2.0.2" 3071 | "tweetnacl" "~0.14.0" 3072 | 3073 | "staged-git-files@0.0.4": 3074 | "integrity" "sha1-15fhtVHKemOd7AI33G60u5vhfTU=" 3075 | "resolved" "https://registry.npmjs.org/staged-git-files/-/staged-git-files-0.0.4.tgz" 3076 | "version" "0.0.4" 3077 | 3078 | "stream-to-observable@^0.1.0": 3079 | "integrity" "sha1-Rb8dny19wJvtgfHDB8Qw5ouEz/4=" 3080 | "resolved" "https://registry.npmjs.org/stream-to-observable/-/stream-to-observable-0.1.0.tgz" 3081 | "version" "0.1.0" 3082 | 3083 | "string_decoder@~1.0.0": 3084 | "integrity" "sha1-sp4fThEl+pehA4K4pTNze3SR4Xk=" 3085 | "resolved" "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.2.tgz" 3086 | "version" "1.0.2" 3087 | dependencies: 3088 | "safe-buffer" "~5.0.1" 3089 | 3090 | "string-length@^1.0.1": 3091 | "integrity" "sha1-VpcPscOFWOnnC3KL894mmsRa36w=" 3092 | "resolved" "https://registry.npmjs.org/string-length/-/string-length-1.0.1.tgz" 3093 | "version" "1.0.1" 3094 | dependencies: 3095 | "strip-ansi" "^3.0.0" 3096 | 3097 | "string-width@^1.0.1", "string-width@^1.0.2": 3098 | "integrity" "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=" 3099 | "resolved" "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz" 3100 | "version" "1.0.2" 3101 | dependencies: 3102 | "code-point-at" "^1.0.0" 3103 | "is-fullwidth-code-point" "^1.0.0" 3104 | "strip-ansi" "^3.0.0" 3105 | 3106 | "string-width@^2.0.0": 3107 | "integrity" "sha1-Y1xUNsxypuDDh87KJ41OLuxSaH4=" 3108 | "resolved" "https://registry.npmjs.org/string-width/-/string-width-2.0.0.tgz" 3109 | "version" "2.0.0" 3110 | dependencies: 3111 | "is-fullwidth-code-point" "^2.0.0" 3112 | "strip-ansi" "^3.0.0" 3113 | 3114 | "stringify-entities@^3.0.1": 3115 | "integrity" "sha512-3FP+jGMmMV/ffZs86MoghGqAoqXAdxLrJP4GUdrDN1aIScYih5tuIO3eF4To5AJZ79KDZ8Fpdy7QJnK8SsL1Vg==" 3116 | "resolved" "https://registry.npmjs.org/stringify-entities/-/stringify-entities-3.1.0.tgz" 3117 | "version" "3.1.0" 3118 | dependencies: 3119 | "character-entities-html4" "^1.0.0" 3120 | "character-entities-legacy" "^1.0.0" 3121 | "xtend" "^4.0.0" 3122 | 3123 | "strip-ansi@^3.0.0", "strip-ansi@^3.0.1": 3124 | "integrity" "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=" 3125 | "resolved" "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz" 3126 | "version" "3.0.1" 3127 | dependencies: 3128 | "ansi-regex" "^2.0.0" 3129 | 3130 | "strip-bom@^2.0.0": 3131 | "integrity" "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=" 3132 | "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz" 3133 | "version" "2.0.0" 3134 | dependencies: 3135 | "is-utf8" "^0.2.0" 3136 | 3137 | "strip-bom@3.0.0": 3138 | "integrity" "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=" 3139 | "resolved" "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz" 3140 | "version" "3.0.0" 3141 | 3142 | "strip-eof@^1.0.0": 3143 | "integrity" "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=" 3144 | "resolved" "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz" 3145 | "version" "1.0.0" 3146 | 3147 | "strip-json-comments@~2.0.1": 3148 | "integrity" "sha1-PFMZQukIwml8DsNEhYwobHygpgo=" 3149 | "resolved" "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz" 3150 | "version" "2.0.1" 3151 | 3152 | "supports-color@^2.0.0": 3153 | "integrity" "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" 3154 | "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz" 3155 | "version" "2.0.0" 3156 | 3157 | "supports-color@^3.1.2": 3158 | "integrity" "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=" 3159 | "resolved" "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz" 3160 | "version" "3.2.3" 3161 | dependencies: 3162 | "has-flag" "^1.0.0" 3163 | 3164 | "symbol-observable@^1.0.1": 3165 | "integrity" "sha1-Kb9hXUqnEhvdiYsi1LP5vE4qoD0=" 3166 | "resolved" "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.4.tgz" 3167 | "version" "1.0.4" 3168 | 3169 | "symbol-tree@^3.2.1": 3170 | "integrity" "sha1-rifbOPZgp64uHDt9G8KQgZuFGeY=" 3171 | "resolved" "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.2.tgz" 3172 | "version" "3.2.2" 3173 | 3174 | "table@^4.0.1": 3175 | "integrity" "sha1-qBFsEz+sLGH0pCCrbN9cTWHw5DU=" 3176 | "resolved" "https://registry.npmjs.org/table/-/table-4.0.1.tgz" 3177 | "version" "4.0.1" 3178 | dependencies: 3179 | "ajv" "^4.7.0" 3180 | "ajv-keywords" "^1.0.0" 3181 | "chalk" "^1.1.1" 3182 | "lodash" "^4.0.0" 3183 | "slice-ansi" "0.0.4" 3184 | "string-width" "^2.0.0" 3185 | 3186 | "test-exclude@^4.2.1": 3187 | "integrity" "sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA==" 3188 | "resolved" "https://registry.npmjs.org/test-exclude/-/test-exclude-4.2.3.tgz" 3189 | "version" "4.2.3" 3190 | dependencies: 3191 | "arrify" "^1.0.1" 3192 | "micromatch" "^2.3.11" 3193 | "object-assign" "^4.1.0" 3194 | "read-pkg-up" "^1.0.1" 3195 | "require-main-filename" "^1.0.1" 3196 | 3197 | "text-table@~0.2.0": 3198 | "integrity" "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=" 3199 | "resolved" "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz" 3200 | "version" "0.2.0" 3201 | 3202 | "throat@^3.0.0": 3203 | "integrity" "sha512-/EY8VpvlqJ+sFtLPeOgc8Pl7kQVOWv0woD87KTXVHPIAE842FGT+rokxIhe8xIUP1cfgrkt0as0vDLjDiMtr8w==" 3204 | "resolved" "https://registry.npmjs.org/throat/-/throat-3.2.0.tgz" 3205 | "version" "3.2.0" 3206 | 3207 | "through@^2.3.6": 3208 | "integrity" "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" 3209 | "resolved" "https://registry.npmjs.org/through/-/through-2.3.8.tgz" 3210 | "version" "2.3.8" 3211 | 3212 | "tiny-emitter@^2.0.0": 3213 | "integrity" "sha1-utMnrbGAS0KiMa+nQVMr2ITNCa0=" 3214 | "resolved" "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.0.0.tgz" 3215 | "version" "2.0.0" 3216 | 3217 | "tmp@^0.0.31": 3218 | "integrity" "sha1-jzirlDjhcxXl29izZX6L+yd65Kc=" 3219 | "resolved" "https://registry.npmjs.org/tmp/-/tmp-0.0.31.tgz" 3220 | "version" "0.0.31" 3221 | dependencies: 3222 | "os-tmpdir" "~1.0.1" 3223 | 3224 | "tmpl@1.0.x": 3225 | "integrity" "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=" 3226 | "resolved" "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz" 3227 | "version" "1.0.4" 3228 | 3229 | "to-fast-properties@^1.0.1": 3230 | "integrity" "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=" 3231 | "resolved" "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz" 3232 | "version" "1.0.3" 3233 | 3234 | "tough-cookie@^2.3.2", "tough-cookie@~2.5.0": 3235 | "integrity" "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==" 3236 | "resolved" "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz" 3237 | "version" "2.5.0" 3238 | dependencies: 3239 | "psl" "^1.1.28" 3240 | "punycode" "^2.1.1" 3241 | 3242 | "tr46@~0.0.3": 3243 | "integrity" "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" 3244 | "resolved" "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz" 3245 | "version" "0.0.3" 3246 | 3247 | "trim-right@^1.0.1": 3248 | "integrity" "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=" 3249 | "resolved" "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz" 3250 | "version" "1.0.1" 3251 | 3252 | "trim@0.0.1": 3253 | "integrity" "sha1-WFhUf2spB1fulczMZm+1AITEYN0=" 3254 | "resolved" "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz" 3255 | "version" "0.0.1" 3256 | 3257 | "trough@^1.0.0": 3258 | "integrity" "sha1-a97f5/KqSabzxDIldodVWVfzQv0=" 3259 | "resolved" "https://registry.npmjs.org/trough/-/trough-1.0.0.tgz" 3260 | "version" "1.0.0" 3261 | 3262 | "tryit@^1.0.1": 3263 | "integrity" "sha1-OTvnMKlEb9Hq1tpZoBQwjzbCics=" 3264 | "resolved" "https://registry.npmjs.org/tryit/-/tryit-1.0.3.tgz" 3265 | "version" "1.0.3" 3266 | 3267 | "tunnel-agent@^0.6.0": 3268 | "integrity" "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=" 3269 | "resolved" "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz" 3270 | "version" "0.6.0" 3271 | dependencies: 3272 | "safe-buffer" "^5.0.1" 3273 | 3274 | "tweetnacl@^0.14.3", "tweetnacl@~0.14.0": 3275 | "integrity" "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" 3276 | "resolved" "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz" 3277 | "version" "0.14.5" 3278 | 3279 | "type-check@~0.3.2": 3280 | "integrity" "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=" 3281 | "resolved" "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz" 3282 | "version" "0.3.2" 3283 | dependencies: 3284 | "prelude-ls" "~1.1.2" 3285 | 3286 | "typedarray@^0.0.6": 3287 | "integrity" "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=" 3288 | "resolved" "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz" 3289 | "version" "0.0.6" 3290 | 3291 | "uglify-js@^3.1.4": 3292 | "integrity" "sha512-L5i5jg/SHkEqzN18gQMTWsZk3KelRsfD1wUVNqtq0kzqWQqcJjyL8yc1o8hJgRrWqrAl2mUFbhfznEIoi7zi2A==" 3293 | "resolved" "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.4.tgz" 3294 | "version" "3.12.4" 3295 | 3296 | "unified@^9.0.0", "unified@^9.2.1": 3297 | "integrity" "sha512-juWjuI8Z4xFg8pJbnEZ41b5xjGUWGHqXALmBZ3FC3WX0PIx1CZBIIJ6mXbYMcf6Yw4Fi0rFUTA1cdz/BglbOhA==" 3298 | "resolved" "https://registry.npmjs.org/unified/-/unified-9.2.1.tgz" 3299 | "version" "9.2.1" 3300 | dependencies: 3301 | "bail" "^1.0.0" 3302 | "extend" "^3.0.0" 3303 | "is-buffer" "^2.0.0" 3304 | "is-plain-obj" "^2.0.0" 3305 | "trough" "^1.0.0" 3306 | "vfile" "^4.0.0" 3307 | 3308 | "unist-util-is@^4.0.0": 3309 | "integrity" "sha512-ZOQSsnce92GrxSqlnEEseX0gi7GH9zTJZ0p9dtu87WRb/37mMPO2Ilx1s/t9vBHrFhbgweUwb+t7cIn5dxPhZg==" 3310 | "resolved" "https://registry.npmjs.org/unist-util-is/-/unist-util-is-4.1.0.tgz" 3311 | "version" "4.1.0" 3312 | 3313 | "unist-util-stringify-position@^2.0.0": 3314 | "integrity" "sha512-3faScn5I+hy9VleOq/qNbAd6pAx7iH5jYBMS9I1HgQVijz/4mv5Bvw5iw1sC/90CODiKo81G/ps8AJrISn687g==" 3315 | "resolved" "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-2.0.3.tgz" 3316 | "version" "2.0.3" 3317 | dependencies: 3318 | "@types/unist" "^2.0.2" 3319 | 3320 | "unist-util-visit@^1.1.3": 3321 | "integrity" "sha1-7CaOcxudJ3p5pbWqBkOZDkBdYAs=" 3322 | "resolved" "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-1.1.3.tgz" 3323 | "version" "1.1.3" 3324 | 3325 | "uri-js@^4.2.2": 3326 | "integrity" "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==" 3327 | "resolved" "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz" 3328 | "version" "4.4.0" 3329 | dependencies: 3330 | "punycode" "^2.1.0" 3331 | 3332 | "util-deprecate@~1.0.1": 3333 | "integrity" "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" 3334 | "resolved" "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" 3335 | "version" "1.0.2" 3336 | 3337 | "uuid@^3.3.2": 3338 | "integrity" "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==" 3339 | "resolved" "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz" 3340 | "version" "3.4.0" 3341 | 3342 | "validate-npm-package-license@^3.0.1": 3343 | "integrity" "sha1-KAS6vnEq0zeUWaz74kdGqywwP7w=" 3344 | "resolved" "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz" 3345 | "version" "3.0.1" 3346 | dependencies: 3347 | "spdx-correct" "~1.0.0" 3348 | "spdx-expression-parse" "~1.0.0" 3349 | 3350 | "verror@1.10.0": 3351 | "integrity" "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=" 3352 | "resolved" "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz" 3353 | "version" "1.10.0" 3354 | dependencies: 3355 | "assert-plus" "^1.0.0" 3356 | "core-util-is" "1.0.2" 3357 | "extsprintf" "^1.2.0" 3358 | 3359 | "vfile-location@^3.2.0": 3360 | "integrity" "sha512-aLEIZKv/oxuCDZ8lkJGhuhztf/BW4M+iHdCwglA/eWc+vtuRFJj8EtgceYFX4LRjOhCAAiNHsKGssC6onJ+jbA==" 3361 | "resolved" "https://registry.npmjs.org/vfile-location/-/vfile-location-3.2.0.tgz" 3362 | "version" "3.2.0" 3363 | 3364 | "vfile-message@^2.0.0": 3365 | "integrity" "sha512-DjssxRGkMvifUOJre00juHoP9DPWuzjxKuMDrhNbk2TdaYYBNMStsNhEOt3idrtI12VQYM/1+iM0KOzXi4pxwQ==" 3366 | "resolved" "https://registry.npmjs.org/vfile-message/-/vfile-message-2.0.4.tgz" 3367 | "version" "2.0.4" 3368 | dependencies: 3369 | "@types/unist" "^2.0.0" 3370 | "unist-util-stringify-position" "^2.0.0" 3371 | 3372 | "vfile@^4.0.0": 3373 | "integrity" "sha512-O6AE4OskCG5S1emQ/4gl8zK586RqA3srz3nfK/Viy0UPToBc5Trp9BVFb1u0CjsKrAWwnpr4ifM/KBXPWwJbCA==" 3374 | "resolved" "https://registry.npmjs.org/vfile/-/vfile-4.2.1.tgz" 3375 | "version" "4.2.1" 3376 | dependencies: 3377 | "@types/unist" "^2.0.0" 3378 | "is-buffer" "^2.0.0" 3379 | "unist-util-stringify-position" "^2.0.0" 3380 | "vfile-message" "^2.0.0" 3381 | 3382 | "walker@~1.0.5": 3383 | "integrity" "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=" 3384 | "resolved" "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz" 3385 | "version" "1.0.7" 3386 | dependencies: 3387 | "makeerror" "1.0.x" 3388 | 3389 | "watch@~0.10.0": 3390 | "integrity" "sha1-d3mLLaD5kQ1ZXxrOWwwiWFIfIdw=" 3391 | "resolved" "https://registry.npmjs.org/watch/-/watch-0.10.0.tgz" 3392 | "version" "0.10.0" 3393 | 3394 | "web-namespaces@^1.0.0": 3395 | "integrity" "sha512-wYxSGajtmoP4WxfejAPIr4l0fVh+jeMXZb08wNc0tMg6xsfZXj3cECqIK0G7ZAqUq0PP8WlMDtaOGVBTAWztNw==" 3396 | "resolved" "https://registry.npmjs.org/web-namespaces/-/web-namespaces-1.1.4.tgz" 3397 | "version" "1.1.4" 3398 | 3399 | "webidl-conversions@^3.0.0": 3400 | "integrity" "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" 3401 | "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz" 3402 | "version" "3.0.1" 3403 | 3404 | "webidl-conversions@^4.0.0": 3405 | "integrity" "sha1-gBWherg+fhsxFjhIas6B2mziBqA=" 3406 | "resolved" "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.1.tgz" 3407 | "version" "4.0.1" 3408 | 3409 | "whatwg-encoding@^1.0.1": 3410 | "integrity" "sha1-PGxFGhmO567FWx7GHQkgxngBpfQ=" 3411 | "resolved" "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.1.tgz" 3412 | "version" "1.0.1" 3413 | dependencies: 3414 | "iconv-lite" "0.4.13" 3415 | 3416 | "whatwg-url@^4.3.0": 3417 | "integrity" "sha1-0pgaqRSMHgCkHFphMRZqtGg7vMA=" 3418 | "resolved" "https://registry.npmjs.org/whatwg-url/-/whatwg-url-4.8.0.tgz" 3419 | "version" "4.8.0" 3420 | dependencies: 3421 | "tr46" "~0.0.3" 3422 | "webidl-conversions" "^3.0.0" 3423 | 3424 | "which-module@^1.0.0": 3425 | "integrity" "sha1-u6Y8qGGUiZT/MHc2CJ47lgJsKk8=" 3426 | "resolved" "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz" 3427 | "version" "1.0.0" 3428 | 3429 | "which@^1.2.10", "which@^1.2.12", "which@^1.2.9": 3430 | "integrity" "sha1-mofEN48D6CfOyvGs31bHNsAcFOU=" 3431 | "resolved" "https://registry.npmjs.org/which/-/which-1.2.14.tgz" 3432 | "version" "1.2.14" 3433 | dependencies: 3434 | "isexe" "^2.0.0" 3435 | 3436 | "wordwrap@^1.0.0", "wordwrap@~1.0.0": 3437 | "integrity" "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=" 3438 | "resolved" "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz" 3439 | "version" "1.0.0" 3440 | 3441 | "worker-farm@^1.3.1": 3442 | "integrity" "sha1-QzMRK7SbF6oFC4eJXKayys9A5f8=" 3443 | "resolved" "https://registry.npmjs.org/worker-farm/-/worker-farm-1.3.1.tgz" 3444 | "version" "1.3.1" 3445 | dependencies: 3446 | "errno" ">=0.1.1 <0.2.0-0" 3447 | "xtend" ">=4.0.0 <4.1.0-0" 3448 | 3449 | "wrap-ansi@^2.0.0": 3450 | "integrity" "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=" 3451 | "resolved" "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz" 3452 | "version" "2.1.0" 3453 | dependencies: 3454 | "string-width" "^1.0.1" 3455 | "strip-ansi" "^3.0.1" 3456 | 3457 | "wrappy@1": 3458 | "integrity" "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" 3459 | "resolved" "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz" 3460 | "version" "1.0.2" 3461 | 3462 | "write@^0.2.1": 3463 | "integrity" "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=" 3464 | "resolved" "https://registry.npmjs.org/write/-/write-0.2.1.tgz" 3465 | "version" "0.2.1" 3466 | dependencies: 3467 | "mkdirp" "^0.5.1" 3468 | 3469 | "xml-name-validator@^2.0.1": 3470 | "integrity" "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=" 3471 | "resolved" "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz" 3472 | "version" "2.0.1" 3473 | 3474 | "xtend@^4.0.0", "xtend@>=4.0.0 <4.1.0-0": 3475 | "integrity" "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" 3476 | "resolved" "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz" 3477 | "version" "4.0.1" 3478 | 3479 | "y18n@^3.2.1": 3480 | "integrity" "sha1-bRX7qITAhnnA136I53WegR4H+kE=" 3481 | "resolved" "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz" 3482 | "version" "3.2.1" 3483 | 3484 | "yallist@^2.1.2": 3485 | "integrity" "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" 3486 | "resolved" "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz" 3487 | "version" "2.1.2" 3488 | 3489 | "yargs-parser@5.0.0-security.0": 3490 | "integrity" "sha512-T69y4Ps64LNesYxeYGYPvfoMTt/7y1XtfpIslUeK4um+9Hu7hlGoRtaDLvdXb7+/tfq4opVa2HRY5xGip022rQ==" 3491 | "resolved" "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.0-security.0.tgz" 3492 | "version" "5.0.0-security.0" 3493 | dependencies: 3494 | "camelcase" "^3.0.0" 3495 | "object.assign" "^4.1.0" 3496 | 3497 | "yargs@^7.0.2": 3498 | "integrity" "sha512-huO4Fr1f9PmiJJdll5kwoS2e4GqzGSsMT3PPMpOwoVkOK8ckqAewMTZyA6LXVQWflleb/Z8oPBEvNsMft0XE+g==" 3499 | "resolved" "https://registry.npmjs.org/yargs/-/yargs-7.1.1.tgz" 3500 | "version" "7.1.1" 3501 | dependencies: 3502 | "camelcase" "^3.0.0" 3503 | "cliui" "^3.2.0" 3504 | "decamelize" "^1.1.1" 3505 | "get-caller-file" "^1.0.1" 3506 | "os-locale" "^1.4.0" 3507 | "read-pkg-up" "^1.0.1" 3508 | "require-directory" "^2.1.1" 3509 | "require-main-filename" "^1.0.1" 3510 | "set-blocking" "^2.0.0" 3511 | "string-width" "^1.0.2" 3512 | "which-module" "^1.0.0" 3513 | "y18n" "^3.2.1" 3514 | "yargs-parser" "5.0.0-security.0" 3515 | --------------------------------------------------------------------------------