├── .gitignore ├── .npmignore ├── LICENSE ├── README.md ├── __tests__ └── subsink.spec.ts ├── example └── sub-sink.component.ts.todo ├── package-lock.json ├── package.json ├── src ├── index.ts └── subsink.ts ├── tsconfig.es2015.json └── tsconfig.json /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .vscode 3 | .idea 4 | dist -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | src 3 | .idea 4 | example -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 Ward Bell 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 | [![npm](https://img.shields.io/npm/dt/ngx-auto-unsubscribe.svg)]() 2 | [![Build Status](https://semaphoreci.com/api/v1/netanel7799/ngx-auto-unsubscribe/branches/master/badge.svg)](https://semaphoreci.com/netanel7799/ngx-auto-unsubscribe) 3 | [![Build Status](https://travis-ci.org/NetanelBasal/ngx-auto-unsubscribe.svg?branch=master)](https://travis-ci.org/NetanelBasal/ngx-auto-unsubscribe) 4 | [![npm](https://img.shields.io/npm/l/ngx-auto-unsubscribe.svg)]() 5 | [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome) 6 | 7 | # SubSink 8 | **RxJS subscription sink for unsubscribing gracefully in a component.** 9 | 10 | SubSink is a dead simple class to absorb RxJS subscriptions in an array. 11 | 12 | Call `unsubscribe()` to unsubscribe all of them, as you would do 13 | in your component library's `unmount`/`onDestroy` lifecycle event. 14 | 15 | ## Installation 16 | 17 | ```bash 18 | npm install subsink --save 19 | ``` 20 | ## Angular examples 21 | 22 | There are 2 main ways to use the SubSink: the "easy" way and the "add/array" way. 23 | 24 | > RxJS supports adding subscriptions to an array of subscriptions. You can then unsubscribe directly from that array. If this appeals to you, then feel free to use it. If you prefer the technique with SubSink using the setter (aka easy) syntax below, then use that. Either way, no judgments are made. This is entirely up to you to decide. 25 | 26 | ### Easy Syntax 27 | 28 | Example using the `sink` property to collect the subscriptions using a setter. 29 | 30 | ```ts 31 | export class SomeComponent implements OnDestroy { 32 | private subs = new SubSink(); 33 | 34 | ... 35 | this.subs.sink = observable$.subscribe(...); 36 | this.subs.sink = observable$.subscribe(...); 37 | this.subs.sink = observable$.subscribe(...); 38 | ... 39 | 40 | // Unsubscribe when the component dies 41 | ngOnDestroy() { 42 | this.subs.unsubscribe(); 43 | } 44 | } 45 | ``` 46 | 47 | ### The Array/Add Technique 48 | 49 | Example using the `.add` technique. This is similar to what RxJS supports out of the box. 50 | 51 | ```tsgst 52 | export class SomeComponent implements OnDestroy { 53 | private subs = new SubSink(); 54 | 55 | ... 56 | 57 | this.subs.add(observable$.subscribe(...)); 58 | 59 | this.subs.add(observable$.subscribe(...)); 60 | 61 | // Add multiple subscriptions at the same time 62 | this.subs.add( 63 | observable$.subscribe(...), 64 | anotherObservable$.subscribe(...) 65 | ); 66 | 67 | ... 68 | 69 | // Unsubscribe when the component dies 70 | ngOnDestroy() { 71 | this.subs.unsubscribe(); 72 | } 73 | } 74 | ``` 75 | -------------------------------------------------------------------------------- /__tests__/subsink.spec.ts: -------------------------------------------------------------------------------- 1 | import { SubSink, SubscriptionLike } from '../src/subsink'; 2 | 3 | describe('SubSink', () => { 4 | let mockSubscription: SubscriptionLike; 5 | let mockSubscription2: SubscriptionLike; 6 | let sink: SubSink; 7 | 8 | beforeEach(() => { 9 | mockSubscription = { 10 | unsubscribe: jest.fn() 11 | }; 12 | mockSubscription2 = { 13 | unsubscribe: jest.fn() 14 | }; 15 | 16 | sink = new SubSink(); 17 | }) 18 | 19 | 20 | test('unsubscribes to subscriptions added through method', () => { 21 | sink.add(mockSubscription); 22 | sink.unsubscribe(); 23 | 24 | expect(mockSubscription.unsubscribe).toHaveBeenCalledTimes(1); 25 | }); 26 | 27 | test('unsubscribes to subscriptions added through property accessor', () => { 28 | sink.sink = mockSubscription; 29 | sink.unsubscribe(); 30 | 31 | expect(mockSubscription.unsubscribe).toHaveBeenCalledTimes(1); 32 | }); 33 | 34 | test('unsubscribes from subscription only once', () => { 35 | sink.sink = mockSubscription; 36 | 37 | sink.unsubscribe(); 38 | sink.unsubscribe(); 39 | 40 | expect(mockSubscription.unsubscribe).toHaveBeenCalledTimes(1); 41 | }); 42 | 43 | test('unsubscribes from subscription only once', () => { 44 | sink.sink = mockSubscription; 45 | sink.sink = mockSubscription2; 46 | 47 | sink.unsubscribe(); 48 | 49 | expect(mockSubscription.unsubscribe).toHaveBeenCalledTimes(1); 50 | expect(mockSubscription2.unsubscribe).toHaveBeenCalledTimes(1); 51 | }); 52 | 53 | describe('does throw exception given SubscriptionLike is', () => { 54 | test('undefined', () => { 55 | sink.add(undefined); 56 | expect(() => sink.unsubscribe()).not.toThrow(); 57 | }); 58 | 59 | test('null', () => { 60 | sink.add(null); 61 | expect(() => sink.unsubscribe()).not.toThrow(); 62 | }); 63 | 64 | test('not a SubscriptionLike', () => { 65 | sink.add({} as any); 66 | expect(() => sink.unsubscribe()).not.toThrow(); 67 | }); 68 | 69 | test('containing a non function member with name unsubscribe', () => { 70 | sink.add({unsubscribe: '1'} as any); 71 | expect(() => sink.unsubscribe()).not.toThrow(); 72 | }); 73 | }) 74 | }) 75 | 76 | -------------------------------------------------------------------------------- /example/sub-sink.component.ts.todo: -------------------------------------------------------------------------------- 1 | 2 | // tslint:disable:member-ordering 3 | import { TimeService } from '../../time.service'; 4 | import { Component, OnDestroy, OnInit } from '@angular/core'; 5 | 6 | import { Observable, Subscription } from 'rxjs'; 7 | 8 | import { SubSink } from '../helpers'; 9 | 10 | let counter = 0; 11 | 12 | @Component({ 13 | selector: 'app-sub-sink', 14 | template: `

SubSink time: {{ time }}

` 15 | }) 16 | export class SubSinkComponent implements OnInit, OnDestroy { 17 | prefix = '' 18 | time: string; 19 | 20 | // #1 declare a sink for subscriptions 21 | private subs = new SubSink(); 22 | 23 | 24 | ngOnInit() { 25 | counter += 1; 26 | const time$ = name => this.timeService.time$(`SubSink #${counter} ${name}`); 27 | 28 | // Create a subscriber for demo purposes ... because we'll subscribe the same way multiple times 29 | const subscriber = (() => { 30 | const that = this; 31 | return { 32 | next(time) { that.time = `${time}`; }, 33 | error(err) { console.error(err); }, 34 | complete() { console.log('SubSinkComponent completed'); } // never called! 35 | } 36 | })(); 37 | 38 | // #2 Assign subscriptions to the sink or call add() 39 | this.subs.sink = time$('A').subscribe(subscriber); 40 | this.subs.sink = time$('B').subscribe(subscriber); 41 | this.subs.sink = time$('C').subscribe(subscriber); 42 | 43 | // this works too 44 | this.subs.add( 45 | time$('D').subscribe(subscriber), 46 | time$('E').subscribe(subscriber), 47 | ); 48 | } 49 | 50 | // #3 Call unsubscribe on the sink. 51 | ngOnDestroy() { 52 | this.subs.unsubscribe(); 53 | console.log(`SubSinkComponent #${counter} destroyed`); 54 | } 55 | 56 | constructor(private timeService: TimeService) {} 57 | 58 | } 59 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "subsink", 3 | "version": "1.0.2", 4 | "lockfileVersion": 1, 5 | "requires": true, 6 | "dependencies": { 7 | "@types/jest": { 8 | "version": "21.1.10", 9 | "resolved": "https://registry.npmjs.org/@types/jest/-/jest-21.1.10.tgz", 10 | "integrity": "sha512-qDyqzbcyNgW2RgWbl606xCYQ+5fK9khOW5+Hl3wH7RggVES0dB6GcZvpmPs/XIty5qpu1xYCwpiK+iRkJ3xFBw==", 11 | "dev": true 12 | }, 13 | "abab": { 14 | "version": "1.0.4", 15 | "resolved": "https://registry.npmjs.org/abab/-/abab-1.0.4.tgz", 16 | "integrity": "sha1-X6rZwsB/YN12dw9xzwJbYqY8/U4=", 17 | "dev": true 18 | }, 19 | "acorn": { 20 | "version": "4.0.13", 21 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-4.0.13.tgz", 22 | "integrity": "sha1-EFSVrlNh1pe9GVyCUZLhrX8lN4c=", 23 | "dev": true 24 | }, 25 | "acorn-globals": { 26 | "version": "3.1.0", 27 | "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-3.1.0.tgz", 28 | "integrity": "sha1-/YJw9x+7SZawBPqIDuXUZXOnMb8=", 29 | "dev": true, 30 | "requires": { 31 | "acorn": "^4.0.4" 32 | } 33 | }, 34 | "ajv": { 35 | "version": "6.12.6", 36 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 37 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 38 | "dev": true, 39 | "requires": { 40 | "fast-deep-equal": "^3.1.1", 41 | "fast-json-stable-stringify": "^2.0.0", 42 | "json-schema-traverse": "^0.4.1", 43 | "uri-js": "^4.2.2" 44 | } 45 | }, 46 | "ansi-escapes": { 47 | "version": "3.2.0", 48 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", 49 | "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", 50 | "dev": true 51 | }, 52 | "ansi-regex": { 53 | "version": "2.1.1", 54 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", 55 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", 56 | "dev": true 57 | }, 58 | "ansi-styles": { 59 | "version": "3.2.1", 60 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 61 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 62 | "dev": true, 63 | "requires": { 64 | "color-convert": "^1.9.0" 65 | } 66 | }, 67 | "anymatch": { 68 | "version": "2.0.0", 69 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", 70 | "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", 71 | "dev": true, 72 | "requires": { 73 | "micromatch": "^3.1.4", 74 | "normalize-path": "^2.1.1" 75 | }, 76 | "dependencies": { 77 | "arr-diff": { 78 | "version": "4.0.0", 79 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 80 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 81 | "dev": true 82 | }, 83 | "array-unique": { 84 | "version": "0.3.2", 85 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 86 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 87 | "dev": true 88 | }, 89 | "braces": { 90 | "version": "2.3.2", 91 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 92 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 93 | "dev": true, 94 | "requires": { 95 | "arr-flatten": "^1.1.0", 96 | "array-unique": "^0.3.2", 97 | "extend-shallow": "^2.0.1", 98 | "fill-range": "^4.0.0", 99 | "isobject": "^3.0.1", 100 | "repeat-element": "^1.1.2", 101 | "snapdragon": "^0.8.1", 102 | "snapdragon-node": "^2.0.1", 103 | "split-string": "^3.0.2", 104 | "to-regex": "^3.0.1" 105 | }, 106 | "dependencies": { 107 | "extend-shallow": { 108 | "version": "2.0.1", 109 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 110 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 111 | "dev": true, 112 | "requires": { 113 | "is-extendable": "^0.1.0" 114 | } 115 | } 116 | } 117 | }, 118 | "expand-brackets": { 119 | "version": "2.1.4", 120 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 121 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 122 | "dev": true, 123 | "requires": { 124 | "debug": "^2.3.3", 125 | "define-property": "^0.2.5", 126 | "extend-shallow": "^2.0.1", 127 | "posix-character-classes": "^0.1.0", 128 | "regex-not": "^1.0.0", 129 | "snapdragon": "^0.8.1", 130 | "to-regex": "^3.0.1" 131 | }, 132 | "dependencies": { 133 | "define-property": { 134 | "version": "0.2.5", 135 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 136 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 137 | "dev": true, 138 | "requires": { 139 | "is-descriptor": "^0.1.0" 140 | } 141 | }, 142 | "extend-shallow": { 143 | "version": "2.0.1", 144 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 145 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 146 | "dev": true, 147 | "requires": { 148 | "is-extendable": "^0.1.0" 149 | } 150 | }, 151 | "is-accessor-descriptor": { 152 | "version": "0.1.6", 153 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 154 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 155 | "dev": true, 156 | "requires": { 157 | "kind-of": "^3.0.2" 158 | }, 159 | "dependencies": { 160 | "kind-of": { 161 | "version": "3.2.2", 162 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 163 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 164 | "dev": true, 165 | "requires": { 166 | "is-buffer": "^1.1.5" 167 | } 168 | } 169 | } 170 | }, 171 | "is-data-descriptor": { 172 | "version": "0.1.4", 173 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 174 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 175 | "dev": true, 176 | "requires": { 177 | "kind-of": "^3.0.2" 178 | }, 179 | "dependencies": { 180 | "kind-of": { 181 | "version": "3.2.2", 182 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 183 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 184 | "dev": true, 185 | "requires": { 186 | "is-buffer": "^1.1.5" 187 | } 188 | } 189 | } 190 | }, 191 | "is-descriptor": { 192 | "version": "0.1.6", 193 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 194 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 195 | "dev": true, 196 | "requires": { 197 | "is-accessor-descriptor": "^0.1.6", 198 | "is-data-descriptor": "^0.1.4", 199 | "kind-of": "^5.0.0" 200 | } 201 | }, 202 | "kind-of": { 203 | "version": "5.1.0", 204 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 205 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 206 | "dev": true 207 | } 208 | } 209 | }, 210 | "extglob": { 211 | "version": "2.0.4", 212 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 213 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 214 | "dev": true, 215 | "requires": { 216 | "array-unique": "^0.3.2", 217 | "define-property": "^1.0.0", 218 | "expand-brackets": "^2.1.4", 219 | "extend-shallow": "^2.0.1", 220 | "fragment-cache": "^0.2.1", 221 | "regex-not": "^1.0.0", 222 | "snapdragon": "^0.8.1", 223 | "to-regex": "^3.0.1" 224 | }, 225 | "dependencies": { 226 | "define-property": { 227 | "version": "1.0.0", 228 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 229 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 230 | "dev": true, 231 | "requires": { 232 | "is-descriptor": "^1.0.0" 233 | } 234 | }, 235 | "extend-shallow": { 236 | "version": "2.0.1", 237 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 238 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 239 | "dev": true, 240 | "requires": { 241 | "is-extendable": "^0.1.0" 242 | } 243 | } 244 | } 245 | }, 246 | "fill-range": { 247 | "version": "4.0.0", 248 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 249 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 250 | "dev": true, 251 | "requires": { 252 | "extend-shallow": "^2.0.1", 253 | "is-number": "^3.0.0", 254 | "repeat-string": "^1.6.1", 255 | "to-regex-range": "^2.1.0" 256 | }, 257 | "dependencies": { 258 | "extend-shallow": { 259 | "version": "2.0.1", 260 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 261 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 262 | "dev": true, 263 | "requires": { 264 | "is-extendable": "^0.1.0" 265 | } 266 | } 267 | } 268 | }, 269 | "is-accessor-descriptor": { 270 | "version": "1.0.0", 271 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 272 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 273 | "dev": true, 274 | "requires": { 275 | "kind-of": "^6.0.0" 276 | } 277 | }, 278 | "is-data-descriptor": { 279 | "version": "1.0.0", 280 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 281 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 282 | "dev": true, 283 | "requires": { 284 | "kind-of": "^6.0.0" 285 | } 286 | }, 287 | "is-descriptor": { 288 | "version": "1.0.2", 289 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 290 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 291 | "dev": true, 292 | "requires": { 293 | "is-accessor-descriptor": "^1.0.0", 294 | "is-data-descriptor": "^1.0.0", 295 | "kind-of": "^6.0.2" 296 | } 297 | }, 298 | "is-number": { 299 | "version": "3.0.0", 300 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 301 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 302 | "dev": true, 303 | "requires": { 304 | "kind-of": "^3.0.2" 305 | }, 306 | "dependencies": { 307 | "kind-of": { 308 | "version": "3.2.2", 309 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 310 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 311 | "dev": true, 312 | "requires": { 313 | "is-buffer": "^1.1.5" 314 | } 315 | } 316 | } 317 | }, 318 | "isobject": { 319 | "version": "3.0.1", 320 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 321 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 322 | "dev": true 323 | }, 324 | "kind-of": { 325 | "version": "6.0.3", 326 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 327 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 328 | "dev": true 329 | }, 330 | "micromatch": { 331 | "version": "3.1.10", 332 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 333 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 334 | "dev": true, 335 | "requires": { 336 | "arr-diff": "^4.0.0", 337 | "array-unique": "^0.3.2", 338 | "braces": "^2.3.1", 339 | "define-property": "^2.0.2", 340 | "extend-shallow": "^3.0.2", 341 | "extglob": "^2.0.4", 342 | "fragment-cache": "^0.2.1", 343 | "kind-of": "^6.0.2", 344 | "nanomatch": "^1.2.9", 345 | "object.pick": "^1.3.0", 346 | "regex-not": "^1.0.0", 347 | "snapdragon": "^0.8.1", 348 | "to-regex": "^3.0.2" 349 | } 350 | } 351 | } 352 | }, 353 | "append-transform": { 354 | "version": "0.4.0", 355 | "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-0.4.0.tgz", 356 | "integrity": "sha1-126/jKlNJ24keja61EpLdKthGZE=", 357 | "dev": true, 358 | "requires": { 359 | "default-require-extensions": "^1.0.0" 360 | } 361 | }, 362 | "argparse": { 363 | "version": "1.0.10", 364 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 365 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 366 | "dev": true, 367 | "requires": { 368 | "sprintf-js": "~1.0.2" 369 | } 370 | }, 371 | "arr-diff": { 372 | "version": "2.0.0", 373 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", 374 | "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", 375 | "dev": true, 376 | "requires": { 377 | "arr-flatten": "^1.0.1" 378 | } 379 | }, 380 | "arr-flatten": { 381 | "version": "1.1.0", 382 | "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz", 383 | "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", 384 | "dev": true 385 | }, 386 | "arr-union": { 387 | "version": "3.1.0", 388 | "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz", 389 | "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=", 390 | "dev": true 391 | }, 392 | "array-equal": { 393 | "version": "1.0.0", 394 | "resolved": "https://registry.npmjs.org/array-equal/-/array-equal-1.0.0.tgz", 395 | "integrity": "sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM=", 396 | "dev": true 397 | }, 398 | "array-unique": { 399 | "version": "0.2.1", 400 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", 401 | "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", 402 | "dev": true 403 | }, 404 | "arrify": { 405 | "version": "1.0.1", 406 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", 407 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=", 408 | "dev": true 409 | }, 410 | "asn1": { 411 | "version": "0.2.4", 412 | "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", 413 | "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", 414 | "dev": true, 415 | "requires": { 416 | "safer-buffer": "~2.1.0" 417 | } 418 | }, 419 | "assert-plus": { 420 | "version": "1.0.0", 421 | "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", 422 | "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", 423 | "dev": true 424 | }, 425 | "assign-symbols": { 426 | "version": "1.0.0", 427 | "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", 428 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", 429 | "dev": true 430 | }, 431 | "astral-regex": { 432 | "version": "1.0.0", 433 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", 434 | "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", 435 | "dev": true 436 | }, 437 | "async": { 438 | "version": "2.6.3", 439 | "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", 440 | "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", 441 | "dev": true, 442 | "requires": { 443 | "lodash": "^4.17.14" 444 | } 445 | }, 446 | "async-each": { 447 | "version": "1.0.3", 448 | "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz", 449 | "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==", 450 | "dev": true 451 | }, 452 | "asynckit": { 453 | "version": "0.4.0", 454 | "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", 455 | "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", 456 | "dev": true 457 | }, 458 | "atob": { 459 | "version": "2.1.2", 460 | "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz", 461 | "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", 462 | "dev": true 463 | }, 464 | "aws-sign2": { 465 | "version": "0.7.0", 466 | "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", 467 | "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", 468 | "dev": true 469 | }, 470 | "aws4": { 471 | "version": "1.11.0", 472 | "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz", 473 | "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==", 474 | "dev": true 475 | }, 476 | "babel-code-frame": { 477 | "version": "6.26.0", 478 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", 479 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", 480 | "dev": true, 481 | "requires": { 482 | "chalk": "^1.1.3", 483 | "esutils": "^2.0.2", 484 | "js-tokens": "^3.0.2" 485 | }, 486 | "dependencies": { 487 | "ansi-styles": { 488 | "version": "2.2.1", 489 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", 490 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", 491 | "dev": true 492 | }, 493 | "chalk": { 494 | "version": "1.1.3", 495 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", 496 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", 497 | "dev": true, 498 | "requires": { 499 | "ansi-styles": "^2.2.1", 500 | "escape-string-regexp": "^1.0.2", 501 | "has-ansi": "^2.0.0", 502 | "strip-ansi": "^3.0.0", 503 | "supports-color": "^2.0.0" 504 | } 505 | }, 506 | "strip-ansi": { 507 | "version": "3.0.1", 508 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 509 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 510 | "dev": true, 511 | "requires": { 512 | "ansi-regex": "^2.0.0" 513 | } 514 | }, 515 | "supports-color": { 516 | "version": "2.0.0", 517 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", 518 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", 519 | "dev": true 520 | } 521 | } 522 | }, 523 | "babel-core": { 524 | "version": "6.26.3", 525 | "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", 526 | "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", 527 | "dev": true, 528 | "requires": { 529 | "babel-code-frame": "^6.26.0", 530 | "babel-generator": "^6.26.0", 531 | "babel-helpers": "^6.24.1", 532 | "babel-messages": "^6.23.0", 533 | "babel-register": "^6.26.0", 534 | "babel-runtime": "^6.26.0", 535 | "babel-template": "^6.26.0", 536 | "babel-traverse": "^6.26.0", 537 | "babel-types": "^6.26.0", 538 | "babylon": "^6.18.0", 539 | "convert-source-map": "^1.5.1", 540 | "debug": "^2.6.9", 541 | "json5": "^0.5.1", 542 | "lodash": "^4.17.4", 543 | "minimatch": "^3.0.4", 544 | "path-is-absolute": "^1.0.1", 545 | "private": "^0.1.8", 546 | "slash": "^1.0.0", 547 | "source-map": "^0.5.7" 548 | } 549 | }, 550 | "babel-generator": { 551 | "version": "6.26.1", 552 | "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", 553 | "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", 554 | "dev": true, 555 | "requires": { 556 | "babel-messages": "^6.23.0", 557 | "babel-runtime": "^6.26.0", 558 | "babel-types": "^6.26.0", 559 | "detect-indent": "^4.0.0", 560 | "jsesc": "^1.3.0", 561 | "lodash": "^4.17.4", 562 | "source-map": "^0.5.7", 563 | "trim-right": "^1.0.1" 564 | } 565 | }, 566 | "babel-helpers": { 567 | "version": "6.24.1", 568 | "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", 569 | "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", 570 | "dev": true, 571 | "requires": { 572 | "babel-runtime": "^6.22.0", 573 | "babel-template": "^6.24.1" 574 | } 575 | }, 576 | "babel-jest": { 577 | "version": "21.2.0", 578 | "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-21.2.0.tgz", 579 | "integrity": "sha512-O0W2qLoWu1QOoOGgxiR2JID4O6WSpxPiQanrkyi9SSlM0PJ60Ptzlck47lhtnr9YZO3zYOsxHwnyeWJ6AffoBQ==", 580 | "dev": true, 581 | "requires": { 582 | "babel-plugin-istanbul": "^4.0.0", 583 | "babel-preset-jest": "^21.2.0" 584 | } 585 | }, 586 | "babel-messages": { 587 | "version": "6.23.0", 588 | "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", 589 | "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", 590 | "dev": true, 591 | "requires": { 592 | "babel-runtime": "^6.22.0" 593 | } 594 | }, 595 | "babel-plugin-istanbul": { 596 | "version": "4.1.6", 597 | "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-4.1.6.tgz", 598 | "integrity": "sha512-PWP9FQ1AhZhS01T/4qLSKoHGY/xvkZdVBGlKM/HuxxS3+sC66HhTNR7+MpbO/so/cz/wY94MeSWJuP1hXIPfwQ==", 599 | "dev": true, 600 | "requires": { 601 | "babel-plugin-syntax-object-rest-spread": "^6.13.0", 602 | "find-up": "^2.1.0", 603 | "istanbul-lib-instrument": "^1.10.1", 604 | "test-exclude": "^4.2.1" 605 | } 606 | }, 607 | "babel-plugin-jest-hoist": { 608 | "version": "21.2.0", 609 | "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-21.2.0.tgz", 610 | "integrity": "sha512-yi5QuiVyyvhBUDLP4ButAnhYzkdrUwWDtvUJv71hjH3fclhnZg4HkDeqaitcR2dZZx/E67kGkRcPVjtVu+SJfQ==", 611 | "dev": true 612 | }, 613 | "babel-plugin-syntax-object-rest-spread": { 614 | "version": "6.13.0", 615 | "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz", 616 | "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=", 617 | "dev": true 618 | }, 619 | "babel-plugin-transform-es2015-modules-commonjs": { 620 | "version": "6.26.2", 621 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", 622 | "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", 623 | "dev": true, 624 | "requires": { 625 | "babel-plugin-transform-strict-mode": "^6.24.1", 626 | "babel-runtime": "^6.26.0", 627 | "babel-template": "^6.26.0", 628 | "babel-types": "^6.26.0" 629 | } 630 | }, 631 | "babel-plugin-transform-strict-mode": { 632 | "version": "6.24.1", 633 | "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", 634 | "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", 635 | "dev": true, 636 | "requires": { 637 | "babel-runtime": "^6.22.0", 638 | "babel-types": "^6.24.1" 639 | } 640 | }, 641 | "babel-preset-jest": { 642 | "version": "21.2.0", 643 | "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-21.2.0.tgz", 644 | "integrity": "sha512-hm9cBnr2h3J7yXoTtAVV0zg+3vg0Q/gT2GYuzlreTU0EPkJRtlNgKJJ3tBKEn0+VjAi3JykV6xCJkuUYttEEfA==", 645 | "dev": true, 646 | "requires": { 647 | "babel-plugin-jest-hoist": "^21.2.0", 648 | "babel-plugin-syntax-object-rest-spread": "^6.13.0" 649 | } 650 | }, 651 | "babel-register": { 652 | "version": "6.26.0", 653 | "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", 654 | "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", 655 | "dev": true, 656 | "requires": { 657 | "babel-core": "^6.26.0", 658 | "babel-runtime": "^6.26.0", 659 | "core-js": "^2.5.0", 660 | "home-or-tmp": "^2.0.0", 661 | "lodash": "^4.17.4", 662 | "mkdirp": "^0.5.1", 663 | "source-map-support": "^0.4.15" 664 | } 665 | }, 666 | "babel-runtime": { 667 | "version": "6.26.0", 668 | "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", 669 | "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", 670 | "dev": true, 671 | "requires": { 672 | "core-js": "^2.4.0", 673 | "regenerator-runtime": "^0.11.0" 674 | } 675 | }, 676 | "babel-template": { 677 | "version": "6.26.0", 678 | "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", 679 | "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", 680 | "dev": true, 681 | "requires": { 682 | "babel-runtime": "^6.26.0", 683 | "babel-traverse": "^6.26.0", 684 | "babel-types": "^6.26.0", 685 | "babylon": "^6.18.0", 686 | "lodash": "^4.17.4" 687 | } 688 | }, 689 | "babel-traverse": { 690 | "version": "6.26.0", 691 | "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", 692 | "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", 693 | "dev": true, 694 | "requires": { 695 | "babel-code-frame": "^6.26.0", 696 | "babel-messages": "^6.23.0", 697 | "babel-runtime": "^6.26.0", 698 | "babel-types": "^6.26.0", 699 | "babylon": "^6.18.0", 700 | "debug": "^2.6.8", 701 | "globals": "^9.18.0", 702 | "invariant": "^2.2.2", 703 | "lodash": "^4.17.4" 704 | } 705 | }, 706 | "babel-types": { 707 | "version": "6.26.0", 708 | "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", 709 | "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", 710 | "dev": true, 711 | "requires": { 712 | "babel-runtime": "^6.26.0", 713 | "esutils": "^2.0.2", 714 | "lodash": "^4.17.4", 715 | "to-fast-properties": "^1.0.3" 716 | } 717 | }, 718 | "babylon": { 719 | "version": "6.18.0", 720 | "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", 721 | "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", 722 | "dev": true 723 | }, 724 | "balanced-match": { 725 | "version": "1.0.0", 726 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", 727 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", 728 | "dev": true 729 | }, 730 | "base": { 731 | "version": "0.11.2", 732 | "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz", 733 | "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", 734 | "dev": true, 735 | "requires": { 736 | "cache-base": "^1.0.1", 737 | "class-utils": "^0.3.5", 738 | "component-emitter": "^1.2.1", 739 | "define-property": "^1.0.0", 740 | "isobject": "^3.0.1", 741 | "mixin-deep": "^1.2.0", 742 | "pascalcase": "^0.1.1" 743 | }, 744 | "dependencies": { 745 | "define-property": { 746 | "version": "1.0.0", 747 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 748 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 749 | "dev": true, 750 | "requires": { 751 | "is-descriptor": "^1.0.0" 752 | } 753 | }, 754 | "is-accessor-descriptor": { 755 | "version": "1.0.0", 756 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 757 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 758 | "dev": true, 759 | "requires": { 760 | "kind-of": "^6.0.0" 761 | } 762 | }, 763 | "is-data-descriptor": { 764 | "version": "1.0.0", 765 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 766 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 767 | "dev": true, 768 | "requires": { 769 | "kind-of": "^6.0.0" 770 | } 771 | }, 772 | "is-descriptor": { 773 | "version": "1.0.2", 774 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 775 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 776 | "dev": true, 777 | "requires": { 778 | "is-accessor-descriptor": "^1.0.0", 779 | "is-data-descriptor": "^1.0.0", 780 | "kind-of": "^6.0.2" 781 | } 782 | }, 783 | "isobject": { 784 | "version": "3.0.1", 785 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 786 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 787 | "dev": true 788 | }, 789 | "kind-of": { 790 | "version": "6.0.3", 791 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 792 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 793 | "dev": true 794 | } 795 | } 796 | }, 797 | "bcrypt-pbkdf": { 798 | "version": "1.0.2", 799 | "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", 800 | "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", 801 | "dev": true, 802 | "requires": { 803 | "tweetnacl": "^0.14.3" 804 | } 805 | }, 806 | "binary-extensions": { 807 | "version": "1.13.1", 808 | "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", 809 | "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", 810 | "dev": true 811 | }, 812 | "bindings": { 813 | "version": "1.5.0", 814 | "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", 815 | "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", 816 | "dev": true, 817 | "optional": true, 818 | "requires": { 819 | "file-uri-to-path": "1.0.0" 820 | } 821 | }, 822 | "brace-expansion": { 823 | "version": "1.1.11", 824 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 825 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 826 | "dev": true, 827 | "requires": { 828 | "balanced-match": "^1.0.0", 829 | "concat-map": "0.0.1" 830 | } 831 | }, 832 | "braces": { 833 | "version": "1.8.5", 834 | "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", 835 | "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", 836 | "dev": true, 837 | "requires": { 838 | "expand-range": "^1.8.1", 839 | "preserve": "^0.2.0", 840 | "repeat-element": "^1.1.2" 841 | } 842 | }, 843 | "browser-resolve": { 844 | "version": "1.11.3", 845 | "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-1.11.3.tgz", 846 | "integrity": "sha512-exDi1BYWB/6raKHmDTCicQfTkqwN5fioMFV4j8BsfMU4R2DK/QfZfK7kOVkmWCNANf0snkBzqGqAJBao9gZMdQ==", 847 | "dev": true, 848 | "requires": { 849 | "resolve": "1.1.7" 850 | } 851 | }, 852 | "bser": { 853 | "version": "2.1.1", 854 | "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", 855 | "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", 856 | "dev": true, 857 | "requires": { 858 | "node-int64": "^0.4.0" 859 | } 860 | }, 861 | "buffer-from": { 862 | "version": "1.1.1", 863 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", 864 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", 865 | "dev": true 866 | }, 867 | "builtin-modules": { 868 | "version": "1.1.1", 869 | "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", 870 | "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=", 871 | "dev": true 872 | }, 873 | "cache-base": { 874 | "version": "1.0.1", 875 | "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz", 876 | "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", 877 | "dev": true, 878 | "requires": { 879 | "collection-visit": "^1.0.0", 880 | "component-emitter": "^1.2.1", 881 | "get-value": "^2.0.6", 882 | "has-value": "^1.0.0", 883 | "isobject": "^3.0.1", 884 | "set-value": "^2.0.0", 885 | "to-object-path": "^0.3.0", 886 | "union-value": "^1.0.0", 887 | "unset-value": "^1.0.0" 888 | }, 889 | "dependencies": { 890 | "isobject": { 891 | "version": "3.0.1", 892 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 893 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 894 | "dev": true 895 | } 896 | } 897 | }, 898 | "callsites": { 899 | "version": "2.0.0", 900 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz", 901 | "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=", 902 | "dev": true 903 | }, 904 | "camelcase": { 905 | "version": "4.1.0", 906 | "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", 907 | "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", 908 | "dev": true 909 | }, 910 | "capture-exit": { 911 | "version": "1.2.0", 912 | "resolved": "https://registry.npmjs.org/capture-exit/-/capture-exit-1.2.0.tgz", 913 | "integrity": "sha1-HF/MSJ/QqwDU8ax64QcuMXP7q28=", 914 | "dev": true, 915 | "requires": { 916 | "rsvp": "^3.3.3" 917 | } 918 | }, 919 | "caseless": { 920 | "version": "0.12.0", 921 | "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", 922 | "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", 923 | "dev": true 924 | }, 925 | "chalk": { 926 | "version": "2.4.2", 927 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 928 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 929 | "dev": true, 930 | "requires": { 931 | "ansi-styles": "^3.2.1", 932 | "escape-string-regexp": "^1.0.5", 933 | "supports-color": "^5.3.0" 934 | } 935 | }, 936 | "chokidar": { 937 | "version": "1.7.0", 938 | "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", 939 | "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", 940 | "dev": true, 941 | "requires": { 942 | "anymatch": "^1.3.0", 943 | "async-each": "^1.0.0", 944 | "fsevents": "^1.0.0", 945 | "glob-parent": "^2.0.0", 946 | "inherits": "^2.0.1", 947 | "is-binary-path": "^1.0.0", 948 | "is-glob": "^2.0.0", 949 | "path-is-absolute": "^1.0.0", 950 | "readdirp": "^2.0.0" 951 | }, 952 | "dependencies": { 953 | "anymatch": { 954 | "version": "1.3.2", 955 | "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", 956 | "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", 957 | "dev": true, 958 | "requires": { 959 | "micromatch": "^2.1.5", 960 | "normalize-path": "^2.0.0" 961 | } 962 | } 963 | } 964 | }, 965 | "ci-info": { 966 | "version": "1.6.0", 967 | "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz", 968 | "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==", 969 | "dev": true 970 | }, 971 | "class-utils": { 972 | "version": "0.3.6", 973 | "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", 974 | "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", 975 | "dev": true, 976 | "requires": { 977 | "arr-union": "^3.1.0", 978 | "define-property": "^0.2.5", 979 | "isobject": "^3.0.0", 980 | "static-extend": "^0.1.1" 981 | }, 982 | "dependencies": { 983 | "define-property": { 984 | "version": "0.2.5", 985 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 986 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 987 | "dev": true, 988 | "requires": { 989 | "is-descriptor": "^0.1.0" 990 | } 991 | }, 992 | "isobject": { 993 | "version": "3.0.1", 994 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 995 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 996 | "dev": true 997 | } 998 | } 999 | }, 1000 | "cliui": { 1001 | "version": "3.2.0", 1002 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", 1003 | "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", 1004 | "dev": true, 1005 | "requires": { 1006 | "string-width": "^1.0.1", 1007 | "strip-ansi": "^3.0.1", 1008 | "wrap-ansi": "^2.0.0" 1009 | }, 1010 | "dependencies": { 1011 | "string-width": { 1012 | "version": "1.0.2", 1013 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 1014 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 1015 | "dev": true, 1016 | "requires": { 1017 | "code-point-at": "^1.0.0", 1018 | "is-fullwidth-code-point": "^1.0.0", 1019 | "strip-ansi": "^3.0.0" 1020 | } 1021 | }, 1022 | "strip-ansi": { 1023 | "version": "3.0.1", 1024 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 1025 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 1026 | "dev": true, 1027 | "requires": { 1028 | "ansi-regex": "^2.0.0" 1029 | } 1030 | } 1031 | } 1032 | }, 1033 | "code-point-at": { 1034 | "version": "1.1.0", 1035 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", 1036 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", 1037 | "dev": true 1038 | }, 1039 | "collection-visit": { 1040 | "version": "1.0.0", 1041 | "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", 1042 | "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", 1043 | "dev": true, 1044 | "requires": { 1045 | "map-visit": "^1.0.0", 1046 | "object-visit": "^1.0.0" 1047 | } 1048 | }, 1049 | "color-convert": { 1050 | "version": "1.9.3", 1051 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 1052 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 1053 | "dev": true, 1054 | "requires": { 1055 | "color-name": "1.1.3" 1056 | } 1057 | }, 1058 | "color-name": { 1059 | "version": "1.1.3", 1060 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1061 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 1062 | "dev": true 1063 | }, 1064 | "combined-stream": { 1065 | "version": "1.0.8", 1066 | "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", 1067 | "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", 1068 | "dev": true, 1069 | "requires": { 1070 | "delayed-stream": "~1.0.0" 1071 | } 1072 | }, 1073 | "component-emitter": { 1074 | "version": "1.3.0", 1075 | "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", 1076 | "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", 1077 | "dev": true 1078 | }, 1079 | "concat-map": { 1080 | "version": "0.0.1", 1081 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1082 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 1083 | "dev": true 1084 | }, 1085 | "content-type-parser": { 1086 | "version": "1.0.2", 1087 | "resolved": "https://registry.npmjs.org/content-type-parser/-/content-type-parser-1.0.2.tgz", 1088 | "integrity": "sha512-lM4l4CnMEwOLHAHr/P6MEZwZFPJFtAAKgL6pogbXmVZggIqXhdB6RbBtPOTsw2FcXwYhehRGERJmRrjOiIB8pQ==", 1089 | "dev": true 1090 | }, 1091 | "convert-source-map": { 1092 | "version": "1.7.0", 1093 | "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", 1094 | "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", 1095 | "dev": true, 1096 | "requires": { 1097 | "safe-buffer": "~5.1.1" 1098 | }, 1099 | "dependencies": { 1100 | "safe-buffer": { 1101 | "version": "5.1.2", 1102 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 1103 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 1104 | "dev": true 1105 | } 1106 | } 1107 | }, 1108 | "copy-descriptor": { 1109 | "version": "0.1.1", 1110 | "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", 1111 | "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", 1112 | "dev": true 1113 | }, 1114 | "core-js": { 1115 | "version": "2.6.12", 1116 | "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz", 1117 | "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==", 1118 | "dev": true 1119 | }, 1120 | "core-util-is": { 1121 | "version": "1.0.2", 1122 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", 1123 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", 1124 | "dev": true 1125 | }, 1126 | "cpx": { 1127 | "version": "1.5.0", 1128 | "resolved": "https://registry.npmjs.org/cpx/-/cpx-1.5.0.tgz", 1129 | "integrity": "sha1-GFvgGFEdhycN7czCkxceN2VauI8=", 1130 | "dev": true, 1131 | "requires": { 1132 | "babel-runtime": "^6.9.2", 1133 | "chokidar": "^1.6.0", 1134 | "duplexer": "^0.1.1", 1135 | "glob": "^7.0.5", 1136 | "glob2base": "^0.0.12", 1137 | "minimatch": "^3.0.2", 1138 | "mkdirp": "^0.5.1", 1139 | "resolve": "^1.1.7", 1140 | "safe-buffer": "^5.0.1", 1141 | "shell-quote": "^1.6.1", 1142 | "subarg": "^1.0.0" 1143 | } 1144 | }, 1145 | "cross-spawn": { 1146 | "version": "5.1.0", 1147 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz", 1148 | "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", 1149 | "dev": true, 1150 | "requires": { 1151 | "lru-cache": "^4.0.1", 1152 | "shebang-command": "^1.2.0", 1153 | "which": "^1.2.9" 1154 | } 1155 | }, 1156 | "cssom": { 1157 | "version": "0.3.8", 1158 | "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", 1159 | "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", 1160 | "dev": true 1161 | }, 1162 | "cssstyle": { 1163 | "version": "0.2.37", 1164 | "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-0.2.37.tgz", 1165 | "integrity": "sha1-VBCXI0yyUTyDzu06zdwn/yeYfVQ=", 1166 | "dev": true, 1167 | "requires": { 1168 | "cssom": "0.3.x" 1169 | } 1170 | }, 1171 | "dashdash": { 1172 | "version": "1.14.1", 1173 | "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", 1174 | "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", 1175 | "dev": true, 1176 | "requires": { 1177 | "assert-plus": "^1.0.0" 1178 | } 1179 | }, 1180 | "debug": { 1181 | "version": "2.6.9", 1182 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", 1183 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", 1184 | "dev": true, 1185 | "requires": { 1186 | "ms": "2.0.0" 1187 | } 1188 | }, 1189 | "decamelize": { 1190 | "version": "1.2.0", 1191 | "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", 1192 | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", 1193 | "dev": true 1194 | }, 1195 | "decode-uri-component": { 1196 | "version": "0.2.0", 1197 | "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz", 1198 | "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=", 1199 | "dev": true 1200 | }, 1201 | "deep-is": { 1202 | "version": "0.1.3", 1203 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", 1204 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=", 1205 | "dev": true 1206 | }, 1207 | "default-require-extensions": { 1208 | "version": "1.0.0", 1209 | "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-1.0.0.tgz", 1210 | "integrity": "sha1-836hXT4T/9m0N9M+GnW1+5eHTLg=", 1211 | "dev": true, 1212 | "requires": { 1213 | "strip-bom": "^2.0.0" 1214 | } 1215 | }, 1216 | "define-property": { 1217 | "version": "2.0.2", 1218 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", 1219 | "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", 1220 | "dev": true, 1221 | "requires": { 1222 | "is-descriptor": "^1.0.2", 1223 | "isobject": "^3.0.1" 1224 | }, 1225 | "dependencies": { 1226 | "is-accessor-descriptor": { 1227 | "version": "1.0.0", 1228 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 1229 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 1230 | "dev": true, 1231 | "requires": { 1232 | "kind-of": "^6.0.0" 1233 | } 1234 | }, 1235 | "is-data-descriptor": { 1236 | "version": "1.0.0", 1237 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 1238 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 1239 | "dev": true, 1240 | "requires": { 1241 | "kind-of": "^6.0.0" 1242 | } 1243 | }, 1244 | "is-descriptor": { 1245 | "version": "1.0.2", 1246 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 1247 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 1248 | "dev": true, 1249 | "requires": { 1250 | "is-accessor-descriptor": "^1.0.0", 1251 | "is-data-descriptor": "^1.0.0", 1252 | "kind-of": "^6.0.2" 1253 | } 1254 | }, 1255 | "isobject": { 1256 | "version": "3.0.1", 1257 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 1258 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 1259 | "dev": true 1260 | }, 1261 | "kind-of": { 1262 | "version": "6.0.3", 1263 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 1264 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 1265 | "dev": true 1266 | } 1267 | } 1268 | }, 1269 | "delayed-stream": { 1270 | "version": "1.0.0", 1271 | "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", 1272 | "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", 1273 | "dev": true 1274 | }, 1275 | "detect-indent": { 1276 | "version": "4.0.0", 1277 | "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", 1278 | "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", 1279 | "dev": true, 1280 | "requires": { 1281 | "repeating": "^2.0.0" 1282 | } 1283 | }, 1284 | "diff": { 1285 | "version": "3.5.0", 1286 | "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz", 1287 | "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==", 1288 | "dev": true 1289 | }, 1290 | "duplexer": { 1291 | "version": "0.1.2", 1292 | "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", 1293 | "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", 1294 | "dev": true 1295 | }, 1296 | "ecc-jsbn": { 1297 | "version": "0.1.2", 1298 | "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", 1299 | "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", 1300 | "dev": true, 1301 | "requires": { 1302 | "jsbn": "~0.1.0", 1303 | "safer-buffer": "^2.1.0" 1304 | } 1305 | }, 1306 | "errno": { 1307 | "version": "0.1.7", 1308 | "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", 1309 | "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", 1310 | "dev": true, 1311 | "requires": { 1312 | "prr": "~1.0.1" 1313 | } 1314 | }, 1315 | "error-ex": { 1316 | "version": "1.3.2", 1317 | "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", 1318 | "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", 1319 | "dev": true, 1320 | "requires": { 1321 | "is-arrayish": "^0.2.1" 1322 | } 1323 | }, 1324 | "escape-string-regexp": { 1325 | "version": "1.0.5", 1326 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1327 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1328 | "dev": true 1329 | }, 1330 | "escodegen": { 1331 | "version": "1.14.3", 1332 | "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.14.3.tgz", 1333 | "integrity": "sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw==", 1334 | "dev": true, 1335 | "requires": { 1336 | "esprima": "^4.0.1", 1337 | "estraverse": "^4.2.0", 1338 | "esutils": "^2.0.2", 1339 | "optionator": "^0.8.1", 1340 | "source-map": "~0.6.1" 1341 | }, 1342 | "dependencies": { 1343 | "source-map": { 1344 | "version": "0.6.1", 1345 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1346 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 1347 | "dev": true, 1348 | "optional": true 1349 | } 1350 | } 1351 | }, 1352 | "esprima": { 1353 | "version": "4.0.1", 1354 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 1355 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 1356 | "dev": true 1357 | }, 1358 | "estraverse": { 1359 | "version": "4.3.0", 1360 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 1361 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 1362 | "dev": true 1363 | }, 1364 | "esutils": { 1365 | "version": "2.0.3", 1366 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 1367 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 1368 | "dev": true 1369 | }, 1370 | "exec-sh": { 1371 | "version": "0.2.2", 1372 | "resolved": "https://registry.npmjs.org/exec-sh/-/exec-sh-0.2.2.tgz", 1373 | "integrity": "sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw==", 1374 | "dev": true, 1375 | "requires": { 1376 | "merge": "^1.2.0" 1377 | } 1378 | }, 1379 | "execa": { 1380 | "version": "0.7.0", 1381 | "resolved": "https://registry.npmjs.org/execa/-/execa-0.7.0.tgz", 1382 | "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", 1383 | "dev": true, 1384 | "requires": { 1385 | "cross-spawn": "^5.0.1", 1386 | "get-stream": "^3.0.0", 1387 | "is-stream": "^1.1.0", 1388 | "npm-run-path": "^2.0.0", 1389 | "p-finally": "^1.0.0", 1390 | "signal-exit": "^3.0.0", 1391 | "strip-eof": "^1.0.0" 1392 | } 1393 | }, 1394 | "expand-brackets": { 1395 | "version": "0.1.5", 1396 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", 1397 | "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", 1398 | "dev": true, 1399 | "requires": { 1400 | "is-posix-bracket": "^0.1.0" 1401 | } 1402 | }, 1403 | "expand-range": { 1404 | "version": "1.8.2", 1405 | "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", 1406 | "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", 1407 | "dev": true, 1408 | "requires": { 1409 | "fill-range": "^2.1.0" 1410 | } 1411 | }, 1412 | "expect": { 1413 | "version": "21.2.1", 1414 | "resolved": "https://registry.npmjs.org/expect/-/expect-21.2.1.tgz", 1415 | "integrity": "sha512-orfQQqFRTX0jH7znRIGi8ZMR8kTNpXklTTz8+HGTpmTKZo3Occ6JNB5FXMb8cRuiiC/GyDqsr30zUa66ACYlYw==", 1416 | "dev": true, 1417 | "requires": { 1418 | "ansi-styles": "^3.2.0", 1419 | "jest-diff": "^21.2.1", 1420 | "jest-get-type": "^21.2.0", 1421 | "jest-matcher-utils": "^21.2.1", 1422 | "jest-message-util": "^21.2.1", 1423 | "jest-regex-util": "^21.2.0" 1424 | } 1425 | }, 1426 | "extend": { 1427 | "version": "3.0.2", 1428 | "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", 1429 | "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", 1430 | "dev": true 1431 | }, 1432 | "extend-shallow": { 1433 | "version": "3.0.2", 1434 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz", 1435 | "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", 1436 | "dev": true, 1437 | "requires": { 1438 | "assign-symbols": "^1.0.0", 1439 | "is-extendable": "^1.0.1" 1440 | }, 1441 | "dependencies": { 1442 | "is-extendable": { 1443 | "version": "1.0.1", 1444 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 1445 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 1446 | "dev": true, 1447 | "requires": { 1448 | "is-plain-object": "^2.0.4" 1449 | } 1450 | } 1451 | } 1452 | }, 1453 | "extglob": { 1454 | "version": "0.3.2", 1455 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", 1456 | "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", 1457 | "dev": true, 1458 | "requires": { 1459 | "is-extglob": "^1.0.0" 1460 | } 1461 | }, 1462 | "extsprintf": { 1463 | "version": "1.3.0", 1464 | "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", 1465 | "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", 1466 | "dev": true 1467 | }, 1468 | "fast-deep-equal": { 1469 | "version": "3.1.3", 1470 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 1471 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 1472 | "dev": true 1473 | }, 1474 | "fast-json-stable-stringify": { 1475 | "version": "2.1.0", 1476 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 1477 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 1478 | "dev": true 1479 | }, 1480 | "fast-levenshtein": { 1481 | "version": "2.0.6", 1482 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1483 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1484 | "dev": true 1485 | }, 1486 | "fb-watchman": { 1487 | "version": "2.0.1", 1488 | "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.1.tgz", 1489 | "integrity": "sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg==", 1490 | "dev": true, 1491 | "requires": { 1492 | "bser": "2.1.1" 1493 | } 1494 | }, 1495 | "file-uri-to-path": { 1496 | "version": "1.0.0", 1497 | "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", 1498 | "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", 1499 | "dev": true, 1500 | "optional": true 1501 | }, 1502 | "filename-regex": { 1503 | "version": "2.0.1", 1504 | "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", 1505 | "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", 1506 | "dev": true 1507 | }, 1508 | "fileset": { 1509 | "version": "2.0.3", 1510 | "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", 1511 | "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", 1512 | "dev": true, 1513 | "requires": { 1514 | "glob": "^7.0.3", 1515 | "minimatch": "^3.0.3" 1516 | } 1517 | }, 1518 | "fill-range": { 1519 | "version": "2.2.4", 1520 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", 1521 | "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", 1522 | "dev": true, 1523 | "requires": { 1524 | "is-number": "^2.1.0", 1525 | "isobject": "^2.0.0", 1526 | "randomatic": "^3.0.0", 1527 | "repeat-element": "^1.1.2", 1528 | "repeat-string": "^1.5.2" 1529 | } 1530 | }, 1531 | "find-index": { 1532 | "version": "0.1.1", 1533 | "resolved": "https://registry.npmjs.org/find-index/-/find-index-0.1.1.tgz", 1534 | "integrity": "sha1-Z101iyyjiS15Whq0cjL4tuLg3eQ=", 1535 | "dev": true 1536 | }, 1537 | "find-up": { 1538 | "version": "2.1.0", 1539 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", 1540 | "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", 1541 | "dev": true, 1542 | "requires": { 1543 | "locate-path": "^2.0.0" 1544 | } 1545 | }, 1546 | "for-in": { 1547 | "version": "1.0.2", 1548 | "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", 1549 | "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", 1550 | "dev": true 1551 | }, 1552 | "for-own": { 1553 | "version": "0.1.5", 1554 | "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", 1555 | "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", 1556 | "dev": true, 1557 | "requires": { 1558 | "for-in": "^1.0.1" 1559 | } 1560 | }, 1561 | "forever-agent": { 1562 | "version": "0.6.1", 1563 | "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", 1564 | "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", 1565 | "dev": true 1566 | }, 1567 | "form-data": { 1568 | "version": "2.3.3", 1569 | "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", 1570 | "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", 1571 | "dev": true, 1572 | "requires": { 1573 | "asynckit": "^0.4.0", 1574 | "combined-stream": "^1.0.6", 1575 | "mime-types": "^2.1.12" 1576 | } 1577 | }, 1578 | "fragment-cache": { 1579 | "version": "0.2.1", 1580 | "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz", 1581 | "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", 1582 | "dev": true, 1583 | "requires": { 1584 | "map-cache": "^0.2.2" 1585 | } 1586 | }, 1587 | "fs-extra": { 1588 | "version": "4.0.3", 1589 | "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz", 1590 | "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==", 1591 | "dev": true, 1592 | "requires": { 1593 | "graceful-fs": "^4.1.2", 1594 | "jsonfile": "^4.0.0", 1595 | "universalify": "^0.1.0" 1596 | } 1597 | }, 1598 | "fs.realpath": { 1599 | "version": "1.0.0", 1600 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1601 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1602 | "dev": true 1603 | }, 1604 | "fsevents": { 1605 | "version": "1.2.13", 1606 | "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz", 1607 | "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==", 1608 | "dev": true, 1609 | "optional": true, 1610 | "requires": { 1611 | "bindings": "^1.5.0", 1612 | "nan": "^2.12.1" 1613 | } 1614 | }, 1615 | "function-bind": { 1616 | "version": "1.1.1", 1617 | "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", 1618 | "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", 1619 | "dev": true 1620 | }, 1621 | "get-caller-file": { 1622 | "version": "1.0.3", 1623 | "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", 1624 | "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==", 1625 | "dev": true 1626 | }, 1627 | "get-stream": { 1628 | "version": "3.0.0", 1629 | "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz", 1630 | "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=", 1631 | "dev": true 1632 | }, 1633 | "get-value": { 1634 | "version": "2.0.6", 1635 | "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", 1636 | "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", 1637 | "dev": true 1638 | }, 1639 | "getpass": { 1640 | "version": "0.1.7", 1641 | "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", 1642 | "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", 1643 | "dev": true, 1644 | "requires": { 1645 | "assert-plus": "^1.0.0" 1646 | } 1647 | }, 1648 | "glob": { 1649 | "version": "7.1.6", 1650 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", 1651 | "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", 1652 | "dev": true, 1653 | "requires": { 1654 | "fs.realpath": "^1.0.0", 1655 | "inflight": "^1.0.4", 1656 | "inherits": "2", 1657 | "minimatch": "^3.0.4", 1658 | "once": "^1.3.0", 1659 | "path-is-absolute": "^1.0.0" 1660 | } 1661 | }, 1662 | "glob-base": { 1663 | "version": "0.3.0", 1664 | "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", 1665 | "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", 1666 | "dev": true, 1667 | "requires": { 1668 | "glob-parent": "^2.0.0", 1669 | "is-glob": "^2.0.0" 1670 | } 1671 | }, 1672 | "glob-parent": { 1673 | "version": "2.0.0", 1674 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", 1675 | "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", 1676 | "dev": true, 1677 | "requires": { 1678 | "is-glob": "^2.0.0" 1679 | } 1680 | }, 1681 | "glob2base": { 1682 | "version": "0.0.12", 1683 | "resolved": "https://registry.npmjs.org/glob2base/-/glob2base-0.0.12.tgz", 1684 | "integrity": "sha1-nUGbPijxLoOjYhZKJ3BVkiycDVY=", 1685 | "dev": true, 1686 | "requires": { 1687 | "find-index": "^0.1.1" 1688 | } 1689 | }, 1690 | "globals": { 1691 | "version": "9.18.0", 1692 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", 1693 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", 1694 | "dev": true 1695 | }, 1696 | "graceful-fs": { 1697 | "version": "4.2.4", 1698 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.4.tgz", 1699 | "integrity": "sha512-WjKPNJF79dtJAVniUlGGWHYGz2jWxT6VhN/4m1NdkbZ2nOsEF+cI1Edgql5zCRhs/VsQYRvrXctxktVXZUkixw==", 1700 | "dev": true 1701 | }, 1702 | "growly": { 1703 | "version": "1.3.0", 1704 | "resolved": "https://registry.npmjs.org/growly/-/growly-1.3.0.tgz", 1705 | "integrity": "sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE=", 1706 | "dev": true 1707 | }, 1708 | "handlebars": { 1709 | "version": "4.7.6", 1710 | "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", 1711 | "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", 1712 | "dev": true, 1713 | "requires": { 1714 | "minimist": "^1.2.5", 1715 | "neo-async": "^2.6.0", 1716 | "source-map": "^0.6.1", 1717 | "uglify-js": "^3.1.4", 1718 | "wordwrap": "^1.0.0" 1719 | }, 1720 | "dependencies": { 1721 | "source-map": { 1722 | "version": "0.6.1", 1723 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 1724 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 1725 | "dev": true 1726 | } 1727 | } 1728 | }, 1729 | "har-schema": { 1730 | "version": "2.0.0", 1731 | "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", 1732 | "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", 1733 | "dev": true 1734 | }, 1735 | "har-validator": { 1736 | "version": "5.1.5", 1737 | "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", 1738 | "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", 1739 | "dev": true, 1740 | "requires": { 1741 | "ajv": "^6.12.3", 1742 | "har-schema": "^2.0.0" 1743 | } 1744 | }, 1745 | "has": { 1746 | "version": "1.0.3", 1747 | "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", 1748 | "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", 1749 | "dev": true, 1750 | "requires": { 1751 | "function-bind": "^1.1.1" 1752 | } 1753 | }, 1754 | "has-ansi": { 1755 | "version": "2.0.0", 1756 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", 1757 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", 1758 | "dev": true, 1759 | "requires": { 1760 | "ansi-regex": "^2.0.0" 1761 | } 1762 | }, 1763 | "has-flag": { 1764 | "version": "3.0.0", 1765 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 1766 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 1767 | "dev": true 1768 | }, 1769 | "has-value": { 1770 | "version": "1.0.0", 1771 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz", 1772 | "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", 1773 | "dev": true, 1774 | "requires": { 1775 | "get-value": "^2.0.6", 1776 | "has-values": "^1.0.0", 1777 | "isobject": "^3.0.0" 1778 | }, 1779 | "dependencies": { 1780 | "isobject": { 1781 | "version": "3.0.1", 1782 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 1783 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 1784 | "dev": true 1785 | } 1786 | } 1787 | }, 1788 | "has-values": { 1789 | "version": "1.0.0", 1790 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz", 1791 | "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", 1792 | "dev": true, 1793 | "requires": { 1794 | "is-number": "^3.0.0", 1795 | "kind-of": "^4.0.0" 1796 | }, 1797 | "dependencies": { 1798 | "is-number": { 1799 | "version": "3.0.0", 1800 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 1801 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 1802 | "dev": true, 1803 | "requires": { 1804 | "kind-of": "^3.0.2" 1805 | }, 1806 | "dependencies": { 1807 | "kind-of": { 1808 | "version": "3.2.2", 1809 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 1810 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 1811 | "dev": true, 1812 | "requires": { 1813 | "is-buffer": "^1.1.5" 1814 | } 1815 | } 1816 | } 1817 | }, 1818 | "kind-of": { 1819 | "version": "4.0.0", 1820 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", 1821 | "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", 1822 | "dev": true, 1823 | "requires": { 1824 | "is-buffer": "^1.1.5" 1825 | } 1826 | } 1827 | } 1828 | }, 1829 | "home-or-tmp": { 1830 | "version": "2.0.0", 1831 | "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", 1832 | "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", 1833 | "dev": true, 1834 | "requires": { 1835 | "os-homedir": "^1.0.0", 1836 | "os-tmpdir": "^1.0.1" 1837 | } 1838 | }, 1839 | "hosted-git-info": { 1840 | "version": "2.8.8", 1841 | "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", 1842 | "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", 1843 | "dev": true 1844 | }, 1845 | "html-encoding-sniffer": { 1846 | "version": "1.0.2", 1847 | "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz", 1848 | "integrity": "sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw==", 1849 | "dev": true, 1850 | "requires": { 1851 | "whatwg-encoding": "^1.0.1" 1852 | } 1853 | }, 1854 | "http-signature": { 1855 | "version": "1.2.0", 1856 | "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", 1857 | "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", 1858 | "dev": true, 1859 | "requires": { 1860 | "assert-plus": "^1.0.0", 1861 | "jsprim": "^1.2.2", 1862 | "sshpk": "^1.7.0" 1863 | } 1864 | }, 1865 | "iconv-lite": { 1866 | "version": "0.4.24", 1867 | "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", 1868 | "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", 1869 | "dev": true, 1870 | "requires": { 1871 | "safer-buffer": ">= 2.1.2 < 3" 1872 | } 1873 | }, 1874 | "imurmurhash": { 1875 | "version": "0.1.4", 1876 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1877 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1878 | "dev": true 1879 | }, 1880 | "inflight": { 1881 | "version": "1.0.6", 1882 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1883 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1884 | "dev": true, 1885 | "requires": { 1886 | "once": "^1.3.0", 1887 | "wrappy": "1" 1888 | } 1889 | }, 1890 | "inherits": { 1891 | "version": "2.0.4", 1892 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1893 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1894 | "dev": true 1895 | }, 1896 | "invariant": { 1897 | "version": "2.2.4", 1898 | "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", 1899 | "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", 1900 | "dev": true, 1901 | "requires": { 1902 | "loose-envify": "^1.0.0" 1903 | } 1904 | }, 1905 | "invert-kv": { 1906 | "version": "1.0.0", 1907 | "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz", 1908 | "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=", 1909 | "dev": true 1910 | }, 1911 | "is-accessor-descriptor": { 1912 | "version": "0.1.6", 1913 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 1914 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 1915 | "dev": true, 1916 | "requires": { 1917 | "kind-of": "^3.0.2" 1918 | } 1919 | }, 1920 | "is-arrayish": { 1921 | "version": "0.2.1", 1922 | "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", 1923 | "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", 1924 | "dev": true 1925 | }, 1926 | "is-binary-path": { 1927 | "version": "1.0.1", 1928 | "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", 1929 | "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", 1930 | "dev": true, 1931 | "requires": { 1932 | "binary-extensions": "^1.0.0" 1933 | } 1934 | }, 1935 | "is-buffer": { 1936 | "version": "1.1.6", 1937 | "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz", 1938 | "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", 1939 | "dev": true 1940 | }, 1941 | "is-builtin-module": { 1942 | "version": "1.0.0", 1943 | "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz", 1944 | "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", 1945 | "dev": true, 1946 | "requires": { 1947 | "builtin-modules": "^1.0.0" 1948 | } 1949 | }, 1950 | "is-ci": { 1951 | "version": "1.2.1", 1952 | "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz", 1953 | "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==", 1954 | "dev": true, 1955 | "requires": { 1956 | "ci-info": "^1.5.0" 1957 | } 1958 | }, 1959 | "is-core-module": { 1960 | "version": "2.2.0", 1961 | "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", 1962 | "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", 1963 | "dev": true, 1964 | "requires": { 1965 | "has": "^1.0.3" 1966 | } 1967 | }, 1968 | "is-data-descriptor": { 1969 | "version": "0.1.4", 1970 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 1971 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 1972 | "dev": true, 1973 | "requires": { 1974 | "kind-of": "^3.0.2" 1975 | } 1976 | }, 1977 | "is-descriptor": { 1978 | "version": "0.1.6", 1979 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 1980 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 1981 | "dev": true, 1982 | "requires": { 1983 | "is-accessor-descriptor": "^0.1.6", 1984 | "is-data-descriptor": "^0.1.4", 1985 | "kind-of": "^5.0.0" 1986 | }, 1987 | "dependencies": { 1988 | "kind-of": { 1989 | "version": "5.1.0", 1990 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 1991 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 1992 | "dev": true 1993 | } 1994 | } 1995 | }, 1996 | "is-dotfile": { 1997 | "version": "1.0.3", 1998 | "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", 1999 | "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", 2000 | "dev": true 2001 | }, 2002 | "is-equal-shallow": { 2003 | "version": "0.1.3", 2004 | "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", 2005 | "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", 2006 | "dev": true, 2007 | "requires": { 2008 | "is-primitive": "^2.0.0" 2009 | } 2010 | }, 2011 | "is-extendable": { 2012 | "version": "0.1.1", 2013 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", 2014 | "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", 2015 | "dev": true 2016 | }, 2017 | "is-extglob": { 2018 | "version": "1.0.0", 2019 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", 2020 | "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", 2021 | "dev": true 2022 | }, 2023 | "is-finite": { 2024 | "version": "1.1.0", 2025 | "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz", 2026 | "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==", 2027 | "dev": true 2028 | }, 2029 | "is-fullwidth-code-point": { 2030 | "version": "1.0.0", 2031 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", 2032 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", 2033 | "dev": true, 2034 | "requires": { 2035 | "number-is-nan": "^1.0.0" 2036 | } 2037 | }, 2038 | "is-glob": { 2039 | "version": "2.0.1", 2040 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", 2041 | "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", 2042 | "dev": true, 2043 | "requires": { 2044 | "is-extglob": "^1.0.0" 2045 | } 2046 | }, 2047 | "is-number": { 2048 | "version": "2.1.0", 2049 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", 2050 | "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", 2051 | "dev": true, 2052 | "requires": { 2053 | "kind-of": "^3.0.2" 2054 | } 2055 | }, 2056 | "is-plain-object": { 2057 | "version": "2.0.4", 2058 | "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", 2059 | "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", 2060 | "dev": true, 2061 | "requires": { 2062 | "isobject": "^3.0.1" 2063 | }, 2064 | "dependencies": { 2065 | "isobject": { 2066 | "version": "3.0.1", 2067 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 2068 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 2069 | "dev": true 2070 | } 2071 | } 2072 | }, 2073 | "is-posix-bracket": { 2074 | "version": "0.1.1", 2075 | "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", 2076 | "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", 2077 | "dev": true 2078 | }, 2079 | "is-primitive": { 2080 | "version": "2.0.0", 2081 | "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", 2082 | "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", 2083 | "dev": true 2084 | }, 2085 | "is-stream": { 2086 | "version": "1.1.0", 2087 | "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", 2088 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", 2089 | "dev": true 2090 | }, 2091 | "is-typedarray": { 2092 | "version": "1.0.0", 2093 | "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", 2094 | "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", 2095 | "dev": true 2096 | }, 2097 | "is-utf8": { 2098 | "version": "0.2.1", 2099 | "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", 2100 | "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", 2101 | "dev": true 2102 | }, 2103 | "is-windows": { 2104 | "version": "1.0.2", 2105 | "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", 2106 | "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", 2107 | "dev": true 2108 | }, 2109 | "is-wsl": { 2110 | "version": "1.1.0", 2111 | "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", 2112 | "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", 2113 | "dev": true 2114 | }, 2115 | "isarray": { 2116 | "version": "1.0.0", 2117 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", 2118 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", 2119 | "dev": true 2120 | }, 2121 | "isexe": { 2122 | "version": "2.0.0", 2123 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 2124 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 2125 | "dev": true 2126 | }, 2127 | "isobject": { 2128 | "version": "2.1.0", 2129 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 2130 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 2131 | "dev": true, 2132 | "requires": { 2133 | "isarray": "1.0.0" 2134 | } 2135 | }, 2136 | "isstream": { 2137 | "version": "0.1.2", 2138 | "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", 2139 | "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", 2140 | "dev": true 2141 | }, 2142 | "istanbul-api": { 2143 | "version": "1.3.7", 2144 | "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.7.tgz", 2145 | "integrity": "sha512-4/ApBnMVeEPG3EkSzcw25wDe4N66wxwn+KKn6b47vyek8Xb3NBAcg4xfuQbS7BqcZuTX4wxfD5lVagdggR3gyA==", 2146 | "dev": true, 2147 | "requires": { 2148 | "async": "^2.1.4", 2149 | "fileset": "^2.0.2", 2150 | "istanbul-lib-coverage": "^1.2.1", 2151 | "istanbul-lib-hook": "^1.2.2", 2152 | "istanbul-lib-instrument": "^1.10.2", 2153 | "istanbul-lib-report": "^1.1.5", 2154 | "istanbul-lib-source-maps": "^1.2.6", 2155 | "istanbul-reports": "^1.5.1", 2156 | "js-yaml": "^3.7.0", 2157 | "mkdirp": "^0.5.1", 2158 | "once": "^1.4.0" 2159 | } 2160 | }, 2161 | "istanbul-lib-coverage": { 2162 | "version": "1.2.1", 2163 | "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-1.2.1.tgz", 2164 | "integrity": "sha512-PzITeunAgyGbtY1ibVIUiV679EFChHjoMNRibEIobvmrCRaIgwLxNucOSimtNWUhEib/oO7QY2imD75JVgCJWQ==", 2165 | "dev": true 2166 | }, 2167 | "istanbul-lib-hook": { 2168 | "version": "1.2.2", 2169 | "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.2.tgz", 2170 | "integrity": "sha512-/Jmq7Y1VeHnZEQ3TL10VHyb564mn6VrQXHchON9Jf/AEcmQ3ZIiyD1BVzNOKTZf/G3gE+kiGK6SmpF9y3qGPLw==", 2171 | "dev": true, 2172 | "requires": { 2173 | "append-transform": "^0.4.0" 2174 | } 2175 | }, 2176 | "istanbul-lib-instrument": { 2177 | "version": "1.10.2", 2178 | "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-1.10.2.tgz", 2179 | "integrity": "sha512-aWHxfxDqvh/ZlxR8BBaEPVSWDPUkGD63VjGQn3jcw8jCp7sHEMKcrj4xfJn/ABzdMEHiQNyvDQhqm5o8+SQg7A==", 2180 | "dev": true, 2181 | "requires": { 2182 | "babel-generator": "^6.18.0", 2183 | "babel-template": "^6.16.0", 2184 | "babel-traverse": "^6.18.0", 2185 | "babel-types": "^6.18.0", 2186 | "babylon": "^6.18.0", 2187 | "istanbul-lib-coverage": "^1.2.1", 2188 | "semver": "^5.3.0" 2189 | } 2190 | }, 2191 | "istanbul-lib-report": { 2192 | "version": "1.1.5", 2193 | "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.5.tgz", 2194 | "integrity": "sha512-UsYfRMoi6QO/doUshYNqcKJqVmFe9w51GZz8BS3WB0lYxAllQYklka2wP9+dGZeHYaWIdcXUx8JGdbqaoXRXzw==", 2195 | "dev": true, 2196 | "requires": { 2197 | "istanbul-lib-coverage": "^1.2.1", 2198 | "mkdirp": "^0.5.1", 2199 | "path-parse": "^1.0.5", 2200 | "supports-color": "^3.1.2" 2201 | }, 2202 | "dependencies": { 2203 | "has-flag": { 2204 | "version": "1.0.0", 2205 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", 2206 | "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", 2207 | "dev": true 2208 | }, 2209 | "supports-color": { 2210 | "version": "3.2.3", 2211 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", 2212 | "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", 2213 | "dev": true, 2214 | "requires": { 2215 | "has-flag": "^1.0.0" 2216 | } 2217 | } 2218 | } 2219 | }, 2220 | "istanbul-lib-source-maps": { 2221 | "version": "1.2.6", 2222 | "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.6.tgz", 2223 | "integrity": "sha512-TtbsY5GIHgbMsMiRw35YBHGpZ1DVFEO19vxxeiDMYaeOFOCzfnYVxvl6pOUIZR4dtPhAGpSMup8OyF8ubsaqEg==", 2224 | "dev": true, 2225 | "requires": { 2226 | "debug": "^3.1.0", 2227 | "istanbul-lib-coverage": "^1.2.1", 2228 | "mkdirp": "^0.5.1", 2229 | "rimraf": "^2.6.1", 2230 | "source-map": "^0.5.3" 2231 | }, 2232 | "dependencies": { 2233 | "debug": { 2234 | "version": "3.2.7", 2235 | "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 2236 | "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 2237 | "dev": true, 2238 | "requires": { 2239 | "ms": "^2.1.1" 2240 | } 2241 | }, 2242 | "ms": { 2243 | "version": "2.1.2", 2244 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 2245 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 2246 | "dev": true 2247 | } 2248 | } 2249 | }, 2250 | "istanbul-reports": { 2251 | "version": "1.5.1", 2252 | "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.5.1.tgz", 2253 | "integrity": "sha512-+cfoZ0UXzWjhAdzosCPP3AN8vvef8XDkWtTfgaN+7L3YTpNYITnCaEkceo5SEYy644VkHka/P1FvkWvrG/rrJw==", 2254 | "dev": true, 2255 | "requires": { 2256 | "handlebars": "^4.0.3" 2257 | } 2258 | }, 2259 | "jest": { 2260 | "version": "21.2.1", 2261 | "resolved": "https://registry.npmjs.org/jest/-/jest-21.2.1.tgz", 2262 | "integrity": "sha512-mXN0ppPvWYoIcC+R+ctKxAJ28xkt/Z5Js875padm4GbgUn6baeR5N4Ng6LjatIRpUQDZVJABT7Y4gucFjPryfw==", 2263 | "dev": true, 2264 | "requires": { 2265 | "jest-cli": "^21.2.1" 2266 | }, 2267 | "dependencies": { 2268 | "jest-cli": { 2269 | "version": "21.2.1", 2270 | "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-21.2.1.tgz", 2271 | "integrity": "sha512-T1BzrbFxDIW/LLYQqVfo94y/hhaj1NzVQkZgBumAC+sxbjMROI7VkihOdxNR758iYbQykL2ZOWUBurFgkQrzdg==", 2272 | "dev": true, 2273 | "requires": { 2274 | "ansi-escapes": "^3.0.0", 2275 | "chalk": "^2.0.1", 2276 | "glob": "^7.1.2", 2277 | "graceful-fs": "^4.1.11", 2278 | "is-ci": "^1.0.10", 2279 | "istanbul-api": "^1.1.1", 2280 | "istanbul-lib-coverage": "^1.0.1", 2281 | "istanbul-lib-instrument": "^1.4.2", 2282 | "istanbul-lib-source-maps": "^1.1.0", 2283 | "jest-changed-files": "^21.2.0", 2284 | "jest-config": "^21.2.1", 2285 | "jest-environment-jsdom": "^21.2.1", 2286 | "jest-haste-map": "^21.2.0", 2287 | "jest-message-util": "^21.2.1", 2288 | "jest-regex-util": "^21.2.0", 2289 | "jest-resolve-dependencies": "^21.2.0", 2290 | "jest-runner": "^21.2.1", 2291 | "jest-runtime": "^21.2.1", 2292 | "jest-snapshot": "^21.2.1", 2293 | "jest-util": "^21.2.1", 2294 | "micromatch": "^2.3.11", 2295 | "node-notifier": "^5.0.2", 2296 | "pify": "^3.0.0", 2297 | "slash": "^1.0.0", 2298 | "string-length": "^2.0.0", 2299 | "strip-ansi": "^4.0.0", 2300 | "which": "^1.2.12", 2301 | "worker-farm": "^1.3.1", 2302 | "yargs": "^9.0.0" 2303 | } 2304 | } 2305 | } 2306 | }, 2307 | "jest-changed-files": { 2308 | "version": "21.2.0", 2309 | "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-21.2.0.tgz", 2310 | "integrity": "sha512-+lCNP1IZLwN1NOIvBcV5zEL6GENK6TXrDj4UxWIeLvIsIDa+gf6J7hkqsW2qVVt/wvH65rVvcPwqXdps5eclTQ==", 2311 | "dev": true, 2312 | "requires": { 2313 | "throat": "^4.0.0" 2314 | } 2315 | }, 2316 | "jest-config": { 2317 | "version": "21.2.1", 2318 | "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-21.2.1.tgz", 2319 | "integrity": "sha512-fJru5HtlD/5l2o25eY9xT0doK3t2dlglrqoGpbktduyoI0T5CwuB++2YfoNZCrgZipTwPuAGonYv0q7+8yDc/A==", 2320 | "dev": true, 2321 | "requires": { 2322 | "chalk": "^2.0.1", 2323 | "glob": "^7.1.1", 2324 | "jest-environment-jsdom": "^21.2.1", 2325 | "jest-environment-node": "^21.2.1", 2326 | "jest-get-type": "^21.2.0", 2327 | "jest-jasmine2": "^21.2.1", 2328 | "jest-regex-util": "^21.2.0", 2329 | "jest-resolve": "^21.2.0", 2330 | "jest-util": "^21.2.1", 2331 | "jest-validate": "^21.2.1", 2332 | "pretty-format": "^21.2.1" 2333 | } 2334 | }, 2335 | "jest-diff": { 2336 | "version": "21.2.1", 2337 | "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-21.2.1.tgz", 2338 | "integrity": "sha512-E5fu6r7PvvPr5qAWE1RaUwIh/k6Zx/3OOkZ4rk5dBJkEWRrUuSgbMt2EO8IUTPTd6DOqU3LW6uTIwX5FRvXoFA==", 2339 | "dev": true, 2340 | "requires": { 2341 | "chalk": "^2.0.1", 2342 | "diff": "^3.2.0", 2343 | "jest-get-type": "^21.2.0", 2344 | "pretty-format": "^21.2.1" 2345 | } 2346 | }, 2347 | "jest-docblock": { 2348 | "version": "21.2.0", 2349 | "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-21.2.0.tgz", 2350 | "integrity": "sha512-5IZ7sY9dBAYSV+YjQ0Ovb540Ku7AO9Z5o2Cg789xj167iQuZ2cG+z0f3Uct6WeYLbU6aQiM2pCs7sZ+4dotydw==", 2351 | "dev": true 2352 | }, 2353 | "jest-environment-jsdom": { 2354 | "version": "21.2.1", 2355 | "resolved": "https://registry.npmjs.org/jest-environment-jsdom/-/jest-environment-jsdom-21.2.1.tgz", 2356 | "integrity": "sha512-mecaeNh0eWmzNrUNMWARysc0E9R96UPBamNiOCYL28k7mksb1d0q6DD38WKP7ABffjnXyUWJPVaWRgUOivwXwg==", 2357 | "dev": true, 2358 | "requires": { 2359 | "jest-mock": "^21.2.0", 2360 | "jest-util": "^21.2.1", 2361 | "jsdom": "^9.12.0" 2362 | } 2363 | }, 2364 | "jest-environment-node": { 2365 | "version": "21.2.1", 2366 | "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-21.2.1.tgz", 2367 | "integrity": "sha512-R211867wx9mVBVHzrjGRGTy5cd05K7eqzQl/WyZixR/VkJ4FayS8qkKXZyYnwZi6Rxo6WEV81cDbiUx/GfuLNw==", 2368 | "dev": true, 2369 | "requires": { 2370 | "jest-mock": "^21.2.0", 2371 | "jest-util": "^21.2.1" 2372 | } 2373 | }, 2374 | "jest-get-type": { 2375 | "version": "21.2.0", 2376 | "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-21.2.0.tgz", 2377 | "integrity": "sha512-y2fFw3C+D0yjNSDp7ab1kcd6NUYfy3waPTlD8yWkAtiocJdBRQqNoRqVfMNxgj+IjT0V5cBIHJO0z9vuSSZ43Q==", 2378 | "dev": true 2379 | }, 2380 | "jest-haste-map": { 2381 | "version": "21.2.0", 2382 | "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-21.2.0.tgz", 2383 | "integrity": "sha512-5LhsY/loPH7wwOFRMs+PT4aIAORJ2qwgbpMFlbWbxfN0bk3ZCwxJ530vrbSiTstMkYLao6JwBkLhCJ5XbY7ZHw==", 2384 | "dev": true, 2385 | "requires": { 2386 | "fb-watchman": "^2.0.0", 2387 | "graceful-fs": "^4.1.11", 2388 | "jest-docblock": "^21.2.0", 2389 | "micromatch": "^2.3.11", 2390 | "sane": "^2.0.0", 2391 | "worker-farm": "^1.3.1" 2392 | } 2393 | }, 2394 | "jest-jasmine2": { 2395 | "version": "21.2.1", 2396 | "resolved": "https://registry.npmjs.org/jest-jasmine2/-/jest-jasmine2-21.2.1.tgz", 2397 | "integrity": "sha512-lw8FXXIEekD+jYNlStfgNsUHpfMWhWWCgHV7n0B7mA/vendH7vBFs8xybjQsDzJSduptBZJHqQX9SMssya9+3A==", 2398 | "dev": true, 2399 | "requires": { 2400 | "chalk": "^2.0.1", 2401 | "expect": "^21.2.1", 2402 | "graceful-fs": "^4.1.11", 2403 | "jest-diff": "^21.2.1", 2404 | "jest-matcher-utils": "^21.2.1", 2405 | "jest-message-util": "^21.2.1", 2406 | "jest-snapshot": "^21.2.1", 2407 | "p-cancelable": "^0.3.0" 2408 | } 2409 | }, 2410 | "jest-matcher-utils": { 2411 | "version": "21.2.1", 2412 | "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-21.2.1.tgz", 2413 | "integrity": "sha512-kn56My+sekD43dwQPrXBl9Zn9tAqwoy25xxe7/iY4u+mG8P3ALj5IK7MLHZ4Mi3xW7uWVCjGY8cm4PqgbsqMCg==", 2414 | "dev": true, 2415 | "requires": { 2416 | "chalk": "^2.0.1", 2417 | "jest-get-type": "^21.2.0", 2418 | "pretty-format": "^21.2.1" 2419 | } 2420 | }, 2421 | "jest-message-util": { 2422 | "version": "21.2.1", 2423 | "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-21.2.1.tgz", 2424 | "integrity": "sha512-EbC1X2n0t9IdeMECJn2BOg7buOGivCvVNjqKMXTzQOu7uIfLml+keUfCALDh8o4rbtndIeyGU8/BKfoTr/LVDQ==", 2425 | "dev": true, 2426 | "requires": { 2427 | "chalk": "^2.0.1", 2428 | "micromatch": "^2.3.11", 2429 | "slash": "^1.0.0" 2430 | } 2431 | }, 2432 | "jest-mock": { 2433 | "version": "21.2.0", 2434 | "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-21.2.0.tgz", 2435 | "integrity": "sha512-aZDfyVf0LEoABWiY6N0d+O963dUQSyUa4qgzurHR3TBDPen0YxKCJ6l2i7lQGh1tVdsuvdrCZ4qPj+A7PievCw==", 2436 | "dev": true 2437 | }, 2438 | "jest-regex-util": { 2439 | "version": "21.2.0", 2440 | "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-21.2.0.tgz", 2441 | "integrity": "sha512-BKQ1F83EQy0d9Jen/mcVX7D+lUt2tthhK/2gDWRgLDJRNOdRgSp1iVqFxP8EN1ARuypvDflRfPzYT8fQnoBQFQ==", 2442 | "dev": true 2443 | }, 2444 | "jest-resolve": { 2445 | "version": "21.2.0", 2446 | "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-21.2.0.tgz", 2447 | "integrity": "sha512-vefQ/Lr+VdNvHUZFQXWtOqHX3HEdOc2MtSahBO89qXywEbUxGPB9ZLP9+BHinkxb60UT2Q/tTDOS6rYc6Mwigw==", 2448 | "dev": true, 2449 | "requires": { 2450 | "browser-resolve": "^1.11.2", 2451 | "chalk": "^2.0.1", 2452 | "is-builtin-module": "^1.0.0" 2453 | } 2454 | }, 2455 | "jest-resolve-dependencies": { 2456 | "version": "21.2.0", 2457 | "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-21.2.0.tgz", 2458 | "integrity": "sha512-ok8ybRFU5ScaAcfufIQrCbdNJSRZ85mkxJ1EhUp8Bhav1W1/jv/rl1Q6QoVQHObNxmKnbHVKrfLZbCbOsXQ+bQ==", 2459 | "dev": true, 2460 | "requires": { 2461 | "jest-regex-util": "^21.2.0" 2462 | } 2463 | }, 2464 | "jest-runner": { 2465 | "version": "21.2.1", 2466 | "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-21.2.1.tgz", 2467 | "integrity": "sha512-Anb72BOQlHqF/zETqZ2K20dbYsnqW/nZO7jV8BYENl+3c44JhMrA8zd1lt52+N7ErnsQMd2HHKiVwN9GYSXmrg==", 2468 | "dev": true, 2469 | "requires": { 2470 | "jest-config": "^21.2.1", 2471 | "jest-docblock": "^21.2.0", 2472 | "jest-haste-map": "^21.2.0", 2473 | "jest-jasmine2": "^21.2.1", 2474 | "jest-message-util": "^21.2.1", 2475 | "jest-runtime": "^21.2.1", 2476 | "jest-util": "^21.2.1", 2477 | "pify": "^3.0.0", 2478 | "throat": "^4.0.0", 2479 | "worker-farm": "^1.3.1" 2480 | } 2481 | }, 2482 | "jest-runtime": { 2483 | "version": "21.2.1", 2484 | "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-21.2.1.tgz", 2485 | "integrity": "sha512-6omlpA3+NSE+rHwD0PQjNEjZeb2z+oRmuehMfM1tWQVum+E0WV3pFt26Am0DUfQkkPyTABvxITRjCUclYgSOsA==", 2486 | "dev": true, 2487 | "requires": { 2488 | "babel-core": "^6.0.0", 2489 | "babel-jest": "^21.2.0", 2490 | "babel-plugin-istanbul": "^4.0.0", 2491 | "chalk": "^2.0.1", 2492 | "convert-source-map": "^1.4.0", 2493 | "graceful-fs": "^4.1.11", 2494 | "jest-config": "^21.2.1", 2495 | "jest-haste-map": "^21.2.0", 2496 | "jest-regex-util": "^21.2.0", 2497 | "jest-resolve": "^21.2.0", 2498 | "jest-util": "^21.2.1", 2499 | "json-stable-stringify": "^1.0.1", 2500 | "micromatch": "^2.3.11", 2501 | "slash": "^1.0.0", 2502 | "strip-bom": "3.0.0", 2503 | "write-file-atomic": "^2.1.0", 2504 | "yargs": "^9.0.0" 2505 | }, 2506 | "dependencies": { 2507 | "strip-bom": { 2508 | "version": "3.0.0", 2509 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 2510 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 2511 | "dev": true 2512 | } 2513 | } 2514 | }, 2515 | "jest-snapshot": { 2516 | "version": "21.2.1", 2517 | "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-21.2.1.tgz", 2518 | "integrity": "sha512-bpaeBnDpdqaRTzN8tWg0DqOTo2DvD3StOemxn67CUd1p1Po+BUpvePAp44jdJ7Pxcjfg+42o4NHw1SxdCA2rvg==", 2519 | "dev": true, 2520 | "requires": { 2521 | "chalk": "^2.0.1", 2522 | "jest-diff": "^21.2.1", 2523 | "jest-matcher-utils": "^21.2.1", 2524 | "mkdirp": "^0.5.1", 2525 | "natural-compare": "^1.4.0", 2526 | "pretty-format": "^21.2.1" 2527 | } 2528 | }, 2529 | "jest-util": { 2530 | "version": "21.2.1", 2531 | "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-21.2.1.tgz", 2532 | "integrity": "sha512-r20W91rmHY3fnCoO7aOAlyfC51x2yeV3xF+prGsJAUsYhKeV670ZB8NO88Lwm7ASu8SdH0S+U+eFf498kjhA4g==", 2533 | "dev": true, 2534 | "requires": { 2535 | "callsites": "^2.0.0", 2536 | "chalk": "^2.0.1", 2537 | "graceful-fs": "^4.1.11", 2538 | "jest-message-util": "^21.2.1", 2539 | "jest-mock": "^21.2.0", 2540 | "jest-validate": "^21.2.1", 2541 | "mkdirp": "^0.5.1" 2542 | } 2543 | }, 2544 | "jest-validate": { 2545 | "version": "21.2.1", 2546 | "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-21.2.1.tgz", 2547 | "integrity": "sha512-k4HLI1rZQjlU+EC682RlQ6oZvLrE5SCh3brseQc24vbZTxzT/k/3urar5QMCVgjadmSO7lECeGdc6YxnM3yEGg==", 2548 | "dev": true, 2549 | "requires": { 2550 | "chalk": "^2.0.1", 2551 | "jest-get-type": "^21.2.0", 2552 | "leven": "^2.1.0", 2553 | "pretty-format": "^21.2.1" 2554 | } 2555 | }, 2556 | "js-tokens": { 2557 | "version": "3.0.2", 2558 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", 2559 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", 2560 | "dev": true 2561 | }, 2562 | "js-yaml": { 2563 | "version": "3.14.0", 2564 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.0.tgz", 2565 | "integrity": "sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A==", 2566 | "dev": true, 2567 | "requires": { 2568 | "argparse": "^1.0.7", 2569 | "esprima": "^4.0.0" 2570 | } 2571 | }, 2572 | "jsbn": { 2573 | "version": "0.1.1", 2574 | "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", 2575 | "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", 2576 | "dev": true 2577 | }, 2578 | "jsdom": { 2579 | "version": "9.12.0", 2580 | "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-9.12.0.tgz", 2581 | "integrity": "sha1-6MVG//ywbADUgzyoRBD+1/igl9Q=", 2582 | "dev": true, 2583 | "requires": { 2584 | "abab": "^1.0.3", 2585 | "acorn": "^4.0.4", 2586 | "acorn-globals": "^3.1.0", 2587 | "array-equal": "^1.0.0", 2588 | "content-type-parser": "^1.0.1", 2589 | "cssom": ">= 0.3.2 < 0.4.0", 2590 | "cssstyle": ">= 0.2.37 < 0.3.0", 2591 | "escodegen": "^1.6.1", 2592 | "html-encoding-sniffer": "^1.0.1", 2593 | "nwmatcher": ">= 1.3.9 < 2.0.0", 2594 | "parse5": "^1.5.1", 2595 | "request": "^2.79.0", 2596 | "sax": "^1.2.1", 2597 | "symbol-tree": "^3.2.1", 2598 | "tough-cookie": "^2.3.2", 2599 | "webidl-conversions": "^4.0.0", 2600 | "whatwg-encoding": "^1.0.1", 2601 | "whatwg-url": "^4.3.0", 2602 | "xml-name-validator": "^2.0.1" 2603 | } 2604 | }, 2605 | "jsesc": { 2606 | "version": "1.3.0", 2607 | "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", 2608 | "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", 2609 | "dev": true 2610 | }, 2611 | "json-schema": { 2612 | "version": "0.2.3", 2613 | "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", 2614 | "integrity": "sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM=", 2615 | "dev": true 2616 | }, 2617 | "json-schema-traverse": { 2618 | "version": "0.4.1", 2619 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 2620 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 2621 | "dev": true 2622 | }, 2623 | "json-stable-stringify": { 2624 | "version": "1.0.1", 2625 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", 2626 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", 2627 | "dev": true, 2628 | "requires": { 2629 | "jsonify": "~0.0.0" 2630 | } 2631 | }, 2632 | "json-stringify-safe": { 2633 | "version": "5.0.1", 2634 | "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", 2635 | "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=", 2636 | "dev": true 2637 | }, 2638 | "json5": { 2639 | "version": "0.5.1", 2640 | "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", 2641 | "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", 2642 | "dev": true 2643 | }, 2644 | "jsonfile": { 2645 | "version": "4.0.0", 2646 | "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", 2647 | "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", 2648 | "dev": true, 2649 | "requires": { 2650 | "graceful-fs": "^4.1.6" 2651 | } 2652 | }, 2653 | "jsonify": { 2654 | "version": "0.0.0", 2655 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", 2656 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", 2657 | "dev": true 2658 | }, 2659 | "jsprim": { 2660 | "version": "1.4.1", 2661 | "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", 2662 | "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", 2663 | "dev": true, 2664 | "requires": { 2665 | "assert-plus": "1.0.0", 2666 | "extsprintf": "1.3.0", 2667 | "json-schema": "0.2.3", 2668 | "verror": "1.10.0" 2669 | } 2670 | }, 2671 | "kind-of": { 2672 | "version": "3.2.2", 2673 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 2674 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 2675 | "dev": true, 2676 | "requires": { 2677 | "is-buffer": "^1.1.5" 2678 | } 2679 | }, 2680 | "lcid": { 2681 | "version": "1.0.0", 2682 | "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", 2683 | "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", 2684 | "dev": true, 2685 | "requires": { 2686 | "invert-kv": "^1.0.0" 2687 | } 2688 | }, 2689 | "leven": { 2690 | "version": "2.1.0", 2691 | "resolved": "https://registry.npmjs.org/leven/-/leven-2.1.0.tgz", 2692 | "integrity": "sha1-wuep93IJTe6dNCAq6KzORoeHVYA=", 2693 | "dev": true 2694 | }, 2695 | "levn": { 2696 | "version": "0.3.0", 2697 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", 2698 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", 2699 | "dev": true, 2700 | "requires": { 2701 | "prelude-ls": "~1.1.2", 2702 | "type-check": "~0.3.2" 2703 | } 2704 | }, 2705 | "load-json-file": { 2706 | "version": "1.1.0", 2707 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", 2708 | "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", 2709 | "dev": true, 2710 | "requires": { 2711 | "graceful-fs": "^4.1.2", 2712 | "parse-json": "^2.2.0", 2713 | "pify": "^2.0.0", 2714 | "pinkie-promise": "^2.0.0", 2715 | "strip-bom": "^2.0.0" 2716 | }, 2717 | "dependencies": { 2718 | "pify": { 2719 | "version": "2.3.0", 2720 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 2721 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 2722 | "dev": true 2723 | } 2724 | } 2725 | }, 2726 | "locate-path": { 2727 | "version": "2.0.0", 2728 | "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", 2729 | "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", 2730 | "dev": true, 2731 | "requires": { 2732 | "p-locate": "^2.0.0", 2733 | "path-exists": "^3.0.0" 2734 | } 2735 | }, 2736 | "lodash": { 2737 | "version": "4.17.20", 2738 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", 2739 | "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", 2740 | "dev": true 2741 | }, 2742 | "loose-envify": { 2743 | "version": "1.4.0", 2744 | "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", 2745 | "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", 2746 | "dev": true, 2747 | "requires": { 2748 | "js-tokens": "^3.0.0 || ^4.0.0" 2749 | } 2750 | }, 2751 | "lru-cache": { 2752 | "version": "4.1.5", 2753 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", 2754 | "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", 2755 | "dev": true, 2756 | "requires": { 2757 | "pseudomap": "^1.0.2", 2758 | "yallist": "^2.1.2" 2759 | } 2760 | }, 2761 | "makeerror": { 2762 | "version": "1.0.11", 2763 | "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.11.tgz", 2764 | "integrity": "sha1-4BpckQnyr3lmDk6LlYd5AYT1qWw=", 2765 | "dev": true, 2766 | "requires": { 2767 | "tmpl": "1.0.x" 2768 | } 2769 | }, 2770 | "map-cache": { 2771 | "version": "0.2.2", 2772 | "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", 2773 | "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=", 2774 | "dev": true 2775 | }, 2776 | "map-visit": { 2777 | "version": "1.0.0", 2778 | "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", 2779 | "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", 2780 | "dev": true, 2781 | "requires": { 2782 | "object-visit": "^1.0.0" 2783 | } 2784 | }, 2785 | "math-random": { 2786 | "version": "1.0.4", 2787 | "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.4.tgz", 2788 | "integrity": "sha512-rUxjysqif/BZQH2yhd5Aaq7vXMSx9NdEsQcyA07uEzIvxgI7zIr33gGsh+RU0/XjmQpCW7RsVof1vlkvQVCK5A==", 2789 | "dev": true 2790 | }, 2791 | "mem": { 2792 | "version": "1.1.0", 2793 | "resolved": "https://registry.npmjs.org/mem/-/mem-1.1.0.tgz", 2794 | "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", 2795 | "dev": true, 2796 | "requires": { 2797 | "mimic-fn": "^1.0.0" 2798 | } 2799 | }, 2800 | "merge": { 2801 | "version": "1.2.1", 2802 | "resolved": "https://registry.npmjs.org/merge/-/merge-1.2.1.tgz", 2803 | "integrity": "sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ==", 2804 | "dev": true 2805 | }, 2806 | "micromatch": { 2807 | "version": "2.3.11", 2808 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", 2809 | "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", 2810 | "dev": true, 2811 | "requires": { 2812 | "arr-diff": "^2.0.0", 2813 | "array-unique": "^0.2.1", 2814 | "braces": "^1.8.2", 2815 | "expand-brackets": "^0.1.4", 2816 | "extglob": "^0.3.1", 2817 | "filename-regex": "^2.0.0", 2818 | "is-extglob": "^1.0.0", 2819 | "is-glob": "^2.0.1", 2820 | "kind-of": "^3.0.2", 2821 | "normalize-path": "^2.0.1", 2822 | "object.omit": "^2.0.0", 2823 | "parse-glob": "^3.0.4", 2824 | "regex-cache": "^0.4.2" 2825 | } 2826 | }, 2827 | "mime-db": { 2828 | "version": "1.44.0", 2829 | "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", 2830 | "integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==", 2831 | "dev": true 2832 | }, 2833 | "mime-types": { 2834 | "version": "2.1.27", 2835 | "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", 2836 | "integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", 2837 | "dev": true, 2838 | "requires": { 2839 | "mime-db": "1.44.0" 2840 | } 2841 | }, 2842 | "mimic-fn": { 2843 | "version": "1.2.0", 2844 | "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", 2845 | "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", 2846 | "dev": true 2847 | }, 2848 | "minimatch": { 2849 | "version": "3.0.4", 2850 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", 2851 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", 2852 | "dev": true, 2853 | "requires": { 2854 | "brace-expansion": "^1.1.7" 2855 | } 2856 | }, 2857 | "minimist": { 2858 | "version": "1.2.5", 2859 | "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", 2860 | "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", 2861 | "dev": true 2862 | }, 2863 | "mixin-deep": { 2864 | "version": "1.3.2", 2865 | "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", 2866 | "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", 2867 | "dev": true, 2868 | "requires": { 2869 | "for-in": "^1.0.2", 2870 | "is-extendable": "^1.0.1" 2871 | }, 2872 | "dependencies": { 2873 | "is-extendable": { 2874 | "version": "1.0.1", 2875 | "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz", 2876 | "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", 2877 | "dev": true, 2878 | "requires": { 2879 | "is-plain-object": "^2.0.4" 2880 | } 2881 | } 2882 | } 2883 | }, 2884 | "mkdirp": { 2885 | "version": "0.5.5", 2886 | "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz", 2887 | "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==", 2888 | "dev": true, 2889 | "requires": { 2890 | "minimist": "^1.2.5" 2891 | } 2892 | }, 2893 | "ms": { 2894 | "version": "2.0.0", 2895 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", 2896 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", 2897 | "dev": true 2898 | }, 2899 | "nan": { 2900 | "version": "2.14.2", 2901 | "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.2.tgz", 2902 | "integrity": "sha512-M2ufzIiINKCuDfBSAUr1vWQ+vuVcA9kqx8JJUsbQi6yf1uGRyb7HfpdfUr5qLXf3B/t8dPvcjhKMmlfnP47EzQ==", 2903 | "dev": true, 2904 | "optional": true 2905 | }, 2906 | "nanomatch": { 2907 | "version": "1.2.13", 2908 | "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", 2909 | "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", 2910 | "dev": true, 2911 | "requires": { 2912 | "arr-diff": "^4.0.0", 2913 | "array-unique": "^0.3.2", 2914 | "define-property": "^2.0.2", 2915 | "extend-shallow": "^3.0.2", 2916 | "fragment-cache": "^0.2.1", 2917 | "is-windows": "^1.0.2", 2918 | "kind-of": "^6.0.2", 2919 | "object.pick": "^1.3.0", 2920 | "regex-not": "^1.0.0", 2921 | "snapdragon": "^0.8.1", 2922 | "to-regex": "^3.0.1" 2923 | }, 2924 | "dependencies": { 2925 | "arr-diff": { 2926 | "version": "4.0.0", 2927 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 2928 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 2929 | "dev": true 2930 | }, 2931 | "array-unique": { 2932 | "version": "0.3.2", 2933 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 2934 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 2935 | "dev": true 2936 | }, 2937 | "kind-of": { 2938 | "version": "6.0.3", 2939 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 2940 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 2941 | "dev": true 2942 | } 2943 | } 2944 | }, 2945 | "natural-compare": { 2946 | "version": "1.4.0", 2947 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 2948 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 2949 | "dev": true 2950 | }, 2951 | "neo-async": { 2952 | "version": "2.6.2", 2953 | "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", 2954 | "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", 2955 | "dev": true 2956 | }, 2957 | "node-int64": { 2958 | "version": "0.4.0", 2959 | "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", 2960 | "integrity": "sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs=", 2961 | "dev": true 2962 | }, 2963 | "node-notifier": { 2964 | "version": "5.4.3", 2965 | "resolved": "https://registry.npmjs.org/node-notifier/-/node-notifier-5.4.3.tgz", 2966 | "integrity": "sha512-M4UBGcs4jeOK9CjTsYwkvH6/MzuUmGCyTW+kCY7uO+1ZVr0+FHGdPdIf5CCLqAaxnRrWidyoQlNkMIIVwbKB8Q==", 2967 | "dev": true, 2968 | "requires": { 2969 | "growly": "^1.3.0", 2970 | "is-wsl": "^1.1.0", 2971 | "semver": "^5.5.0", 2972 | "shellwords": "^0.1.1", 2973 | "which": "^1.3.0" 2974 | } 2975 | }, 2976 | "normalize-package-data": { 2977 | "version": "2.5.0", 2978 | "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", 2979 | "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", 2980 | "dev": true, 2981 | "requires": { 2982 | "hosted-git-info": "^2.1.4", 2983 | "resolve": "^1.10.0", 2984 | "semver": "2 || 3 || 4 || 5", 2985 | "validate-npm-package-license": "^3.0.1" 2986 | }, 2987 | "dependencies": { 2988 | "resolve": { 2989 | "version": "1.19.0", 2990 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", 2991 | "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", 2992 | "dev": true, 2993 | "requires": { 2994 | "is-core-module": "^2.1.0", 2995 | "path-parse": "^1.0.6" 2996 | } 2997 | } 2998 | } 2999 | }, 3000 | "normalize-path": { 3001 | "version": "2.1.1", 3002 | "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", 3003 | "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", 3004 | "dev": true, 3005 | "requires": { 3006 | "remove-trailing-separator": "^1.0.1" 3007 | } 3008 | }, 3009 | "npm-run-path": { 3010 | "version": "2.0.2", 3011 | "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz", 3012 | "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", 3013 | "dev": true, 3014 | "requires": { 3015 | "path-key": "^2.0.0" 3016 | } 3017 | }, 3018 | "number-is-nan": { 3019 | "version": "1.0.1", 3020 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", 3021 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", 3022 | "dev": true 3023 | }, 3024 | "nwmatcher": { 3025 | "version": "1.4.4", 3026 | "resolved": "https://registry.npmjs.org/nwmatcher/-/nwmatcher-1.4.4.tgz", 3027 | "integrity": "sha512-3iuY4N5dhgMpCUrOVnuAdGrgxVqV2cJpM+XNccjR2DKOB1RUP0aA+wGXEiNziG/UKboFyGBIoKOaNlJxx8bciQ==", 3028 | "dev": true 3029 | }, 3030 | "oauth-sign": { 3031 | "version": "0.9.0", 3032 | "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", 3033 | "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", 3034 | "dev": true 3035 | }, 3036 | "object-assign": { 3037 | "version": "4.1.1", 3038 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 3039 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 3040 | "dev": true 3041 | }, 3042 | "object-copy": { 3043 | "version": "0.1.0", 3044 | "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz", 3045 | "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", 3046 | "dev": true, 3047 | "requires": { 3048 | "copy-descriptor": "^0.1.0", 3049 | "define-property": "^0.2.5", 3050 | "kind-of": "^3.0.3" 3051 | }, 3052 | "dependencies": { 3053 | "define-property": { 3054 | "version": "0.2.5", 3055 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3056 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3057 | "dev": true, 3058 | "requires": { 3059 | "is-descriptor": "^0.1.0" 3060 | } 3061 | } 3062 | } 3063 | }, 3064 | "object-visit": { 3065 | "version": "1.0.1", 3066 | "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", 3067 | "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", 3068 | "dev": true, 3069 | "requires": { 3070 | "isobject": "^3.0.0" 3071 | }, 3072 | "dependencies": { 3073 | "isobject": { 3074 | "version": "3.0.1", 3075 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3076 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3077 | "dev": true 3078 | } 3079 | } 3080 | }, 3081 | "object.omit": { 3082 | "version": "2.0.1", 3083 | "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", 3084 | "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", 3085 | "dev": true, 3086 | "requires": { 3087 | "for-own": "^0.1.4", 3088 | "is-extendable": "^0.1.1" 3089 | } 3090 | }, 3091 | "object.pick": { 3092 | "version": "1.3.0", 3093 | "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", 3094 | "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", 3095 | "dev": true, 3096 | "requires": { 3097 | "isobject": "^3.0.1" 3098 | }, 3099 | "dependencies": { 3100 | "isobject": { 3101 | "version": "3.0.1", 3102 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3103 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3104 | "dev": true 3105 | } 3106 | } 3107 | }, 3108 | "once": { 3109 | "version": "1.4.0", 3110 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 3111 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 3112 | "dev": true, 3113 | "requires": { 3114 | "wrappy": "1" 3115 | } 3116 | }, 3117 | "optionator": { 3118 | "version": "0.8.3", 3119 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", 3120 | "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", 3121 | "dev": true, 3122 | "requires": { 3123 | "deep-is": "~0.1.3", 3124 | "fast-levenshtein": "~2.0.6", 3125 | "levn": "~0.3.0", 3126 | "prelude-ls": "~1.1.2", 3127 | "type-check": "~0.3.2", 3128 | "word-wrap": "~1.2.3" 3129 | } 3130 | }, 3131 | "os-homedir": { 3132 | "version": "1.0.2", 3133 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz", 3134 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=", 3135 | "dev": true 3136 | }, 3137 | "os-locale": { 3138 | "version": "2.1.0", 3139 | "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", 3140 | "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", 3141 | "dev": true, 3142 | "requires": { 3143 | "execa": "^0.7.0", 3144 | "lcid": "^1.0.0", 3145 | "mem": "^1.1.0" 3146 | } 3147 | }, 3148 | "os-tmpdir": { 3149 | "version": "1.0.2", 3150 | "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", 3151 | "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", 3152 | "dev": true 3153 | }, 3154 | "p-cancelable": { 3155 | "version": "0.3.0", 3156 | "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-0.3.0.tgz", 3157 | "integrity": "sha512-RVbZPLso8+jFeq1MfNvgXtCRED2raz/dKpacfTNxsx6pLEpEomM7gah6VeHSYV3+vo0OAi4MkArtQcWWXuQoyw==", 3158 | "dev": true 3159 | }, 3160 | "p-finally": { 3161 | "version": "1.0.0", 3162 | "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", 3163 | "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", 3164 | "dev": true 3165 | }, 3166 | "p-limit": { 3167 | "version": "1.3.0", 3168 | "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", 3169 | "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", 3170 | "dev": true, 3171 | "requires": { 3172 | "p-try": "^1.0.0" 3173 | } 3174 | }, 3175 | "p-locate": { 3176 | "version": "2.0.0", 3177 | "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", 3178 | "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", 3179 | "dev": true, 3180 | "requires": { 3181 | "p-limit": "^1.1.0" 3182 | } 3183 | }, 3184 | "p-try": { 3185 | "version": "1.0.0", 3186 | "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", 3187 | "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", 3188 | "dev": true 3189 | }, 3190 | "parse-glob": { 3191 | "version": "3.0.4", 3192 | "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", 3193 | "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", 3194 | "dev": true, 3195 | "requires": { 3196 | "glob-base": "^0.3.0", 3197 | "is-dotfile": "^1.0.0", 3198 | "is-extglob": "^1.0.0", 3199 | "is-glob": "^2.0.0" 3200 | } 3201 | }, 3202 | "parse-json": { 3203 | "version": "2.2.0", 3204 | "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", 3205 | "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", 3206 | "dev": true, 3207 | "requires": { 3208 | "error-ex": "^1.2.0" 3209 | } 3210 | }, 3211 | "parse5": { 3212 | "version": "1.5.1", 3213 | "resolved": "https://registry.npmjs.org/parse5/-/parse5-1.5.1.tgz", 3214 | "integrity": "sha1-m387DeMr543CQBsXVzzK8Pb1nZQ=", 3215 | "dev": true 3216 | }, 3217 | "pascalcase": { 3218 | "version": "0.1.1", 3219 | "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz", 3220 | "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=", 3221 | "dev": true 3222 | }, 3223 | "path-exists": { 3224 | "version": "3.0.0", 3225 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", 3226 | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", 3227 | "dev": true 3228 | }, 3229 | "path-is-absolute": { 3230 | "version": "1.0.1", 3231 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 3232 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 3233 | "dev": true 3234 | }, 3235 | "path-key": { 3236 | "version": "2.0.1", 3237 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", 3238 | "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", 3239 | "dev": true 3240 | }, 3241 | "path-parse": { 3242 | "version": "1.0.6", 3243 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", 3244 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", 3245 | "dev": true 3246 | }, 3247 | "path-type": { 3248 | "version": "1.1.0", 3249 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", 3250 | "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", 3251 | "dev": true, 3252 | "requires": { 3253 | "graceful-fs": "^4.1.2", 3254 | "pify": "^2.0.0", 3255 | "pinkie-promise": "^2.0.0" 3256 | }, 3257 | "dependencies": { 3258 | "pify": { 3259 | "version": "2.3.0", 3260 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 3261 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 3262 | "dev": true 3263 | } 3264 | } 3265 | }, 3266 | "performance-now": { 3267 | "version": "2.1.0", 3268 | "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", 3269 | "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", 3270 | "dev": true 3271 | }, 3272 | "pify": { 3273 | "version": "3.0.0", 3274 | "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", 3275 | "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", 3276 | "dev": true 3277 | }, 3278 | "pinkie": { 3279 | "version": "2.0.4", 3280 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz", 3281 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=", 3282 | "dev": true 3283 | }, 3284 | "pinkie-promise": { 3285 | "version": "2.0.1", 3286 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz", 3287 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", 3288 | "dev": true, 3289 | "requires": { 3290 | "pinkie": "^2.0.0" 3291 | } 3292 | }, 3293 | "pkg-dir": { 3294 | "version": "2.0.0", 3295 | "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", 3296 | "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", 3297 | "dev": true, 3298 | "requires": { 3299 | "find-up": "^2.1.0" 3300 | } 3301 | }, 3302 | "posix-character-classes": { 3303 | "version": "0.1.1", 3304 | "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz", 3305 | "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=", 3306 | "dev": true 3307 | }, 3308 | "prelude-ls": { 3309 | "version": "1.1.2", 3310 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", 3311 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=", 3312 | "dev": true 3313 | }, 3314 | "preserve": { 3315 | "version": "0.2.0", 3316 | "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", 3317 | "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", 3318 | "dev": true 3319 | }, 3320 | "pretty-format": { 3321 | "version": "21.2.1", 3322 | "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-21.2.1.tgz", 3323 | "integrity": "sha512-ZdWPGYAnYfcVP8yKA3zFjCn8s4/17TeYH28MXuC8vTp0o21eXjbFGcOAXZEaDaOFJjc3h2qa7HQNHNshhvoh2A==", 3324 | "dev": true, 3325 | "requires": { 3326 | "ansi-regex": "^3.0.0", 3327 | "ansi-styles": "^3.2.0" 3328 | }, 3329 | "dependencies": { 3330 | "ansi-regex": { 3331 | "version": "3.0.0", 3332 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 3333 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 3334 | "dev": true 3335 | } 3336 | } 3337 | }, 3338 | "private": { 3339 | "version": "0.1.8", 3340 | "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz", 3341 | "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==", 3342 | "dev": true 3343 | }, 3344 | "process-nextick-args": { 3345 | "version": "2.0.1", 3346 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", 3347 | "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", 3348 | "dev": true 3349 | }, 3350 | "prr": { 3351 | "version": "1.0.1", 3352 | "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", 3353 | "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", 3354 | "dev": true 3355 | }, 3356 | "pseudomap": { 3357 | "version": "1.0.2", 3358 | "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", 3359 | "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=", 3360 | "dev": true 3361 | }, 3362 | "psl": { 3363 | "version": "1.8.0", 3364 | "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", 3365 | "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", 3366 | "dev": true 3367 | }, 3368 | "punycode": { 3369 | "version": "2.1.1", 3370 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 3371 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 3372 | "dev": true 3373 | }, 3374 | "qs": { 3375 | "version": "6.5.2", 3376 | "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.2.tgz", 3377 | "integrity": "sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA==", 3378 | "dev": true 3379 | }, 3380 | "randomatic": { 3381 | "version": "3.1.1", 3382 | "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.1.1.tgz", 3383 | "integrity": "sha512-TuDE5KxZ0J461RVjrJZCJc+J+zCkTb1MbH9AQUq68sMhOMcy9jLcb3BrZKgp9q9Ncltdg4QVqWrH02W2EFFVYw==", 3384 | "dev": true, 3385 | "requires": { 3386 | "is-number": "^4.0.0", 3387 | "kind-of": "^6.0.0", 3388 | "math-random": "^1.0.1" 3389 | }, 3390 | "dependencies": { 3391 | "is-number": { 3392 | "version": "4.0.0", 3393 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", 3394 | "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", 3395 | "dev": true 3396 | }, 3397 | "kind-of": { 3398 | "version": "6.0.3", 3399 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 3400 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 3401 | "dev": true 3402 | } 3403 | } 3404 | }, 3405 | "read-pkg": { 3406 | "version": "1.1.0", 3407 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", 3408 | "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", 3409 | "dev": true, 3410 | "requires": { 3411 | "load-json-file": "^1.0.0", 3412 | "normalize-package-data": "^2.3.2", 3413 | "path-type": "^1.0.0" 3414 | } 3415 | }, 3416 | "read-pkg-up": { 3417 | "version": "1.0.1", 3418 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", 3419 | "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", 3420 | "dev": true, 3421 | "requires": { 3422 | "find-up": "^1.0.0", 3423 | "read-pkg": "^1.0.0" 3424 | }, 3425 | "dependencies": { 3426 | "find-up": { 3427 | "version": "1.1.2", 3428 | "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", 3429 | "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", 3430 | "dev": true, 3431 | "requires": { 3432 | "path-exists": "^2.0.0", 3433 | "pinkie-promise": "^2.0.0" 3434 | } 3435 | }, 3436 | "path-exists": { 3437 | "version": "2.1.0", 3438 | "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", 3439 | "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", 3440 | "dev": true, 3441 | "requires": { 3442 | "pinkie-promise": "^2.0.0" 3443 | } 3444 | } 3445 | } 3446 | }, 3447 | "readable-stream": { 3448 | "version": "2.3.7", 3449 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", 3450 | "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", 3451 | "dev": true, 3452 | "requires": { 3453 | "core-util-is": "~1.0.0", 3454 | "inherits": "~2.0.3", 3455 | "isarray": "~1.0.0", 3456 | "process-nextick-args": "~2.0.0", 3457 | "safe-buffer": "~5.1.1", 3458 | "string_decoder": "~1.1.1", 3459 | "util-deprecate": "~1.0.1" 3460 | }, 3461 | "dependencies": { 3462 | "safe-buffer": { 3463 | "version": "5.1.2", 3464 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 3465 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 3466 | "dev": true 3467 | } 3468 | } 3469 | }, 3470 | "readdirp": { 3471 | "version": "2.2.1", 3472 | "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", 3473 | "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", 3474 | "dev": true, 3475 | "requires": { 3476 | "graceful-fs": "^4.1.11", 3477 | "micromatch": "^3.1.10", 3478 | "readable-stream": "^2.0.2" 3479 | }, 3480 | "dependencies": { 3481 | "arr-diff": { 3482 | "version": "4.0.0", 3483 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 3484 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 3485 | "dev": true 3486 | }, 3487 | "array-unique": { 3488 | "version": "0.3.2", 3489 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 3490 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 3491 | "dev": true 3492 | }, 3493 | "braces": { 3494 | "version": "2.3.2", 3495 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 3496 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 3497 | "dev": true, 3498 | "requires": { 3499 | "arr-flatten": "^1.1.0", 3500 | "array-unique": "^0.3.2", 3501 | "extend-shallow": "^2.0.1", 3502 | "fill-range": "^4.0.0", 3503 | "isobject": "^3.0.1", 3504 | "repeat-element": "^1.1.2", 3505 | "snapdragon": "^0.8.1", 3506 | "snapdragon-node": "^2.0.1", 3507 | "split-string": "^3.0.2", 3508 | "to-regex": "^3.0.1" 3509 | }, 3510 | "dependencies": { 3511 | "extend-shallow": { 3512 | "version": "2.0.1", 3513 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3514 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3515 | "dev": true, 3516 | "requires": { 3517 | "is-extendable": "^0.1.0" 3518 | } 3519 | } 3520 | } 3521 | }, 3522 | "expand-brackets": { 3523 | "version": "2.1.4", 3524 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 3525 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 3526 | "dev": true, 3527 | "requires": { 3528 | "debug": "^2.3.3", 3529 | "define-property": "^0.2.5", 3530 | "extend-shallow": "^2.0.1", 3531 | "posix-character-classes": "^0.1.0", 3532 | "regex-not": "^1.0.0", 3533 | "snapdragon": "^0.8.1", 3534 | "to-regex": "^3.0.1" 3535 | }, 3536 | "dependencies": { 3537 | "define-property": { 3538 | "version": "0.2.5", 3539 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3540 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3541 | "dev": true, 3542 | "requires": { 3543 | "is-descriptor": "^0.1.0" 3544 | } 3545 | }, 3546 | "extend-shallow": { 3547 | "version": "2.0.1", 3548 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3549 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3550 | "dev": true, 3551 | "requires": { 3552 | "is-extendable": "^0.1.0" 3553 | } 3554 | }, 3555 | "is-accessor-descriptor": { 3556 | "version": "0.1.6", 3557 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 3558 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 3559 | "dev": true, 3560 | "requires": { 3561 | "kind-of": "^3.0.2" 3562 | }, 3563 | "dependencies": { 3564 | "kind-of": { 3565 | "version": "3.2.2", 3566 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3567 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3568 | "dev": true, 3569 | "requires": { 3570 | "is-buffer": "^1.1.5" 3571 | } 3572 | } 3573 | } 3574 | }, 3575 | "is-data-descriptor": { 3576 | "version": "0.1.4", 3577 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 3578 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 3579 | "dev": true, 3580 | "requires": { 3581 | "kind-of": "^3.0.2" 3582 | }, 3583 | "dependencies": { 3584 | "kind-of": { 3585 | "version": "3.2.2", 3586 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3587 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3588 | "dev": true, 3589 | "requires": { 3590 | "is-buffer": "^1.1.5" 3591 | } 3592 | } 3593 | } 3594 | }, 3595 | "is-descriptor": { 3596 | "version": "0.1.6", 3597 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 3598 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 3599 | "dev": true, 3600 | "requires": { 3601 | "is-accessor-descriptor": "^0.1.6", 3602 | "is-data-descriptor": "^0.1.4", 3603 | "kind-of": "^5.0.0" 3604 | } 3605 | }, 3606 | "kind-of": { 3607 | "version": "5.1.0", 3608 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 3609 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 3610 | "dev": true 3611 | } 3612 | } 3613 | }, 3614 | "extglob": { 3615 | "version": "2.0.4", 3616 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 3617 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 3618 | "dev": true, 3619 | "requires": { 3620 | "array-unique": "^0.3.2", 3621 | "define-property": "^1.0.0", 3622 | "expand-brackets": "^2.1.4", 3623 | "extend-shallow": "^2.0.1", 3624 | "fragment-cache": "^0.2.1", 3625 | "regex-not": "^1.0.0", 3626 | "snapdragon": "^0.8.1", 3627 | "to-regex": "^3.0.1" 3628 | }, 3629 | "dependencies": { 3630 | "define-property": { 3631 | "version": "1.0.0", 3632 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 3633 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 3634 | "dev": true, 3635 | "requires": { 3636 | "is-descriptor": "^1.0.0" 3637 | } 3638 | }, 3639 | "extend-shallow": { 3640 | "version": "2.0.1", 3641 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3642 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3643 | "dev": true, 3644 | "requires": { 3645 | "is-extendable": "^0.1.0" 3646 | } 3647 | } 3648 | } 3649 | }, 3650 | "fill-range": { 3651 | "version": "4.0.0", 3652 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 3653 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 3654 | "dev": true, 3655 | "requires": { 3656 | "extend-shallow": "^2.0.1", 3657 | "is-number": "^3.0.0", 3658 | "repeat-string": "^1.6.1", 3659 | "to-regex-range": "^2.1.0" 3660 | }, 3661 | "dependencies": { 3662 | "extend-shallow": { 3663 | "version": "2.0.1", 3664 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3665 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3666 | "dev": true, 3667 | "requires": { 3668 | "is-extendable": "^0.1.0" 3669 | } 3670 | } 3671 | } 3672 | }, 3673 | "is-accessor-descriptor": { 3674 | "version": "1.0.0", 3675 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 3676 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 3677 | "dev": true, 3678 | "requires": { 3679 | "kind-of": "^6.0.0" 3680 | } 3681 | }, 3682 | "is-data-descriptor": { 3683 | "version": "1.0.0", 3684 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 3685 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 3686 | "dev": true, 3687 | "requires": { 3688 | "kind-of": "^6.0.0" 3689 | } 3690 | }, 3691 | "is-descriptor": { 3692 | "version": "1.0.2", 3693 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 3694 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 3695 | "dev": true, 3696 | "requires": { 3697 | "is-accessor-descriptor": "^1.0.0", 3698 | "is-data-descriptor": "^1.0.0", 3699 | "kind-of": "^6.0.2" 3700 | } 3701 | }, 3702 | "is-number": { 3703 | "version": "3.0.0", 3704 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 3705 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 3706 | "dev": true, 3707 | "requires": { 3708 | "kind-of": "^3.0.2" 3709 | }, 3710 | "dependencies": { 3711 | "kind-of": { 3712 | "version": "3.2.2", 3713 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 3714 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 3715 | "dev": true, 3716 | "requires": { 3717 | "is-buffer": "^1.1.5" 3718 | } 3719 | } 3720 | } 3721 | }, 3722 | "isobject": { 3723 | "version": "3.0.1", 3724 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 3725 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 3726 | "dev": true 3727 | }, 3728 | "kind-of": { 3729 | "version": "6.0.3", 3730 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 3731 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 3732 | "dev": true 3733 | }, 3734 | "micromatch": { 3735 | "version": "3.1.10", 3736 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 3737 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 3738 | "dev": true, 3739 | "requires": { 3740 | "arr-diff": "^4.0.0", 3741 | "array-unique": "^0.3.2", 3742 | "braces": "^2.3.1", 3743 | "define-property": "^2.0.2", 3744 | "extend-shallow": "^3.0.2", 3745 | "extglob": "^2.0.4", 3746 | "fragment-cache": "^0.2.1", 3747 | "kind-of": "^6.0.2", 3748 | "nanomatch": "^1.2.9", 3749 | "object.pick": "^1.3.0", 3750 | "regex-not": "^1.0.0", 3751 | "snapdragon": "^0.8.1", 3752 | "to-regex": "^3.0.2" 3753 | } 3754 | } 3755 | } 3756 | }, 3757 | "regenerator-runtime": { 3758 | "version": "0.11.1", 3759 | "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", 3760 | "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", 3761 | "dev": true 3762 | }, 3763 | "regex-cache": { 3764 | "version": "0.4.4", 3765 | "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", 3766 | "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", 3767 | "dev": true, 3768 | "requires": { 3769 | "is-equal-shallow": "^0.1.3" 3770 | } 3771 | }, 3772 | "regex-not": { 3773 | "version": "1.0.2", 3774 | "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", 3775 | "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", 3776 | "dev": true, 3777 | "requires": { 3778 | "extend-shallow": "^3.0.2", 3779 | "safe-regex": "^1.1.0" 3780 | } 3781 | }, 3782 | "remove-trailing-separator": { 3783 | "version": "1.1.0", 3784 | "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", 3785 | "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", 3786 | "dev": true 3787 | }, 3788 | "repeat-element": { 3789 | "version": "1.1.3", 3790 | "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.3.tgz", 3791 | "integrity": "sha512-ahGq0ZnV5m5XtZLMb+vP76kcAM5nkLqk0lpqAuojSKGgQtn4eRi4ZZGm2olo2zKFH+sMsWaqOCW1dqAnOru72g==", 3792 | "dev": true 3793 | }, 3794 | "repeat-string": { 3795 | "version": "1.6.1", 3796 | "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz", 3797 | "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=", 3798 | "dev": true 3799 | }, 3800 | "repeating": { 3801 | "version": "2.0.1", 3802 | "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz", 3803 | "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", 3804 | "dev": true, 3805 | "requires": { 3806 | "is-finite": "^1.0.0" 3807 | } 3808 | }, 3809 | "request": { 3810 | "version": "2.88.2", 3811 | "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", 3812 | "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", 3813 | "dev": true, 3814 | "requires": { 3815 | "aws-sign2": "~0.7.0", 3816 | "aws4": "^1.8.0", 3817 | "caseless": "~0.12.0", 3818 | "combined-stream": "~1.0.6", 3819 | "extend": "~3.0.2", 3820 | "forever-agent": "~0.6.1", 3821 | "form-data": "~2.3.2", 3822 | "har-validator": "~5.1.3", 3823 | "http-signature": "~1.2.0", 3824 | "is-typedarray": "~1.0.0", 3825 | "isstream": "~0.1.2", 3826 | "json-stringify-safe": "~5.0.1", 3827 | "mime-types": "~2.1.19", 3828 | "oauth-sign": "~0.9.0", 3829 | "performance-now": "^2.1.0", 3830 | "qs": "~6.5.2", 3831 | "safe-buffer": "^5.1.2", 3832 | "tough-cookie": "~2.5.0", 3833 | "tunnel-agent": "^0.6.0", 3834 | "uuid": "^3.3.2" 3835 | } 3836 | }, 3837 | "require-directory": { 3838 | "version": "2.1.1", 3839 | "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", 3840 | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", 3841 | "dev": true 3842 | }, 3843 | "require-main-filename": { 3844 | "version": "1.0.1", 3845 | "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz", 3846 | "integrity": "sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE=", 3847 | "dev": true 3848 | }, 3849 | "resolve": { 3850 | "version": "1.1.7", 3851 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", 3852 | "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", 3853 | "dev": true 3854 | }, 3855 | "resolve-url": { 3856 | "version": "0.2.1", 3857 | "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", 3858 | "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=", 3859 | "dev": true 3860 | }, 3861 | "ret": { 3862 | "version": "0.1.15", 3863 | "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz", 3864 | "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", 3865 | "dev": true 3866 | }, 3867 | "rimraf": { 3868 | "version": "2.7.1", 3869 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", 3870 | "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", 3871 | "dev": true, 3872 | "requires": { 3873 | "glob": "^7.1.3" 3874 | } 3875 | }, 3876 | "rsvp": { 3877 | "version": "3.6.2", 3878 | "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.6.2.tgz", 3879 | "integrity": "sha512-OfWGQTb9vnwRjwtA2QwpG2ICclHC3pgXZO5xt8H2EfgDquO0qVdSb5T88L4qJVAEugbS56pAuV4XZM58UX8ulw==", 3880 | "dev": true 3881 | }, 3882 | "safe-buffer": { 3883 | "version": "5.2.1", 3884 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 3885 | "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 3886 | "dev": true 3887 | }, 3888 | "safe-regex": { 3889 | "version": "1.1.0", 3890 | "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz", 3891 | "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", 3892 | "dev": true, 3893 | "requires": { 3894 | "ret": "~0.1.10" 3895 | } 3896 | }, 3897 | "safer-buffer": { 3898 | "version": "2.1.2", 3899 | "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", 3900 | "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", 3901 | "dev": true 3902 | }, 3903 | "sane": { 3904 | "version": "2.5.2", 3905 | "resolved": "https://registry.npmjs.org/sane/-/sane-2.5.2.tgz", 3906 | "integrity": "sha1-tNwYYcIbQn6SlQej51HiosuKs/o=", 3907 | "dev": true, 3908 | "requires": { 3909 | "anymatch": "^2.0.0", 3910 | "capture-exit": "^1.2.0", 3911 | "exec-sh": "^0.2.0", 3912 | "fb-watchman": "^2.0.0", 3913 | "fsevents": "^1.2.3", 3914 | "micromatch": "^3.1.4", 3915 | "minimist": "^1.1.1", 3916 | "walker": "~1.0.5", 3917 | "watch": "~0.18.0" 3918 | }, 3919 | "dependencies": { 3920 | "arr-diff": { 3921 | "version": "4.0.0", 3922 | "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz", 3923 | "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=", 3924 | "dev": true 3925 | }, 3926 | "array-unique": { 3927 | "version": "0.3.2", 3928 | "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz", 3929 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=", 3930 | "dev": true 3931 | }, 3932 | "braces": { 3933 | "version": "2.3.2", 3934 | "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", 3935 | "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", 3936 | "dev": true, 3937 | "requires": { 3938 | "arr-flatten": "^1.1.0", 3939 | "array-unique": "^0.3.2", 3940 | "extend-shallow": "^2.0.1", 3941 | "fill-range": "^4.0.0", 3942 | "isobject": "^3.0.1", 3943 | "repeat-element": "^1.1.2", 3944 | "snapdragon": "^0.8.1", 3945 | "snapdragon-node": "^2.0.1", 3946 | "split-string": "^3.0.2", 3947 | "to-regex": "^3.0.1" 3948 | }, 3949 | "dependencies": { 3950 | "extend-shallow": { 3951 | "version": "2.0.1", 3952 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3953 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3954 | "dev": true, 3955 | "requires": { 3956 | "is-extendable": "^0.1.0" 3957 | } 3958 | } 3959 | } 3960 | }, 3961 | "expand-brackets": { 3962 | "version": "2.1.4", 3963 | "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", 3964 | "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", 3965 | "dev": true, 3966 | "requires": { 3967 | "debug": "^2.3.3", 3968 | "define-property": "^0.2.5", 3969 | "extend-shallow": "^2.0.1", 3970 | "posix-character-classes": "^0.1.0", 3971 | "regex-not": "^1.0.0", 3972 | "snapdragon": "^0.8.1", 3973 | "to-regex": "^3.0.1" 3974 | }, 3975 | "dependencies": { 3976 | "define-property": { 3977 | "version": "0.2.5", 3978 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 3979 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 3980 | "dev": true, 3981 | "requires": { 3982 | "is-descriptor": "^0.1.0" 3983 | } 3984 | }, 3985 | "extend-shallow": { 3986 | "version": "2.0.1", 3987 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 3988 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 3989 | "dev": true, 3990 | "requires": { 3991 | "is-extendable": "^0.1.0" 3992 | } 3993 | }, 3994 | "is-accessor-descriptor": { 3995 | "version": "0.1.6", 3996 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz", 3997 | "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", 3998 | "dev": true, 3999 | "requires": { 4000 | "kind-of": "^3.0.2" 4001 | }, 4002 | "dependencies": { 4003 | "kind-of": { 4004 | "version": "3.2.2", 4005 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4006 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4007 | "dev": true, 4008 | "requires": { 4009 | "is-buffer": "^1.1.5" 4010 | } 4011 | } 4012 | } 4013 | }, 4014 | "is-data-descriptor": { 4015 | "version": "0.1.4", 4016 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", 4017 | "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", 4018 | "dev": true, 4019 | "requires": { 4020 | "kind-of": "^3.0.2" 4021 | }, 4022 | "dependencies": { 4023 | "kind-of": { 4024 | "version": "3.2.2", 4025 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4026 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4027 | "dev": true, 4028 | "requires": { 4029 | "is-buffer": "^1.1.5" 4030 | } 4031 | } 4032 | } 4033 | }, 4034 | "is-descriptor": { 4035 | "version": "0.1.6", 4036 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", 4037 | "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", 4038 | "dev": true, 4039 | "requires": { 4040 | "is-accessor-descriptor": "^0.1.6", 4041 | "is-data-descriptor": "^0.1.4", 4042 | "kind-of": "^5.0.0" 4043 | } 4044 | }, 4045 | "kind-of": { 4046 | "version": "5.1.0", 4047 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz", 4048 | "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", 4049 | "dev": true 4050 | } 4051 | } 4052 | }, 4053 | "extglob": { 4054 | "version": "2.0.4", 4055 | "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz", 4056 | "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", 4057 | "dev": true, 4058 | "requires": { 4059 | "array-unique": "^0.3.2", 4060 | "define-property": "^1.0.0", 4061 | "expand-brackets": "^2.1.4", 4062 | "extend-shallow": "^2.0.1", 4063 | "fragment-cache": "^0.2.1", 4064 | "regex-not": "^1.0.0", 4065 | "snapdragon": "^0.8.1", 4066 | "to-regex": "^3.0.1" 4067 | }, 4068 | "dependencies": { 4069 | "define-property": { 4070 | "version": "1.0.0", 4071 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 4072 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 4073 | "dev": true, 4074 | "requires": { 4075 | "is-descriptor": "^1.0.0" 4076 | } 4077 | }, 4078 | "extend-shallow": { 4079 | "version": "2.0.1", 4080 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4081 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4082 | "dev": true, 4083 | "requires": { 4084 | "is-extendable": "^0.1.0" 4085 | } 4086 | } 4087 | } 4088 | }, 4089 | "fill-range": { 4090 | "version": "4.0.0", 4091 | "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", 4092 | "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", 4093 | "dev": true, 4094 | "requires": { 4095 | "extend-shallow": "^2.0.1", 4096 | "is-number": "^3.0.0", 4097 | "repeat-string": "^1.6.1", 4098 | "to-regex-range": "^2.1.0" 4099 | }, 4100 | "dependencies": { 4101 | "extend-shallow": { 4102 | "version": "2.0.1", 4103 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4104 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4105 | "dev": true, 4106 | "requires": { 4107 | "is-extendable": "^0.1.0" 4108 | } 4109 | } 4110 | } 4111 | }, 4112 | "is-accessor-descriptor": { 4113 | "version": "1.0.0", 4114 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 4115 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 4116 | "dev": true, 4117 | "requires": { 4118 | "kind-of": "^6.0.0" 4119 | } 4120 | }, 4121 | "is-data-descriptor": { 4122 | "version": "1.0.0", 4123 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 4124 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 4125 | "dev": true, 4126 | "requires": { 4127 | "kind-of": "^6.0.0" 4128 | } 4129 | }, 4130 | "is-descriptor": { 4131 | "version": "1.0.2", 4132 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 4133 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 4134 | "dev": true, 4135 | "requires": { 4136 | "is-accessor-descriptor": "^1.0.0", 4137 | "is-data-descriptor": "^1.0.0", 4138 | "kind-of": "^6.0.2" 4139 | } 4140 | }, 4141 | "is-number": { 4142 | "version": "3.0.0", 4143 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 4144 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 4145 | "dev": true, 4146 | "requires": { 4147 | "kind-of": "^3.0.2" 4148 | }, 4149 | "dependencies": { 4150 | "kind-of": { 4151 | "version": "3.2.2", 4152 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", 4153 | "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", 4154 | "dev": true, 4155 | "requires": { 4156 | "is-buffer": "^1.1.5" 4157 | } 4158 | } 4159 | } 4160 | }, 4161 | "isobject": { 4162 | "version": "3.0.1", 4163 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 4164 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 4165 | "dev": true 4166 | }, 4167 | "kind-of": { 4168 | "version": "6.0.3", 4169 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 4170 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 4171 | "dev": true 4172 | }, 4173 | "micromatch": { 4174 | "version": "3.1.10", 4175 | "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", 4176 | "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", 4177 | "dev": true, 4178 | "requires": { 4179 | "arr-diff": "^4.0.0", 4180 | "array-unique": "^0.3.2", 4181 | "braces": "^2.3.1", 4182 | "define-property": "^2.0.2", 4183 | "extend-shallow": "^3.0.2", 4184 | "extglob": "^2.0.4", 4185 | "fragment-cache": "^0.2.1", 4186 | "kind-of": "^6.0.2", 4187 | "nanomatch": "^1.2.9", 4188 | "object.pick": "^1.3.0", 4189 | "regex-not": "^1.0.0", 4190 | "snapdragon": "^0.8.1", 4191 | "to-regex": "^3.0.2" 4192 | } 4193 | } 4194 | } 4195 | }, 4196 | "sax": { 4197 | "version": "1.2.4", 4198 | "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", 4199 | "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", 4200 | "dev": true 4201 | }, 4202 | "semver": { 4203 | "version": "5.7.1", 4204 | "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", 4205 | "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", 4206 | "dev": true 4207 | }, 4208 | "set-blocking": { 4209 | "version": "2.0.0", 4210 | "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", 4211 | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", 4212 | "dev": true 4213 | }, 4214 | "set-value": { 4215 | "version": "2.0.1", 4216 | "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz", 4217 | "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", 4218 | "dev": true, 4219 | "requires": { 4220 | "extend-shallow": "^2.0.1", 4221 | "is-extendable": "^0.1.1", 4222 | "is-plain-object": "^2.0.3", 4223 | "split-string": "^3.0.1" 4224 | }, 4225 | "dependencies": { 4226 | "extend-shallow": { 4227 | "version": "2.0.1", 4228 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4229 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4230 | "dev": true, 4231 | "requires": { 4232 | "is-extendable": "^0.1.0" 4233 | } 4234 | } 4235 | } 4236 | }, 4237 | "shebang-command": { 4238 | "version": "1.2.0", 4239 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", 4240 | "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", 4241 | "dev": true, 4242 | "requires": { 4243 | "shebang-regex": "^1.0.0" 4244 | } 4245 | }, 4246 | "shebang-regex": { 4247 | "version": "1.0.0", 4248 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", 4249 | "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", 4250 | "dev": true 4251 | }, 4252 | "shell-quote": { 4253 | "version": "1.7.2", 4254 | "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz", 4255 | "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg==", 4256 | "dev": true 4257 | }, 4258 | "shellwords": { 4259 | "version": "0.1.1", 4260 | "resolved": "https://registry.npmjs.org/shellwords/-/shellwords-0.1.1.tgz", 4261 | "integrity": "sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww==", 4262 | "dev": true 4263 | }, 4264 | "signal-exit": { 4265 | "version": "3.0.3", 4266 | "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", 4267 | "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", 4268 | "dev": true 4269 | }, 4270 | "slash": { 4271 | "version": "1.0.0", 4272 | "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", 4273 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", 4274 | "dev": true 4275 | }, 4276 | "snapdragon": { 4277 | "version": "0.8.2", 4278 | "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", 4279 | "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", 4280 | "dev": true, 4281 | "requires": { 4282 | "base": "^0.11.1", 4283 | "debug": "^2.2.0", 4284 | "define-property": "^0.2.5", 4285 | "extend-shallow": "^2.0.1", 4286 | "map-cache": "^0.2.2", 4287 | "source-map": "^0.5.6", 4288 | "source-map-resolve": "^0.5.0", 4289 | "use": "^3.1.0" 4290 | }, 4291 | "dependencies": { 4292 | "define-property": { 4293 | "version": "0.2.5", 4294 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4295 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4296 | "dev": true, 4297 | "requires": { 4298 | "is-descriptor": "^0.1.0" 4299 | } 4300 | }, 4301 | "extend-shallow": { 4302 | "version": "2.0.1", 4303 | "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", 4304 | "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", 4305 | "dev": true, 4306 | "requires": { 4307 | "is-extendable": "^0.1.0" 4308 | } 4309 | } 4310 | } 4311 | }, 4312 | "snapdragon-node": { 4313 | "version": "2.1.1", 4314 | "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz", 4315 | "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", 4316 | "dev": true, 4317 | "requires": { 4318 | "define-property": "^1.0.0", 4319 | "isobject": "^3.0.0", 4320 | "snapdragon-util": "^3.0.1" 4321 | }, 4322 | "dependencies": { 4323 | "define-property": { 4324 | "version": "1.0.0", 4325 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", 4326 | "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", 4327 | "dev": true, 4328 | "requires": { 4329 | "is-descriptor": "^1.0.0" 4330 | } 4331 | }, 4332 | "is-accessor-descriptor": { 4333 | "version": "1.0.0", 4334 | "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz", 4335 | "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", 4336 | "dev": true, 4337 | "requires": { 4338 | "kind-of": "^6.0.0" 4339 | } 4340 | }, 4341 | "is-data-descriptor": { 4342 | "version": "1.0.0", 4343 | "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz", 4344 | "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", 4345 | "dev": true, 4346 | "requires": { 4347 | "kind-of": "^6.0.0" 4348 | } 4349 | }, 4350 | "is-descriptor": { 4351 | "version": "1.0.2", 4352 | "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz", 4353 | "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", 4354 | "dev": true, 4355 | "requires": { 4356 | "is-accessor-descriptor": "^1.0.0", 4357 | "is-data-descriptor": "^1.0.0", 4358 | "kind-of": "^6.0.2" 4359 | } 4360 | }, 4361 | "isobject": { 4362 | "version": "3.0.1", 4363 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 4364 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 4365 | "dev": true 4366 | }, 4367 | "kind-of": { 4368 | "version": "6.0.3", 4369 | "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", 4370 | "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", 4371 | "dev": true 4372 | } 4373 | } 4374 | }, 4375 | "snapdragon-util": { 4376 | "version": "3.0.1", 4377 | "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", 4378 | "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", 4379 | "dev": true, 4380 | "requires": { 4381 | "kind-of": "^3.2.0" 4382 | } 4383 | }, 4384 | "source-map": { 4385 | "version": "0.5.7", 4386 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", 4387 | "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", 4388 | "dev": true 4389 | }, 4390 | "source-map-resolve": { 4391 | "version": "0.5.3", 4392 | "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz", 4393 | "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", 4394 | "dev": true, 4395 | "requires": { 4396 | "atob": "^2.1.2", 4397 | "decode-uri-component": "^0.2.0", 4398 | "resolve-url": "^0.2.1", 4399 | "source-map-url": "^0.4.0", 4400 | "urix": "^0.1.0" 4401 | } 4402 | }, 4403 | "source-map-support": { 4404 | "version": "0.4.18", 4405 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", 4406 | "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", 4407 | "dev": true, 4408 | "requires": { 4409 | "source-map": "^0.5.6" 4410 | } 4411 | }, 4412 | "source-map-url": { 4413 | "version": "0.4.0", 4414 | "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.0.tgz", 4415 | "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", 4416 | "dev": true 4417 | }, 4418 | "spdx-correct": { 4419 | "version": "3.1.1", 4420 | "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", 4421 | "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", 4422 | "dev": true, 4423 | "requires": { 4424 | "spdx-expression-parse": "^3.0.0", 4425 | "spdx-license-ids": "^3.0.0" 4426 | } 4427 | }, 4428 | "spdx-exceptions": { 4429 | "version": "2.3.0", 4430 | "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", 4431 | "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", 4432 | "dev": true 4433 | }, 4434 | "spdx-expression-parse": { 4435 | "version": "3.0.1", 4436 | "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", 4437 | "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", 4438 | "dev": true, 4439 | "requires": { 4440 | "spdx-exceptions": "^2.1.0", 4441 | "spdx-license-ids": "^3.0.0" 4442 | } 4443 | }, 4444 | "spdx-license-ids": { 4445 | "version": "3.0.7", 4446 | "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", 4447 | "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", 4448 | "dev": true 4449 | }, 4450 | "split-string": { 4451 | "version": "3.1.0", 4452 | "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", 4453 | "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", 4454 | "dev": true, 4455 | "requires": { 4456 | "extend-shallow": "^3.0.0" 4457 | } 4458 | }, 4459 | "sprintf-js": { 4460 | "version": "1.0.3", 4461 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 4462 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 4463 | "dev": true 4464 | }, 4465 | "sshpk": { 4466 | "version": "1.16.1", 4467 | "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", 4468 | "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", 4469 | "dev": true, 4470 | "requires": { 4471 | "asn1": "~0.2.3", 4472 | "assert-plus": "^1.0.0", 4473 | "bcrypt-pbkdf": "^1.0.0", 4474 | "dashdash": "^1.12.0", 4475 | "ecc-jsbn": "~0.1.1", 4476 | "getpass": "^0.1.1", 4477 | "jsbn": "~0.1.0", 4478 | "safer-buffer": "^2.0.2", 4479 | "tweetnacl": "~0.14.0" 4480 | } 4481 | }, 4482 | "static-extend": { 4483 | "version": "0.1.2", 4484 | "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz", 4485 | "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", 4486 | "dev": true, 4487 | "requires": { 4488 | "define-property": "^0.2.5", 4489 | "object-copy": "^0.1.0" 4490 | }, 4491 | "dependencies": { 4492 | "define-property": { 4493 | "version": "0.2.5", 4494 | "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz", 4495 | "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", 4496 | "dev": true, 4497 | "requires": { 4498 | "is-descriptor": "^0.1.0" 4499 | } 4500 | } 4501 | } 4502 | }, 4503 | "string-length": { 4504 | "version": "2.0.0", 4505 | "resolved": "https://registry.npmjs.org/string-length/-/string-length-2.0.0.tgz", 4506 | "integrity": "sha1-1A27aGo6zpYMHP/KVivyxF+DY+0=", 4507 | "dev": true, 4508 | "requires": { 4509 | "astral-regex": "^1.0.0", 4510 | "strip-ansi": "^4.0.0" 4511 | } 4512 | }, 4513 | "string-width": { 4514 | "version": "2.1.1", 4515 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", 4516 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", 4517 | "dev": true, 4518 | "requires": { 4519 | "is-fullwidth-code-point": "^2.0.0", 4520 | "strip-ansi": "^4.0.0" 4521 | }, 4522 | "dependencies": { 4523 | "is-fullwidth-code-point": { 4524 | "version": "2.0.0", 4525 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", 4526 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", 4527 | "dev": true 4528 | } 4529 | } 4530 | }, 4531 | "string_decoder": { 4532 | "version": "1.1.1", 4533 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", 4534 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", 4535 | "dev": true, 4536 | "requires": { 4537 | "safe-buffer": "~5.1.0" 4538 | }, 4539 | "dependencies": { 4540 | "safe-buffer": { 4541 | "version": "5.1.2", 4542 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", 4543 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", 4544 | "dev": true 4545 | } 4546 | } 4547 | }, 4548 | "strip-ansi": { 4549 | "version": "4.0.0", 4550 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", 4551 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", 4552 | "dev": true, 4553 | "requires": { 4554 | "ansi-regex": "^3.0.0" 4555 | }, 4556 | "dependencies": { 4557 | "ansi-regex": { 4558 | "version": "3.0.0", 4559 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", 4560 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", 4561 | "dev": true 4562 | } 4563 | } 4564 | }, 4565 | "strip-bom": { 4566 | "version": "2.0.0", 4567 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", 4568 | "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", 4569 | "dev": true, 4570 | "requires": { 4571 | "is-utf8": "^0.2.0" 4572 | } 4573 | }, 4574 | "strip-eof": { 4575 | "version": "1.0.0", 4576 | "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", 4577 | "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", 4578 | "dev": true 4579 | }, 4580 | "subarg": { 4581 | "version": "1.0.0", 4582 | "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz", 4583 | "integrity": "sha1-9izxdYHplrSPyWVpn1TAauJouNI=", 4584 | "dev": true, 4585 | "requires": { 4586 | "minimist": "^1.1.0" 4587 | } 4588 | }, 4589 | "supports-color": { 4590 | "version": "5.5.0", 4591 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 4592 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 4593 | "dev": true, 4594 | "requires": { 4595 | "has-flag": "^3.0.0" 4596 | } 4597 | }, 4598 | "symbol-tree": { 4599 | "version": "3.2.4", 4600 | "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", 4601 | "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", 4602 | "dev": true 4603 | }, 4604 | "test-exclude": { 4605 | "version": "4.2.3", 4606 | "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-4.2.3.tgz", 4607 | "integrity": "sha512-SYbXgY64PT+4GAL2ocI3HwPa4Q4TBKm0cwAVeKOt/Aoc0gSpNRjJX8w0pA1LMKZ3LBmd8pYBqApFNQLII9kavA==", 4608 | "dev": true, 4609 | "requires": { 4610 | "arrify": "^1.0.1", 4611 | "micromatch": "^2.3.11", 4612 | "object-assign": "^4.1.0", 4613 | "read-pkg-up": "^1.0.1", 4614 | "require-main-filename": "^1.0.1" 4615 | } 4616 | }, 4617 | "throat": { 4618 | "version": "4.1.0", 4619 | "resolved": "https://registry.npmjs.org/throat/-/throat-4.1.0.tgz", 4620 | "integrity": "sha1-iQN8vJLFarGJJua6TLsgDhVnKmo=", 4621 | "dev": true 4622 | }, 4623 | "tmpl": { 4624 | "version": "1.0.4", 4625 | "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.4.tgz", 4626 | "integrity": "sha1-I2QN17QtAEM5ERQIIOXPRA5SHdE=", 4627 | "dev": true 4628 | }, 4629 | "to-fast-properties": { 4630 | "version": "1.0.3", 4631 | "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", 4632 | "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", 4633 | "dev": true 4634 | }, 4635 | "to-object-path": { 4636 | "version": "0.3.0", 4637 | "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz", 4638 | "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", 4639 | "dev": true, 4640 | "requires": { 4641 | "kind-of": "^3.0.2" 4642 | } 4643 | }, 4644 | "to-regex": { 4645 | "version": "3.0.2", 4646 | "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz", 4647 | "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", 4648 | "dev": true, 4649 | "requires": { 4650 | "define-property": "^2.0.2", 4651 | "extend-shallow": "^3.0.2", 4652 | "regex-not": "^1.0.2", 4653 | "safe-regex": "^1.1.0" 4654 | } 4655 | }, 4656 | "to-regex-range": { 4657 | "version": "2.1.1", 4658 | "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", 4659 | "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", 4660 | "dev": true, 4661 | "requires": { 4662 | "is-number": "^3.0.0", 4663 | "repeat-string": "^1.6.1" 4664 | }, 4665 | "dependencies": { 4666 | "is-number": { 4667 | "version": "3.0.0", 4668 | "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", 4669 | "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", 4670 | "dev": true, 4671 | "requires": { 4672 | "kind-of": "^3.0.2" 4673 | } 4674 | } 4675 | } 4676 | }, 4677 | "tough-cookie": { 4678 | "version": "2.5.0", 4679 | "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", 4680 | "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", 4681 | "dev": true, 4682 | "requires": { 4683 | "psl": "^1.1.28", 4684 | "punycode": "^2.1.1" 4685 | } 4686 | }, 4687 | "tr46": { 4688 | "version": "0.0.3", 4689 | "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", 4690 | "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=", 4691 | "dev": true 4692 | }, 4693 | "trim-right": { 4694 | "version": "1.0.1", 4695 | "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz", 4696 | "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=", 4697 | "dev": true 4698 | }, 4699 | "ts-jest": { 4700 | "version": "21.2.4", 4701 | "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-21.2.4.tgz", 4702 | "integrity": "sha512-Plk49Us+DcncpQcC8fhYwDUdhW96QB0Dv02etOLhzq+2HAvXfrEUys3teZ/BeyQ+r1rHxfGdNj4dB0Q5msZR3g==", 4703 | "dev": true, 4704 | "requires": { 4705 | "babel-core": "^6.24.1", 4706 | "babel-plugin-istanbul": "^4.1.4", 4707 | "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", 4708 | "babel-preset-jest": "^21.2.0", 4709 | "cpx": "^1.5.0", 4710 | "fs-extra": "^4.0.2", 4711 | "jest-config": "^21.2.1", 4712 | "pkg-dir": "^2.0.0", 4713 | "source-map-support": "^0.5.0", 4714 | "yargs": "^10.0.3" 4715 | }, 4716 | "dependencies": { 4717 | "cliui": { 4718 | "version": "4.1.0", 4719 | "resolved": "https://registry.npmjs.org/cliui/-/cliui-4.1.0.tgz", 4720 | "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", 4721 | "dev": true, 4722 | "requires": { 4723 | "string-width": "^2.1.1", 4724 | "strip-ansi": "^4.0.0", 4725 | "wrap-ansi": "^2.0.0" 4726 | } 4727 | }, 4728 | "source-map": { 4729 | "version": "0.6.1", 4730 | "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", 4731 | "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", 4732 | "dev": true 4733 | }, 4734 | "source-map-support": { 4735 | "version": "0.5.19", 4736 | "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", 4737 | "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", 4738 | "dev": true, 4739 | "requires": { 4740 | "buffer-from": "^1.0.0", 4741 | "source-map": "^0.6.0" 4742 | } 4743 | }, 4744 | "yargs": { 4745 | "version": "10.1.2", 4746 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-10.1.2.tgz", 4747 | "integrity": "sha512-ivSoxqBGYOqQVruxD35+EyCFDYNEFL/Uo6FcOnz+9xZdZzK0Zzw4r4KhbrME1Oo2gOggwJod2MnsdamSG7H9ig==", 4748 | "dev": true, 4749 | "requires": { 4750 | "cliui": "^4.0.0", 4751 | "decamelize": "^1.1.1", 4752 | "find-up": "^2.1.0", 4753 | "get-caller-file": "^1.0.1", 4754 | "os-locale": "^2.0.0", 4755 | "require-directory": "^2.1.1", 4756 | "require-main-filename": "^1.0.1", 4757 | "set-blocking": "^2.0.0", 4758 | "string-width": "^2.0.0", 4759 | "which-module": "^2.0.0", 4760 | "y18n": "^3.2.1", 4761 | "yargs-parser": "^8.1.0" 4762 | } 4763 | }, 4764 | "yargs-parser": { 4765 | "version": "8.1.0", 4766 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-8.1.0.tgz", 4767 | "integrity": "sha512-yP+6QqN8BmrgW2ggLtTbdrOyBNSI7zBa4IykmiV5R1wl1JWNxQvWhMfMdmzIYtKU7oP3OOInY/tl2ov3BDjnJQ==", 4768 | "dev": true, 4769 | "requires": { 4770 | "camelcase": "^4.1.0" 4771 | } 4772 | } 4773 | } 4774 | }, 4775 | "tunnel-agent": { 4776 | "version": "0.6.0", 4777 | "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", 4778 | "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", 4779 | "dev": true, 4780 | "requires": { 4781 | "safe-buffer": "^5.0.1" 4782 | } 4783 | }, 4784 | "tweetnacl": { 4785 | "version": "0.14.5", 4786 | "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", 4787 | "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", 4788 | "dev": true 4789 | }, 4790 | "type-check": { 4791 | "version": "0.3.2", 4792 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", 4793 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", 4794 | "dev": true, 4795 | "requires": { 4796 | "prelude-ls": "~1.1.2" 4797 | } 4798 | }, 4799 | "typescript": { 4800 | "version": "2.9.2", 4801 | "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", 4802 | "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", 4803 | "dev": true 4804 | }, 4805 | "uglify-js": { 4806 | "version": "3.12.1", 4807 | "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.12.1.tgz", 4808 | "integrity": "sha512-o8lHP20KjIiQe5b/67Rh68xEGRrc2SRsCuuoYclXXoC74AfSRGblU1HKzJWH3HxPZ+Ort85fWHpSX7KwBUC9CQ==", 4809 | "dev": true, 4810 | "optional": true 4811 | }, 4812 | "union-value": { 4813 | "version": "1.0.1", 4814 | "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz", 4815 | "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", 4816 | "dev": true, 4817 | "requires": { 4818 | "arr-union": "^3.1.0", 4819 | "get-value": "^2.0.6", 4820 | "is-extendable": "^0.1.1", 4821 | "set-value": "^2.0.1" 4822 | } 4823 | }, 4824 | "universalify": { 4825 | "version": "0.1.2", 4826 | "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", 4827 | "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", 4828 | "dev": true 4829 | }, 4830 | "unset-value": { 4831 | "version": "1.0.0", 4832 | "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz", 4833 | "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", 4834 | "dev": true, 4835 | "requires": { 4836 | "has-value": "^0.3.1", 4837 | "isobject": "^3.0.0" 4838 | }, 4839 | "dependencies": { 4840 | "has-value": { 4841 | "version": "0.3.1", 4842 | "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz", 4843 | "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", 4844 | "dev": true, 4845 | "requires": { 4846 | "get-value": "^2.0.3", 4847 | "has-values": "^0.1.4", 4848 | "isobject": "^2.0.0" 4849 | }, 4850 | "dependencies": { 4851 | "isobject": { 4852 | "version": "2.1.0", 4853 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", 4854 | "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", 4855 | "dev": true, 4856 | "requires": { 4857 | "isarray": "1.0.0" 4858 | } 4859 | } 4860 | } 4861 | }, 4862 | "has-values": { 4863 | "version": "0.1.4", 4864 | "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz", 4865 | "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=", 4866 | "dev": true 4867 | }, 4868 | "isobject": { 4869 | "version": "3.0.1", 4870 | "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", 4871 | "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", 4872 | "dev": true 4873 | } 4874 | } 4875 | }, 4876 | "uri-js": { 4877 | "version": "4.4.0", 4878 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.0.tgz", 4879 | "integrity": "sha512-B0yRTzYdUCCn9n+F4+Gh4yIDtMQcaJsmYBDsTSG8g/OejKBodLQ2IHfN3bM7jUsRXndopT7OIXWdYqc1fjmV6g==", 4880 | "dev": true, 4881 | "requires": { 4882 | "punycode": "^2.1.0" 4883 | } 4884 | }, 4885 | "urix": { 4886 | "version": "0.1.0", 4887 | "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz", 4888 | "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=", 4889 | "dev": true 4890 | }, 4891 | "use": { 4892 | "version": "3.1.1", 4893 | "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", 4894 | "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", 4895 | "dev": true 4896 | }, 4897 | "util-deprecate": { 4898 | "version": "1.0.2", 4899 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", 4900 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", 4901 | "dev": true 4902 | }, 4903 | "uuid": { 4904 | "version": "3.4.0", 4905 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", 4906 | "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", 4907 | "dev": true 4908 | }, 4909 | "validate-npm-package-license": { 4910 | "version": "3.0.4", 4911 | "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", 4912 | "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", 4913 | "dev": true, 4914 | "requires": { 4915 | "spdx-correct": "^3.0.0", 4916 | "spdx-expression-parse": "^3.0.0" 4917 | } 4918 | }, 4919 | "verror": { 4920 | "version": "1.10.0", 4921 | "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", 4922 | "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", 4923 | "dev": true, 4924 | "requires": { 4925 | "assert-plus": "^1.0.0", 4926 | "core-util-is": "1.0.2", 4927 | "extsprintf": "^1.2.0" 4928 | } 4929 | }, 4930 | "walker": { 4931 | "version": "1.0.7", 4932 | "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.7.tgz", 4933 | "integrity": "sha1-L3+bj9ENZ3JisYqITijRlhjgKPs=", 4934 | "dev": true, 4935 | "requires": { 4936 | "makeerror": "1.0.x" 4937 | } 4938 | }, 4939 | "watch": { 4940 | "version": "0.18.0", 4941 | "resolved": "https://registry.npmjs.org/watch/-/watch-0.18.0.tgz", 4942 | "integrity": "sha1-KAlUdsbffJDJYxOJkMClQj60uYY=", 4943 | "dev": true, 4944 | "requires": { 4945 | "exec-sh": "^0.2.0", 4946 | "minimist": "^1.2.0" 4947 | } 4948 | }, 4949 | "webidl-conversions": { 4950 | "version": "4.0.2", 4951 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-4.0.2.tgz", 4952 | "integrity": "sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==", 4953 | "dev": true 4954 | }, 4955 | "whatwg-encoding": { 4956 | "version": "1.0.5", 4957 | "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", 4958 | "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", 4959 | "dev": true, 4960 | "requires": { 4961 | "iconv-lite": "0.4.24" 4962 | } 4963 | }, 4964 | "whatwg-url": { 4965 | "version": "4.8.0", 4966 | "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-4.8.0.tgz", 4967 | "integrity": "sha1-0pgaqRSMHgCkHFphMRZqtGg7vMA=", 4968 | "dev": true, 4969 | "requires": { 4970 | "tr46": "~0.0.3", 4971 | "webidl-conversions": "^3.0.0" 4972 | }, 4973 | "dependencies": { 4974 | "webidl-conversions": { 4975 | "version": "3.0.1", 4976 | "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", 4977 | "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=", 4978 | "dev": true 4979 | } 4980 | } 4981 | }, 4982 | "which": { 4983 | "version": "1.3.1", 4984 | "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", 4985 | "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", 4986 | "dev": true, 4987 | "requires": { 4988 | "isexe": "^2.0.0" 4989 | } 4990 | }, 4991 | "which-module": { 4992 | "version": "2.0.0", 4993 | "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", 4994 | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", 4995 | "dev": true 4996 | }, 4997 | "word-wrap": { 4998 | "version": "1.2.3", 4999 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", 5000 | "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", 5001 | "dev": true 5002 | }, 5003 | "wordwrap": { 5004 | "version": "1.0.0", 5005 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", 5006 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", 5007 | "dev": true 5008 | }, 5009 | "worker-farm": { 5010 | "version": "1.7.0", 5011 | "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz", 5012 | "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==", 5013 | "dev": true, 5014 | "requires": { 5015 | "errno": "~0.1.7" 5016 | } 5017 | }, 5018 | "wrap-ansi": { 5019 | "version": "2.1.0", 5020 | "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", 5021 | "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", 5022 | "dev": true, 5023 | "requires": { 5024 | "string-width": "^1.0.1", 5025 | "strip-ansi": "^3.0.1" 5026 | }, 5027 | "dependencies": { 5028 | "string-width": { 5029 | "version": "1.0.2", 5030 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", 5031 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", 5032 | "dev": true, 5033 | "requires": { 5034 | "code-point-at": "^1.0.0", 5035 | "is-fullwidth-code-point": "^1.0.0", 5036 | "strip-ansi": "^3.0.0" 5037 | } 5038 | }, 5039 | "strip-ansi": { 5040 | "version": "3.0.1", 5041 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", 5042 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", 5043 | "dev": true, 5044 | "requires": { 5045 | "ansi-regex": "^2.0.0" 5046 | } 5047 | } 5048 | } 5049 | }, 5050 | "wrappy": { 5051 | "version": "1.0.2", 5052 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 5053 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 5054 | "dev": true 5055 | }, 5056 | "write-file-atomic": { 5057 | "version": "2.4.3", 5058 | "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", 5059 | "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", 5060 | "dev": true, 5061 | "requires": { 5062 | "graceful-fs": "^4.1.11", 5063 | "imurmurhash": "^0.1.4", 5064 | "signal-exit": "^3.0.2" 5065 | } 5066 | }, 5067 | "xml-name-validator": { 5068 | "version": "2.0.1", 5069 | "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-2.0.1.tgz", 5070 | "integrity": "sha1-TYuPHszTQZqjYgYb7O9RXh5VljU=", 5071 | "dev": true 5072 | }, 5073 | "y18n": { 5074 | "version": "3.2.1", 5075 | "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", 5076 | "integrity": "sha1-bRX7qITAhnnA136I53WegR4H+kE=", 5077 | "dev": true 5078 | }, 5079 | "yallist": { 5080 | "version": "2.1.2", 5081 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", 5082 | "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=", 5083 | "dev": true 5084 | }, 5085 | "yargs": { 5086 | "version": "9.0.1", 5087 | "resolved": "https://registry.npmjs.org/yargs/-/yargs-9.0.1.tgz", 5088 | "integrity": "sha1-UqzCP+7Kw0BCB47njAwAf1CF20w=", 5089 | "dev": true, 5090 | "requires": { 5091 | "camelcase": "^4.1.0", 5092 | "cliui": "^3.2.0", 5093 | "decamelize": "^1.1.1", 5094 | "get-caller-file": "^1.0.1", 5095 | "os-locale": "^2.0.0", 5096 | "read-pkg-up": "^2.0.0", 5097 | "require-directory": "^2.1.1", 5098 | "require-main-filename": "^1.0.1", 5099 | "set-blocking": "^2.0.0", 5100 | "string-width": "^2.0.0", 5101 | "which-module": "^2.0.0", 5102 | "y18n": "^3.2.1", 5103 | "yargs-parser": "^7.0.0" 5104 | }, 5105 | "dependencies": { 5106 | "load-json-file": { 5107 | "version": "2.0.0", 5108 | "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", 5109 | "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", 5110 | "dev": true, 5111 | "requires": { 5112 | "graceful-fs": "^4.1.2", 5113 | "parse-json": "^2.2.0", 5114 | "pify": "^2.0.0", 5115 | "strip-bom": "^3.0.0" 5116 | } 5117 | }, 5118 | "path-type": { 5119 | "version": "2.0.0", 5120 | "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", 5121 | "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", 5122 | "dev": true, 5123 | "requires": { 5124 | "pify": "^2.0.0" 5125 | } 5126 | }, 5127 | "pify": { 5128 | "version": "2.3.0", 5129 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", 5130 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", 5131 | "dev": true 5132 | }, 5133 | "read-pkg": { 5134 | "version": "2.0.0", 5135 | "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", 5136 | "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", 5137 | "dev": true, 5138 | "requires": { 5139 | "load-json-file": "^2.0.0", 5140 | "normalize-package-data": "^2.3.2", 5141 | "path-type": "^2.0.0" 5142 | } 5143 | }, 5144 | "read-pkg-up": { 5145 | "version": "2.0.0", 5146 | "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", 5147 | "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", 5148 | "dev": true, 5149 | "requires": { 5150 | "find-up": "^2.0.0", 5151 | "read-pkg": "^2.0.0" 5152 | } 5153 | }, 5154 | "strip-bom": { 5155 | "version": "3.0.0", 5156 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", 5157 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", 5158 | "dev": true 5159 | } 5160 | } 5161 | }, 5162 | "yargs-parser": { 5163 | "version": "7.0.0", 5164 | "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", 5165 | "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", 5166 | "dev": true, 5167 | "requires": { 5168 | "camelcase": "^4.1.0" 5169 | } 5170 | } 5171 | } 5172 | } 5173 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "subsink", 3 | "version": "1.0.2", 4 | "main": "dist/index.js", 5 | "es2015": "dist/es2015/index.js", 6 | "description": "RxJS subscription sink for unsubscribing gracefully in a component", 7 | "license": "MIT", 8 | "scripts": { 9 | "test": "jest", 10 | "test:watch": "jest --watch", 11 | "build": "rm -rf ./dist && tsc && tsc -p tsconfig.es2015.json", 12 | "prepublish": "rm -rf ./dist && npm test && npm run build" 13 | }, 14 | "jest": { 15 | "moduleFileExtensions": [ 16 | "ts", 17 | "js" 18 | ], 19 | "transform": { 20 | "\\.(ts)$": "/node_modules/ts-jest/preprocessor.js" 21 | }, 22 | "testRegex": "/__tests__/.*\\.(ts|js)$" 23 | }, 24 | "keywords": [ 25 | "RxJS unsubscribe", 26 | "Angular unsubscribe" 27 | ], 28 | "typings": "./dist/index.d.ts", 29 | "maintainers": [ 30 | "Ward Bell" 31 | ], 32 | "repository": { 33 | "url": "https://github.com/wardbell/subsink" 34 | }, 35 | "devDependencies": { 36 | "@types/jest": "^21.1.4", 37 | "jest": "^21.2.1", 38 | "ts-jest": "^21.1.3", 39 | "typescript": "^2.8.3" 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | export { SubSink } from "./subsink"; -------------------------------------------------------------------------------- /src/subsink.ts: -------------------------------------------------------------------------------- 1 | const isFunction = (fn: any) => typeof fn === 'function'; 2 | export type Nullable = T | null | undefined; 3 | 4 | export interface SubscriptionLike { 5 | unsubscribe(): void; 6 | } 7 | 8 | /** 9 | * Subscription sink that holds Observable subscriptions 10 | * until you call unsubscribe on it in ngOnDestroy. 11 | */ 12 | export class SubSink { 13 | 14 | protected _subs: Nullable[] = []; 15 | 16 | /** 17 | * Subscription sink that holds Observable subscriptions 18 | * until you call unsubscribe on it in ngOnDestroy. 19 | * 20 | * @example 21 | * In Angular: 22 | * ``` 23 | * private subs = new SubSink(); 24 | * ... 25 | * this.subs.sink = observable$.subscribe(...) 26 | * this.subs.add(observable$.subscribe(...)); 27 | * ... 28 | * ngOnDestroy() { 29 | * this.subs.unsubscribe(); 30 | * } 31 | * ``` 32 | */ 33 | constructor() {} 34 | 35 | /** 36 | * Add subscriptions to the tracked subscriptions 37 | * @example 38 | * this.subs.add(observable$.subscribe(...)); 39 | */ 40 | add(...subscriptions: Nullable[]) { 41 | this._subs = this._subs.concat(subscriptions); 42 | } 43 | 44 | /** 45 | * Assign subscription to this sink to add it to the tracked subscriptions 46 | * @example 47 | * this.subs.sink = observable$.subscribe(...); 48 | */ 49 | set sink(subscription: Nullable) { 50 | this._subs.push(subscription); 51 | } 52 | 53 | /** 54 | * Unsubscribe to all subscriptions in ngOnDestroy() 55 | * @example 56 | * ngOnDestroy() { 57 | * this.subs.unsubscribe(); 58 | * } 59 | */ 60 | unsubscribe() { 61 | this._subs.forEach(sub => sub && isFunction(sub.unsubscribe) && sub.unsubscribe()); 62 | this._subs = []; 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /tsconfig.es2015.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "./tsconfig.json", 3 | "compilerOptions": { 4 | "module": "ES2015", 5 | "outDir": "dist/es2015" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "CommonJS", 4 | "target": "es5", 5 | "noImplicitAny": true, 6 | "sourceMap": true, 7 | "moduleResolution": "node", 8 | "experimentalDecorators": true, 9 | "emitDecoratorMetadata": true, 10 | "declaration": true, 11 | "outDir": "dist/", 12 | "lib": [ 13 | "dom", 14 | "es2015", 15 | "es2017" 16 | ] 17 | }, 18 | "exclude": [ 19 | "node_modules", 20 | "lib", 21 | "__tests__", 22 | "dist" 23 | ] 24 | } 25 | --------------------------------------------------------------------------------