├── images ├── fog.png ├── rain.png ├── snow.png ├── wind.png ├── clear.png ├── cloudy.png ├── sleet.png ├── cloudy_s_sunny.png ├── partly-cloudy.png ├── thunderstorm.png ├── icons │ ├── icon-32x32.png │ ├── icon-128x128.png │ ├── icon-144x144.png │ ├── icon-152x152.png │ ├── icon-192x192.png │ └── icon-256x256.png ├── scattered-showers.png ├── cloudy-scattered-showers.png ├── ic_add_white_24px.svg └── ic_refresh_white_24px.svg ├── main-universal-entry.js ├── .gitignore ├── ngsw-manifest.json ├── main.ts ├── main-static.ts ├── tsconfig.json ├── src ├── weather │ ├── city-picker │ │ ├── index.ts │ │ ├── city-picker.html │ │ └── city-picker.css │ ├── index.ts │ ├── api.ts │ ├── weather-card │ │ ├── weather-card.html │ │ ├── index.ts │ │ └── weather-card.css │ ├── cities.ts │ └── data.ts ├── app.ts ├── app-browser.ts ├── root.html ├── storage.ts ├── root.ts ├── app-universal.ts └── root.css ├── tsconfig-esm.json ├── manifest.webmanifest ├── LICENSE ├── package.json ├── main-universal.ts ├── gulpfile.ts ├── index.html └── yarn.lock /images/fog.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/fog.png -------------------------------------------------------------------------------- /images/rain.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/rain.png -------------------------------------------------------------------------------- /images/snow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/snow.png -------------------------------------------------------------------------------- /images/wind.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/wind.png -------------------------------------------------------------------------------- /images/clear.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/clear.png -------------------------------------------------------------------------------- /images/cloudy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/cloudy.png -------------------------------------------------------------------------------- /images/sleet.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/sleet.png -------------------------------------------------------------------------------- /main-universal-entry.js: -------------------------------------------------------------------------------- 1 | require('ts-node/register'); 2 | require('./main-universal'); 3 | -------------------------------------------------------------------------------- /images/cloudy_s_sunny.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/cloudy_s_sunny.png -------------------------------------------------------------------------------- /images/partly-cloudy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/partly-cloudy.png -------------------------------------------------------------------------------- /images/thunderstorm.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/thunderstorm.png -------------------------------------------------------------------------------- /images/icons/icon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-32x32.png -------------------------------------------------------------------------------- /images/icons/icon-128x128.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-128x128.png -------------------------------------------------------------------------------- /images/icons/icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-144x144.png -------------------------------------------------------------------------------- /images/icons/icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-152x152.png -------------------------------------------------------------------------------- /images/icons/icon-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-192x192.png -------------------------------------------------------------------------------- /images/icons/icon-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/icons/icon-256x256.png -------------------------------------------------------------------------------- /images/scattered-showers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/scattered-showers.png -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /dist 2 | /ngfactory 3 | /node_modules 4 | /tmp 5 | /.firebaserc 6 | /firebase.json 7 | /database.rules.json 8 | -------------------------------------------------------------------------------- /images/cloudy-scattered-showers.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/alxhub/ng2-weather-pwa/HEAD/images/cloudy-scattered-showers.png -------------------------------------------------------------------------------- /ngsw-manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "routing": { 3 | "routes": { 4 | "/": { 5 | "prefix": false 6 | } 7 | }, 8 | "index": "/index.html" 9 | } 10 | } -------------------------------------------------------------------------------- /main.ts: -------------------------------------------------------------------------------- 1 | import {platformBrowserDynamic} from '@angular/platform-browser-dynamic'; 2 | import {AppBrowserModule} from './src/app-browser'; 3 | 4 | platformBrowserDynamic().bootstrapModule(AppBrowserModule); 5 | -------------------------------------------------------------------------------- /images/ic_add_white_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /main-static.ts: -------------------------------------------------------------------------------- 1 | import {platformBrowser} from '@angular/platform-browser'; 2 | import {AppBrowserModuleNgFactory} from './ngfactory/src/app-browser.ngfactory'; 3 | 4 | platformBrowser().bootstrapModuleFactory(AppBrowserModuleNgFactory); 5 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "emitDecoratorMetadata": true, 4 | "experimentalDecorators": true, 5 | "lib": [ 6 | "dom", 7 | "es2015" 8 | ], 9 | "module": "commonjs", 10 | "moduleResolution": "node", 11 | "target": "es5", 12 | "types": [ 13 | "node" 14 | ] 15 | }, 16 | "exclude": [ 17 | "node_modules" 18 | ] 19 | } -------------------------------------------------------------------------------- /images/ic_refresh_white_24px.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /src/weather/city-picker/index.ts: -------------------------------------------------------------------------------- 1 | import {Component, Output, EventEmitter, Input} from '@angular/core' 2 | import {WeatherData} from '../data' 3 | 4 | @Component({ 5 | moduleId: module.id, 6 | selector: 'city-picker', 7 | templateUrl: './city-picker.html', 8 | styleUrls: ['./city-picker.css'], 9 | }) 10 | export class CityPicker { 11 | @Input() cities: any[]; 12 | @Output() save = new EventEmitter(); 13 | @Output() cancel = new EventEmitter(); 14 | } -------------------------------------------------------------------------------- /src/app.ts: -------------------------------------------------------------------------------- 1 | import {AppShellModule} from '@angular/app-shell'; 2 | import {NgModule} from '@angular/core'; 3 | import {CommonModule} from '@angular/common'; 4 | 5 | import {RootComponent} from './root'; 6 | import {WeatherModule} from './weather'; 7 | 8 | @NgModule({ 9 | bootstrap: [RootComponent], 10 | declarations: [ 11 | RootComponent, 12 | ], 13 | imports: [ 14 | AppShellModule, 15 | CommonModule, 16 | WeatherModule, 17 | ], 18 | }) 19 | export class AppModule {} 20 | -------------------------------------------------------------------------------- /tsconfig-esm.json: -------------------------------------------------------------------------------- 1 | { 2 | "angularCompilerOptions": { 3 | "genDir": "ngfactory", 4 | "skipMetadataEmit": true 5 | }, 6 | "compilerOptions": { 7 | "emitDecoratorMetadata": true, 8 | "experimentalDecorators": true, 9 | "lib": [ 10 | "dom", 11 | "es2015" 12 | ], 13 | "module": "es2015", 14 | "moduleResolution": "node", 15 | "outDir": "tmp/ngc", 16 | "target": "es5", 17 | "types": [ 18 | "node" 19 | ] 20 | }, 21 | "files": [ 22 | "main.ts", 23 | "main-static.ts" 24 | ] 25 | } -------------------------------------------------------------------------------- /src/weather/city-picker/city-picker.html: -------------------------------------------------------------------------------- 1 |
2 |
Add new city
3 |
4 | 7 |
8 |
9 | 10 | 11 |
12 |
-------------------------------------------------------------------------------- /src/app-browser.ts: -------------------------------------------------------------------------------- 1 | import {AppShellModule} from '@angular/app-shell' 2 | import {NgModule} from '@angular/core'; 3 | import {BrowserModule} from '@angular/platform-browser'; 4 | 5 | import {AppModule} from './app'; 6 | import {RootComponent} from './root'; 7 | import {WeatherAPI} from './weather/api'; 8 | import {Storage, LocalStorage} from './storage'; 9 | 10 | @NgModule({ 11 | bootstrap: [RootComponent], 12 | imports: [ 13 | BrowserModule, 14 | AppShellModule.runtime(), 15 | AppModule, 16 | ], 17 | providers: [ 18 | WeatherAPI, 19 | {provide: Storage, useClass: LocalStorage}, 20 | ] 21 | }) 22 | export class AppBrowserModule {} -------------------------------------------------------------------------------- /src/weather/index.ts: -------------------------------------------------------------------------------- 1 | import {NgModule} from '@angular/core'; 2 | import {CommonModule} from '@angular/common'; 3 | import {CityPicker} from './city-picker'; 4 | import {WeatherCard} from './weather-card'; 5 | import {WeatherData} from './data'; 6 | 7 | export * from './city-picker'; 8 | export * from './weather-card'; 9 | 10 | export const WEATHER_COMPONENTS = [ 11 | CityPicker, 12 | WeatherCard, 13 | ]; 14 | 15 | @NgModule({ 16 | declarations: WEATHER_COMPONENTS, 17 | exports: WEATHER_COMPONENTS, 18 | imports: [ 19 | CommonModule, 20 | ], 21 | providers: [ 22 | WeatherData, 23 | ] 24 | }) 25 | export class WeatherModule {} 26 | -------------------------------------------------------------------------------- /src/root.html: -------------------------------------------------------------------------------- 1 |
2 |

Weather PWA

3 | 4 | 5 |
6 | 7 |
8 | 9 |
10 |
11 |

Loading...

12 |
13 |
14 | 15 |
16 | -------------------------------------------------------------------------------- /src/storage.ts: -------------------------------------------------------------------------------- 1 | import {Injectable} from '@angular/core'; 2 | 3 | export abstract class Storage { 4 | abstract getItem(key: string): string; 5 | abstract setItem(key: string, value: string): void; 6 | } 7 | 8 | @Injectable() 9 | export class LocalStorage implements Storage { 10 | getItem(key: string): string { 11 | return localStorage.getItem(key); 12 | } 13 | setItem(key: string, value: string): void { 14 | 15 | localStorage.setItem(key, value); 16 | } 17 | } 18 | 19 | @Injectable() 20 | export class InMemoryStorage implements Storage { 21 | private data: {[key: string]: string} = {}; 22 | 23 | getItem(key: string): string { 24 | return this.data[key] || null; 25 | } 26 | 27 | setItem(key: string, value: string): void { 28 | this.data[key] = value; 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /manifest.webmanifest: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Ng2 Weather PWA", 3 | "short_name": "Ng2Weather", 4 | "display": "standalone", 5 | "orientation": "portrait", 6 | "icons": [{ 7 | "src": "images/icons/icon-32x32.png", 8 | "sizes": "32x32", 9 | "type": "image/png" 10 | }, { 11 | "src": "images/icons/icon-128x128.png", 12 | "sizes": "128x128", 13 | "type": "image/png" 14 | }, { 15 | "src": "images/icons/icon-144x144.png", 16 | "sizes": "144x144", 17 | "type": "image/png" 18 | }, { 19 | "src": "images/icons/icon-152x152.png", 20 | "sizes": "152x152", 21 | "type": "image/png" 22 | }, { 23 | "src": "images/icons/icon-192x192.png", 24 | "sizes": "192x192", 25 | "type": "image/png" 26 | }, { 27 | "src": "images/icons/icon-256x256.png", 28 | "sizes": "256x256", 29 | "type": "image/png" 30 | }] 31 | } -------------------------------------------------------------------------------- /src/root.ts: -------------------------------------------------------------------------------- 1 | import {Component, Renderer, ViewChild, QueryList, ElementRef, AfterViewInit, NgZone, ApplicationRef} from '@angular/core' 2 | 3 | import {WeatherData} from './weather/data' 4 | import 'rxjs/add/operator/do'; 5 | 6 | @Component({ 7 | moduleId: module.id, 8 | selector: 'ngw-root', 9 | templateUrl: './root.html', 10 | styleUrls: ['./root.css'], 11 | }) 12 | export class RootComponent { 13 | viewState = {} 14 | cities = []; 15 | constructor(public weatherData:WeatherData){ 16 | weatherData.cities 17 | .do(cities => console.log('cities', cities)) 18 | .subscribe((cities: any[]) => this.cities = cities); 19 | } 20 | 21 | showPicker(){ 22 | this.setDialogState(true); 23 | } 24 | addCity(city){ 25 | this.setDialogState(false); 26 | this.weatherData.addCity(city); 27 | } 28 | onCancel(event){ 29 | this.setDialogState(false); 30 | } 31 | refresh(){ 32 | this.weatherData.refreshData(); 33 | } 34 | private setDialogState(show:boolean){ 35 | this.viewState['dialog-container--visible'] = show; 36 | } 37 | } -------------------------------------------------------------------------------- /src/weather/city-picker/city-picker.css: -------------------------------------------------------------------------------- 1 | .dialog { 2 | background: #FFF; 3 | border-radius: 2px; 4 | box-shadow: 0 0 14px rgba(0, 0, 0, 0.24), 0 14px 28px rgba(0, 0, 0, 0.48); 5 | min-width: 280px; 6 | position: absolute; 7 | left: 50%; 8 | top: 50%; 9 | -webkit-transform: translate(-50%, -50%) translateY(30px); 10 | transform: translate(-50%, -50%) translateY(30px); 11 | -webkit-transition: -webkit-transform 0.333s cubic-bezier(0, 0, 0.21, 1) 0.05s; 12 | transition: -webkit-transform 0.333s cubic-bezier(0, 0, 0.21, 1) 0.05s; 13 | transition: transform 0.333s cubic-bezier(0, 0, 0.21, 1) 0.05s; 14 | transition: transform 0.333s cubic-bezier(0, 0, 0.21, 1) 0.05s, -webkit-transform 0.333s cubic-bezier(0, 0, 0.21, 1) 0.05s; } 15 | 16 | .dialog > div { 17 | padding-left: 24px; 18 | padding-right: 24px; } 19 | 20 | .dialog-title { 21 | padding-top: 20px; 22 | font-size: 1.25em; } 23 | 24 | .dialog-body { 25 | padding-top: 20px; 26 | padding-bottom: 24px; } 27 | .dialog-body select { 28 | width: 100%; 29 | font-size: 2em; } 30 | 31 | .dialog-buttons { 32 | padding: 8px !important; 33 | float: right; } -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License 2 | 3 | Copyright (c) 2014-2016 Google, Inc. http://angular.io 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in 13 | all copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 21 | THE SOFTWARE. 22 | -------------------------------------------------------------------------------- /src/app-universal.ts: -------------------------------------------------------------------------------- 1 | import {AppShellModule} from '@angular/app-shell'; 2 | import {ModuleWithProviders, NgModule, Injectable} from '@angular/core'; 3 | import {UniversalModule, parseDocument} from 'angular2-universal/node'; 4 | import {Observable} from 'rxjs/Observable'; 5 | import 'rxjs/add/observable/of'; 6 | 7 | import {AppModule} from './app'; 8 | import {RootComponent} from './root'; 9 | import {WeatherAPI} from './weather/api'; 10 | import {CITIES} from './weather/cities'; 11 | import {Storage, InMemoryStorage} from './storage'; 12 | 13 | @Injectable() 14 | export class FakeWeatherApi implements WeatherAPI { 15 | 16 | fetchCities(): Observable { 17 | return Observable.of(CITIES); 18 | } 19 | 20 | fetchCity(city: string): Observable { 21 | return Observable.of({}); 22 | } 23 | } 24 | 25 | @NgModule({ 26 | bootstrap: [RootComponent], 27 | imports: [ 28 | AppShellModule.prerender(), 29 | AppModule, 30 | UniversalModule.withConfig({ 31 | originUrl: 'http://localhost:8080', 32 | requestUrl: '/', 33 | }) as any as ModuleWithProviders, 34 | ], 35 | providers: [ 36 | {provide: WeatherAPI, useClass: FakeWeatherApi}, 37 | {provide: Storage, useClass: InMemoryStorage}, 38 | ], 39 | }) 40 | export class AppUniversalModule {} -------------------------------------------------------------------------------- /src/weather/api.ts: -------------------------------------------------------------------------------- 1 | import {Injectable} from '@angular/core'; 2 | import {Observable} from 'rxjs/Observable'; 3 | 4 | const WEATHER_URL = (path = '') => `https://publicdata-weather.firebaseio.com/${path}.json`; 5 | 6 | const getJSON = url => { 7 | return new Observable(observer => { 8 | let xhr = new XMLHttpRequest(); 9 | 10 | let onReadyStateChange = () => { 11 | if (xhr.readyState === XMLHttpRequest.DONE){ 12 | if(xhr.status === 200){ 13 | observer.next(JSON.parse(xhr.response)); 14 | observer.complete(); 15 | return; 16 | } 17 | observer.error(xhr.response); 18 | } 19 | } 20 | let onError = (err) => observer.error(err); 21 | xhr.addEventListener('readystatechange', onReadyStateChange); 22 | xhr.addEventListener('error', onError); 23 | xhr.open('GET', url); 24 | xhr.send(); 25 | return _ => { 26 | xhr.addEventListener('readystatechange', onReadyStateChange); 27 | xhr.addEventListener('error', onError); 28 | xhr.abort(); 29 | } 30 | }); 31 | } 32 | 33 | @Injectable() 34 | export class WeatherAPI { 35 | fetchCities(){ 36 | return getJSON(`${WEATHER_URL()}?sparse=true`); 37 | } 38 | fetchCity(cityName){ 39 | return getJSON(WEATHER_URL(cityName)); 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ng2-pwa-weather", 3 | "version": "0.0.1", 4 | "description": "", 5 | "main": "index.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1" 8 | }, 9 | "author": "", 10 | "license": "MIT", 11 | "dependencies": { 12 | "@angular/app-shell": "^0.1.0", 13 | "@angular/common": "^2.1.0", 14 | "@angular/compiler": "^2.1.0", 15 | "@angular/compiler-cli": "^2.1.0", 16 | "@angular/core": "^2.1.0", 17 | "@angular/forms": "^2.1.0", 18 | "@angular/http": "^2.1.0", 19 | "@angular/material": "^2.0.0-alpha.9-3", 20 | "@angular/platform-browser": "^2.1.0", 21 | "@angular/platform-browser-dynamic": "^2.1.0", 22 | "@angular/service-worker": "^0.7.1", 23 | "@types/node": "^6.0.45", 24 | "angular2-universal": "^2.1.0-rc.1", 25 | "angular2-universal-polyfills": "^2.1.0-rc.1", 26 | "global": "^4.3.1", 27 | "google-closure-compiler-js": "^20160916.0.0", 28 | "gulp": "^3.9.1", 29 | "reflect-metadata": "^0.1.8", 30 | "rollup": "^0.36.3", 31 | "rollup-plugin-commonjs": "^5.0.5", 32 | "rollup-plugin-node-resolve": "^2.0.0", 33 | "run-sequence": "^1.2.2", 34 | "rxjs": "^5.0.0-rc.1", 35 | "rxjs-es": "^5.0.0-beta.12", 36 | "ts-node": "^1.4.3", 37 | "typescript": "^2.0.3", 38 | "uglifyjs": "^2.4.10", 39 | "zone.js": "^0.6.25" 40 | } 41 | } 42 | -------------------------------------------------------------------------------- /src/weather/weather-card/weather-card.html: -------------------------------------------------------------------------------- 1 |
2 | 3 |
{{name}}
4 |
Loading...
5 |
6 | 7 |
8 | 9 |
{{name}}
10 |
{{time}}
11 |
{{summary}}
12 |
13 |
14 |
15 |
16 | {{temperature}}°F 17 |
18 |
19 |
20 |
21 | {{apparentTemp}}°F 22 |
23 |
{{probability}}%
24 |
{{humidity}}%
25 |
26 | {{windSpeed}} 27 | mph 28 | {{windBearing}}° 29 |
30 |
31 |
32 |
33 |
34 |
{{day.day}}
35 |
36 |
37 | {{day.max}}° 38 |
39 |
40 | {{day.min}}° 41 |
42 |
43 |
44 |
-------------------------------------------------------------------------------- /main-universal.ts: -------------------------------------------------------------------------------- 1 | import 'angular2-universal-polyfills'; 2 | import 'zone.js/dist/zone-node.js' 3 | import 'reflect-metadata'; 4 | 5 | import * as fs from 'fs'; 6 | 7 | import {CompilerOptions, COMPILER_OPTIONS} from '@angular/core'; 8 | import {ResourceLoader} from '@angular/compiler'; 9 | import {platformUniversalDynamic, REQUEST_URL} from 'angular2-universal/node'; 10 | import {AppUniversalModule} from './src/app-universal'; 11 | // from './ngfactory/src/app-universal.ngfactory'; 12 | 13 | export class FileResourceLoader implements ResourceLoader { 14 | get(path: string): Promise { 15 | return new Promise((resolve, reject) => { 16 | fs.exists(path, exists => { 17 | if (!exists) { 18 | return reject(new Error(`Compilation failed. Resource file not found: ${path}`)) 19 | } 20 | fs.readFile(path, 'utf8', (err, data) => { 21 | if (err) { 22 | return reject(new Error(`Compilation failed. Read error for file: ${path}: ${err}`)); 23 | } 24 | return resolve(data); 25 | }); 26 | }); 27 | }); 28 | } 29 | } 30 | 31 | let document = fs.readFileSync('index.html').toString(); 32 | 33 | declare var Zone; 34 | Zone.current.fork({ 35 | name: 'universal', 36 | properties: {document} 37 | }).run(() => { 38 | platformUniversalDynamic([{ 39 | provide: COMPILER_OPTIONS, 40 | useValue: { 41 | providers: [{provide: ResourceLoader, useValue: new FileResourceLoader()}], 42 | } as CompilerOptions, 43 | multi: true, 44 | }]) 45 | .serializeModule(AppUniversalModule, { 46 | preboot: false 47 | }) 48 | .then(html => { 49 | try { 50 | fs.mkdirSync('tmp/app-shell'); 51 | } catch (e) {} 52 | fs.writeFileSync('tmp/app-shell/index.html', html, {encoding: 'utf8'}); 53 | }); 54 | }); 55 | -------------------------------------------------------------------------------- /src/weather/weather-card/index.ts: -------------------------------------------------------------------------------- 1 | import {Component, Input} from '@angular/core' 2 | 3 | export interface CurrentConditions { 4 | icon: string; 5 | } 6 | 7 | const daysOfWeek = ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']; 8 | 9 | export interface City { 10 | currently:CurrentConditions; 11 | daily:any; 12 | flags:any; 13 | name:string; 14 | } 15 | 16 | @Component({ 17 | moduleId: module.id, 18 | selector: 'weather-card', 19 | templateUrl: './weather-card.html', 20 | styleUrls: ['./weather-card.css'], 21 | }) 22 | export class WeatherCard { 23 | name:string; 24 | time: Date; 25 | icon: any; 26 | temperature: number; 27 | apparentTemp: number; 28 | loading: boolean = false; 29 | summary: string; 30 | probability: number; 31 | humidity: number; 32 | windSpeed: number; 33 | windBearing:string; 34 | forecast: any[]; 35 | 36 | @Input() set city(city){ 37 | this.name = city.name; 38 | if(city['currently']){ 39 | this.updateConditions(city); 40 | } 41 | }; 42 | 43 | private updateConditions(city){ 44 | this.time = new Date(city['currently']['time'] * 1000); 45 | this.icon = city['currently'].icon; 46 | this.temperature = Math.round(city['currently']['temperature']); 47 | this.apparentTemp = Math.round(city['currently']['apparentTemperature']); 48 | this.summary = city['currently']['summary']; 49 | this.probability = city['currently']['precipProbability'] * 100; 50 | this.humidity = city['currently']['humidity'] * 100; 51 | this.windSpeed = city['currently']['windSpeed']; 52 | this.windBearing = city['currently']['windBearing']; 53 | 54 | this.forecast = city['daily']['data'] 55 | .filter((day, i) => i < 7) 56 | .map((day,i) => { 57 | let time = new Date(day['time'] * 1000); 58 | day.day = daysOfWeek[time.getDay()]; 59 | day.max = Math.round(day['temperatureMax']); 60 | day.min = Math.round(day['temperatureMin']); 61 | return day; 62 | }); 63 | 64 | } 65 | } 66 | -------------------------------------------------------------------------------- /src/weather/cities.ts: -------------------------------------------------------------------------------- 1 | export const CITIES =[ 2 | { 3 | "key": "austin", 4 | "name": "Austin" 5 | }, 6 | { 7 | "key": "baltimore", 8 | "name": "Baltimore" 9 | }, 10 | { 11 | "key": "boston", 12 | "name": "Boston" 13 | }, 14 | { 15 | "key": "charlotte", 16 | "name": "Charlotte" 17 | }, 18 | { 19 | "key": "chicago", 20 | "name": "Chicago" 21 | }, 22 | { 23 | "key": "columbus", 24 | "name": "Columbus" 25 | }, 26 | { 27 | "key": "dallas", 28 | "name": "Dallas" 29 | }, 30 | { 31 | "key": "denver", 32 | "name": "Denver" 33 | }, 34 | { 35 | "key": "detroit", 36 | "name": "Detroit" 37 | }, 38 | { 39 | "key": "elpaso", 40 | "name": "El Paso" 41 | }, 42 | { 43 | "key": "fortworth", 44 | "name": "Fort Worth" 45 | }, 46 | { 47 | "key": "houston", 48 | "name": "Houston" 49 | }, 50 | { 51 | "key": "indianapolis", 52 | "name": "Indianapolis" 53 | }, 54 | { 55 | "key": "jacksonville", 56 | "name": "Jacksonville" 57 | }, 58 | { 59 | "key": "lasvegas", 60 | "name": "Las Vegas" 61 | }, 62 | { 63 | "key": "losangeles", 64 | "name": "Los Angeles" 65 | }, 66 | { 67 | "key": "memphis", 68 | "name": "Memphis" 69 | }, 70 | { 71 | "key": "milwaukee", 72 | "name": "Milwaukee" 73 | }, 74 | { 75 | "key": "nashville", 76 | "name": "Nashville" 77 | }, 78 | { 79 | "key": "newyork", 80 | "name": "New York" 81 | }, 82 | { 83 | "key": "oklahomacity", 84 | "name": "Oklahoma City" 85 | }, 86 | { 87 | "key": "philadelphia", 88 | "name": "Philadelphia" 89 | }, 90 | { 91 | "key": "phoenix", 92 | "name": "Phoenix" 93 | }, 94 | { 95 | "key": "portland", 96 | "name": "Portland" 97 | }, 98 | { 99 | "key": "sanantonio", 100 | "name": "San Antonio" 101 | }, 102 | { 103 | "key": "sandiego", 104 | "name": "San Diego" 105 | }, 106 | { 107 | "key": "sanfrancisco", 108 | "name": "San Francisco" 109 | }, 110 | { 111 | "key": "sanjose", 112 | "name": "San Jose" 113 | }, 114 | { 115 | "key": "seattle", 116 | "name": "Seattle" 117 | }, 118 | { 119 | "key": "tucson", 120 | "name": "Tucson" 121 | }, 122 | { 123 | "key": "washington", 124 | "name": "Washington" 125 | } 126 | ]; 127 | -------------------------------------------------------------------------------- /src/weather/data.ts: -------------------------------------------------------------------------------- 1 | import {Injectable} from '@angular/core' 2 | import {CITIES} from './cities' 3 | import {WeatherAPI} from './api' 4 | import {BehaviorSubject} from 'rxjs/BehaviorSubject' 5 | import {Subject} from 'rxjs/Subject' 6 | import 'rxjs/add/operator/map' 7 | import 'rxjs/add/operator/scan' 8 | import 'rxjs/add/operator/do' 9 | import 'rxjs/add/operator/mergeMap' 10 | import 'rxjs/add/operator/concatMap' 11 | import 'rxjs/add/operator/take' 12 | 13 | import {Storage} from '../storage'; 14 | 15 | @Injectable() 16 | export class WeatherData { 17 | allCities: any[]; 18 | cities: BehaviorSubject; 19 | actions = new Subject(); 20 | constructor(private api:WeatherAPI, private storage: Storage){ 21 | let savedData: any[] = this._getSavedState() || [{key: 'austin'}]; 22 | this.cities = new BehaviorSubject(savedData); 23 | this.allCities = CITIES; 24 | this.actions 25 | .scan(this._updateState, savedData) 26 | .do(state => this._saveState(state)) 27 | .forEach((state: any[]) => this.cities.next(state)); 28 | 29 | this.refreshData(); 30 | } 31 | 32 | addCity(key) { 33 | let city = this.allCities.find(c => c.key === key); 34 | this.actions.next({type: 'ADD_CITY', payload: city}); 35 | this.getCityData(city) 36 | .map(payload => ({type: 'UPDATE_CITY', payload: payload})) 37 | .subscribe(action => this.actions.next(action)); 38 | } 39 | private getCityData(city) { 40 | console.log(city['key']) 41 | return this.api.fetchCity(city['key']) 42 | .map(cityData => Object.assign({}, cityData, city)); 43 | } 44 | deleteCity(key) { 45 | this.actions.next({type: 'DELETE_CITY', payload: key}); 46 | } 47 | 48 | refreshData() { 49 | this.cities 50 | .take(1) 51 | .flatMap(cities => cities) 52 | .concatMap(city => this.getCityData(city)) 53 | .map(payload => ({type: 'UPDATE_CITY', payload: payload})) 54 | .subscribe(action => this.actions.next(action)) 55 | } 56 | 57 | private _saveState(state): void { 58 | this.storage.setItem('weather_data', JSON.stringify(state)); 59 | } 60 | 61 | private _getSavedState(): any[] { 62 | return JSON.parse(this.storage.getItem('weather_data')); 63 | } 64 | 65 | private _updateState(state, action): any[] { 66 | switch (action.type) { 67 | case 'ADD_CITY': 68 | let exists = state.find(city => city.key === action.payload.key); 69 | if(exists){ 70 | return state; 71 | } 72 | return state.concat([action.payload]); 73 | case 'DELETE_CITY': 74 | return state.filter(city => city.key !== action.payload); 75 | case 'UPDATE_CITY': 76 | return state.map(city => city.key === action.payload.key ? Object.assign({}, city, action.payload) : city); 77 | default: 78 | break; 79 | } 80 | return state; 81 | } 82 | } -------------------------------------------------------------------------------- /gulpfile.ts: -------------------------------------------------------------------------------- 1 | const commonJs = require('rollup-plugin-commonjs'); 2 | const childProcess = require('child_process'); 3 | const fs = require('fs'); 4 | const gulp = require('gulp'); 5 | const nodeResolve = require('rollup-plugin-node-resolve'); 6 | const rimraf = require('rimraf'); 7 | const rollup = require('rollup'); 8 | const runSequence = require('run-sequence'); 9 | const closure = require('google-closure-compiler-js'); 10 | 11 | class RollupRx { 12 | resolveId(id, from){ 13 | if(id.startsWith('rxjs/')){ 14 | return `${__dirname}/node_modules/rxjs-es/${id.split('rxjs/').pop()}.js`; 15 | } 16 | } 17 | } 18 | 19 | function closureCompilerPlugin(options: any = {}){ 20 | return { 21 | transformBundle(bundle){ 22 | const compilation = Object.assign({}, options, { 23 | jsCode: options.jsCode ? options.jsCode.concat({ src: bundle }) : [{ src: bundle }] 24 | }); 25 | console.log('closure compiler optimizing...'); 26 | const transformed = closure.compile(compilation); 27 | console.log('closure compiler optimizing complete'); 28 | return { code: transformed.compiledCode, map: transformed.sourceMap }; 29 | } 30 | } 31 | } 32 | 33 | import {gulpGenerateManifest, gulpAddStaticFiles} from '@angular/service-worker/build'; 34 | 35 | gulp.task('build', done => runSequence( 36 | 'task:clean', 37 | 'task:ngc', 38 | 'task:rollup', 39 | 'task:shell', 40 | [ 41 | 'task:static', 42 | 'task:images', 43 | ], 44 | 'task:service-worker', 45 | 'task:worker-script', 46 | done 47 | )); 48 | 49 | gulp.task('task:clean', done => { 50 | rimraf('tmp', () => rimraf('dist', () => done())); 51 | }); 52 | 53 | gulp.task('task:ngc', () => { 54 | childProcess.execSync('./node_modules/.bin/ngc -p tsconfig-esm.json'); 55 | }); 56 | 57 | gulp.task('task:rollup', done => { 58 | rollup 59 | .rollup({ 60 | entry: 'tmp/ngc/main-static.js', 61 | plugins: [ 62 | new RollupRx(), 63 | nodeResolve({jsnext: true, main: true}), 64 | commonJs({ 65 | include: 'node_modules/**', 66 | exclude: ['node_modules/rxjs/**'], 67 | namedExports: { 68 | 'node_modules/angular2-universal/browser.js': ['UniversalModule', 'prebootComplete', 'platformUniversalDynamic'], 69 | } 70 | }), 71 | closureCompilerPlugin({ compilationLevel: 'SIMPLE' }), 72 | ], 73 | }) 74 | .then(bundle => bundle.write({ 75 | format: 'iife', 76 | dest: 'tmp/rollup/app.js', 77 | })) 78 | .then(() => done(), err => console.error('output error', err)); 79 | }); 80 | 81 | gulp.task('task:uglifyjs', () => { 82 | fs.mkdirSync('tmp/uglifyjs'); 83 | childProcess.execSync('node_modules/.bin/uglifyjs -m --screw-ie8 tmp/rollup/app.js -o tmp/uglifyjs/app.min.js') 84 | }) 85 | 86 | gulp.task('task:worker-script', () => gulp 87 | .src([ 88 | 'node_modules/@angular/service-worker/bundles/worker-basic.js', 89 | ]) 90 | .pipe(gulp.dest('dist')) 91 | ); 92 | 93 | gulp.task('task:static', () => gulp 94 | .src([ 95 | 'manifest.webmanifest', 96 | 'node_modules/zone.js/dist/zone.js', 97 | 'tmp/app-shell/index.html', 98 | 'tmp/rollup/app.js', 99 | ]) 100 | .pipe(gulp.dest('dist')) 101 | ); 102 | 103 | gulp.task('task:images', () => gulp 104 | .src([ 105 | 'images/**/*.*', 106 | ]) 107 | .pipe(gulp.dest('dist/images')) 108 | ); 109 | 110 | gulp.task('task:shell', () => { 111 | childProcess.execSync('node ./main-universal-entry.js'); 112 | }); 113 | 114 | gulp.task('task:service-worker', () => gulp 115 | .src('ngsw-manifest.json') 116 | .pipe(gulpAddStaticFiles(gulp.src([ 117 | 'dist/**/*.*' 118 | ]), {manifestKey: 'static'})) 119 | .pipe(gulp.dest('dist')) 120 | ); 121 | -------------------------------------------------------------------------------- /src/weather/weather-card/weather-card.css: -------------------------------------------------------------------------------- 1 | :host { 2 | display: block; 3 | padding: 16px; 4 | position: relative; 5 | box-sizing: border-box; 6 | background: #fff; 7 | border-radius: 2px; 8 | margin: 16px; 9 | box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 1px 5px 0 rgba(0, 0, 0, 0.12); } 10 | 11 | .weather-forecast .location { 12 | font-size: 1.75em; } 13 | 14 | .weather-forecast .date, .weather-forecast .description { 15 | font-size: 1.25em; } 16 | 17 | .weather-forecast .current { 18 | display: -webkit-box; 19 | display: -webkit-flex; 20 | display: -ms-flexbox; 21 | display: flex; } 22 | .weather-forecast .current .icon { 23 | width: 128px; 24 | height: 128px; } 25 | .weather-forecast .current .visual { 26 | display: -webkit-box; 27 | display: -webkit-flex; 28 | display: -ms-flexbox; 29 | display: flex; 30 | font-size: 4em; } 31 | .weather-forecast .current .visual .scale { 32 | font-size: 0.5em; 33 | vertical-align: super; } 34 | .weather-forecast .current .visual, .weather-forecast .current .description { 35 | -webkit-box-flex: 1; 36 | -webkit-flex-grow: 1; 37 | -ms-flex-positive: 1; 38 | flex-grow: 1; } 39 | .weather-forecast .current .feels-like:before { 40 | content: "Feels like: "; 41 | color: #888; } 42 | .weather-forecast .current .wind:before { 43 | content: "Wind: "; 44 | color: #888; } 45 | .weather-forecast .current .precip:before { 46 | content: "Precipitation: "; 47 | color: #888; } 48 | .weather-forecast .current .humidity:before { 49 | content: "Humidity: "; 50 | color: #888; } 51 | .weather-forecast .current .pollen:before { 52 | content: "Pollen Count: "; 53 | color: #888; } 54 | .weather-forecast .current .pcount:before { 55 | content: "Pollen "; 56 | color: #888; } 57 | 58 | .weather-forecast .future { 59 | display: -webkit-box; 60 | display: -webkit-flex; 61 | display: -ms-flexbox; 62 | display: flex; } 63 | .weather-forecast .future .oneday { 64 | -webkit-box-flex: 1; 65 | -webkit-flex-grow: 1; 66 | -ms-flex-positive: 1; 67 | flex-grow: 1; 68 | text-align: center; } 69 | .weather-forecast .future .oneday .icon { 70 | width: 64px; 71 | height: 64px; 72 | margin-left: auto; 73 | margin-right: auto; } 74 | .weather-forecast .future .oneday .temp-high, .weather-forecast .future .oneday .temp-low { 75 | display: inline-block; } 76 | .weather-forecast .future .oneday .temp-low { 77 | color: #888; } 78 | 79 | .weather-forecast .icon { 80 | background-repeat: no-repeat; 81 | background-size: contain; } 82 | .weather-forecast .icon.clear-day { 83 | background-image: url("/images/clear.png"); } 84 | .weather-forecast .icon.clear-night { 85 | background-image: url("/images/clear.png"); } 86 | .weather-forecast .icon.rain { 87 | background-image: url("/images/rain.png"); } 88 | .weather-forecast .icon.snow { 89 | background-image: url("/images/snow.png"); } 90 | .weather-forecast .icon.sleet { 91 | background-image: url("/images/sleet.png"); } 92 | .weather-forecast .icon.wind { 93 | background-image: url("/images/wind.png"); } 94 | .weather-forecast .icon.fog { 95 | background-image: url("/images/fog.png"); } 96 | .weather-forecast .icon.cloudy { 97 | background-image: url("/images/cloudy.png"); } 98 | .weather-forecast .icon.partly-cloudy-day { 99 | background-image: url("/images/partly-cloudy.png"); } 100 | .weather-forecast .icon.partly-cloudy-night { 101 | background-image: url("/images/partly-cloudy.png"); } 102 | .weather-forecast .icon.thunderstorms { 103 | background-image: url("/images/thunderstorms.png"); } 104 | 105 | @media (max-width: 450px) { 106 | .weather-forecast .date, .weather-forecast .description { 107 | font-size: 0.9em; } 108 | .weather-forecast .current .icon { 109 | width: 96px; 110 | height: 96px; } 111 | .weather-forecast .current .visual { 112 | font-size: 3em; } 113 | .weather-forecast .future .oneday .icon { 114 | width: 32px; 115 | height: 32px; } } -------------------------------------------------------------------------------- /src/root.css: -------------------------------------------------------------------------------- 1 | .loader { 2 | left: 50%; 3 | top: 50%; 4 | position: fixed; 5 | -webkit-transform: translate(-50%, -50%); 6 | transform: translate(-50%, -50%); } 7 | .loader #spinner { 8 | box-sizing: border-box; 9 | stroke: #673AB7; 10 | stroke-width: 3px; 11 | -webkit-transform-origin: 50%; 12 | transform-origin: 50%; 13 | -webkit-animation: line 1.6s cubic-bezier(0.4, 0, 0.2, 1) infinite, rotate 1.6s linear infinite; 14 | animation: line 1.6s cubic-bezier(0.4, 0, 0.2, 1) infinite, rotate 1.6s linear infinite; } 15 | 16 | @-webkit-keyframes rotate { 17 | from { 18 | -webkit-transform: rotate(0); 19 | transform: rotate(0); } 20 | to { 21 | -webkit-transform: rotate(450deg); 22 | transform: rotate(450deg); } } 23 | 24 | @keyframes rotate { 25 | from { 26 | -webkit-transform: rotate(0); 27 | transform: rotate(0); } 28 | to { 29 | -webkit-transform: rotate(450deg); 30 | transform: rotate(450deg); } } 31 | 32 | @-webkit-keyframes line { 33 | 0% { 34 | stroke-dasharray: 2, 85.964; 35 | -webkit-transform: rotate(0); 36 | transform: rotate(0); } 37 | 50% { 38 | stroke-dasharray: 65.973, 21.9911; 39 | stroke-dashoffset: 0; } 40 | 100% { 41 | stroke-dasharray: 2, 85.964; 42 | stroke-dashoffset: -65.973; 43 | -webkit-transform: rotate(90deg); 44 | transform: rotate(90deg); } } 45 | 46 | @keyframes line { 47 | 0% { 48 | stroke-dasharray: 2, 85.964; 49 | -webkit-transform: rotate(0); 50 | transform: rotate(0); } 51 | 50% { 52 | stroke-dasharray: 65.973, 21.9911; 53 | stroke-dashoffset: 0; } 54 | 100% { 55 | stroke-dasharray: 2, 85.964; 56 | stroke-dashoffset: -65.973; 57 | -webkit-transform: rotate(90deg); 58 | transform: rotate(90deg); } } 59 | 60 | .main { 61 | padding-top: 60px; 62 | -webkit-box-flex: 1; 63 | -webkit-flex: 1; 64 | -ms-flex: 1; 65 | flex: 1; 66 | overflow-x: hidden; 67 | overflow-y: scroll; 68 | -webkit-overflow-scrolling: touch; } 69 | 70 | 71 | .dialog-container { 72 | background: rgba(0, 0, 0, 0.57); 73 | position: fixed; 74 | left: 0; 75 | top: 0; 76 | width: 100%; 77 | height: 100%; 78 | opacity: 0; 79 | pointer-events: none; 80 | will-change: opacity; 81 | -webkit-transition: opacity 0.333s cubic-bezier(0, 0, 0.21, 1); 82 | transition: opacity 0.333s cubic-bezier(0, 0, 0.21, 1); } 83 | 84 | .dialog-container--visible { 85 | opacity: 1; 86 | pointer-events: auto; } 87 | 88 | .mdl-button { 89 | background: transparent; 90 | border: none; 91 | border-radius: 2px; 92 | color: black; 93 | position: relative; 94 | height: 36px; 95 | margin: 0; 96 | min-width: 64px; 97 | padding: 0 16px; 98 | display: inline-block; 99 | font-family: "Roboto", "Helvetica", "Arial", sans-serif; 100 | font-size: 14px; 101 | font-weight: 500; 102 | text-transform: uppercase; 103 | line-height: 1; 104 | letter-spacing: 0; 105 | overflow: hidden; 106 | will-change: box-shadow; 107 | -webkit-transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); 108 | transition: box-shadow 0.2s cubic-bezier(0.4, 0, 1, 1), background-color 0.2s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s cubic-bezier(0.4, 0, 0.2, 1); 109 | outline: none; 110 | cursor: pointer; 111 | text-decoration: none; 112 | text-align: center; 113 | line-height: 36px; 114 | vertical-align: middle; } 115 | .mdl-button::-moz-focus-inner { 116 | border: 0; } 117 | .mdl-button:hover { 118 | background-color: rgba(158, 158, 158, 0.2); } 119 | .mdl-button:focus:not(:active) { 120 | background-color: rgba(0, 0, 0, 0.12); } 121 | .mdl-button:active { 122 | background-color: rgba(158, 158, 158, 0.4); } 123 | .mdl-button.mdl-button--colored { 124 | color: #3f51b5; } 125 | .mdl-button.mdl-button--colored:focus:not(:active) { 126 | background-color: rgba(0, 0, 0, 0.12); } 127 | 128 | .mdl-button--primary.mdl-button--primary { 129 | color: #3f51b5; } 130 | .mdl-button--primary.mdl-button--primary .mdl-ripple { 131 | background: white; } 132 | .mdl-button--primary.mdl-button--primary.mdl-button--raised, .mdl-button--primary.mdl-button--primary.mdl-button--fab { 133 | color: white; 134 | background-color: #3f51b5; } -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 116 | 119 | 120 | 121 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | "@angular/app-shell": 4 | version "0.1.0" 5 | resolved "https://registry.yarnpkg.com/@angular/app-shell/-/app-shell-0.1.0.tgz#070f0944db3c79910c644b923643cee5836779f7" 6 | 7 | "@angular/common": 8 | version "2.1.0" 9 | resolved "https://registry.yarnpkg.com/@angular/common/-/common-2.1.0.tgz#159037ee8ea5b75951cbcb371749504b535f2c2d" 10 | 11 | "@angular/compiler": 12 | version "2.1.0" 13 | resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-2.1.0.tgz#1388e1b6adadb4495e1cb5f0fa5322728de0d003" 14 | 15 | "@angular/compiler-cli": 16 | version "2.1.0" 17 | resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-2.1.0.tgz#9678e4104265f2a8313672562309a63e360784e1" 18 | dependencies: 19 | "@angular/tsc-wrapped" "^0.3.0" 20 | minimist "^1.2.0" 21 | reflect-metadata "^0.1.2" 22 | 23 | "@angular/core": 24 | version "2.1.0" 25 | resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.1.0.tgz#a2fdb0f76f72e5ac521feadd4d119f60afff2bd3" 26 | 27 | "@angular/core@~2.2.0": 28 | version "2.2.1" 29 | resolved "https://registry.yarnpkg.com/@angular/core/-/core-2.2.1.tgz#86fdc34a370a4fcfe84ed9de4b3c43548612919c" 30 | 31 | "@angular/forms": 32 | version "2.1.0" 33 | resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-2.1.0.tgz#89b2684c176c32e954bf78ce15dffad269138c25" 34 | 35 | "@angular/http": 36 | version "2.1.0" 37 | resolved "https://registry.yarnpkg.com/@angular/http/-/http-2.1.0.tgz#19aad01f791aa1e3794863d21b35bc377ce76987" 38 | 39 | "@angular/material": 40 | version "2.0.0-alpha.9-3" 41 | resolved "https://registry.yarnpkg.com/@angular/material/-/material-2.0.0-alpha.9-3.tgz#77e0f6a790069b2b9d48bff3eab78b5a59d244a0" 42 | dependencies: 43 | "@types/hammerjs" "^2.0.30" 44 | 45 | "@angular/platform-browser": 46 | version "2.1.0" 47 | resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-2.1.0.tgz#f53b2234a460def5f9e718bb812b91a0a5f6c1e7" 48 | 49 | "@angular/platform-browser-dynamic": 50 | version "2.1.0" 51 | resolved "https://registry.yarnpkg.com/@angular/platform-browser-dynamic/-/platform-browser-dynamic-2.1.0.tgz#05de532f46bbfdf80a603768e994f33c2ddf73e7" 52 | 53 | "@angular/service-worker": 54 | version "0.7.1" 55 | resolved "https://registry.yarnpkg.com/@angular/service-worker/-/service-worker-0.7.1.tgz#6e71d9895159079205c7c5765bdf28262c415d30" 56 | dependencies: 57 | "@angular/core" "~2.2.0" 58 | base64-js "^1.1.2" 59 | jshashes "^1.0.5" 60 | protractor "^4.0.10" 61 | webdriver-manager "^10.2.6" 62 | 63 | "@angular/tsc-wrapped@^0.3.0": 64 | version "0.3.0" 65 | resolved "https://registry.yarnpkg.com/@angular/tsc-wrapped/-/tsc-wrapped-0.3.0.tgz#98cdeb5c38d145b187c0ad0397a8d98b217f33f2" 66 | dependencies: 67 | tsickle "^0.1.7" 68 | 69 | "@types/hammerjs@^2.0.30": 70 | version "2.0.33" 71 | resolved "https://registry.yarnpkg.com/@types/hammerjs/-/hammerjs-2.0.33.tgz#45f57352474181425bb4b65f7313a60426d54bab" 72 | 73 | "@types/jasmine@^2.5.36": 74 | version "2.5.38" 75 | resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.5.38.tgz#a4379124c4921d4e21de54ec74669c9e9b356717" 76 | 77 | "@types/node": 78 | version "6.0.45" 79 | resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.45.tgz#c4842a9d653d767831e4ff495b6008cc0d579966" 80 | 81 | "@types/node@^6.0.46": 82 | version "6.0.48" 83 | resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.48.tgz#86ccc15f66b73cbbc5eb3483398936c585122b3c" 84 | 85 | "@types/q@^0.0.32": 86 | version "0.0.32" 87 | resolved "https://registry.yarnpkg.com/@types/q/-/q-0.0.32.tgz#bd284e57c84f1325da702babfc82a5328190c0c5" 88 | 89 | "@types/selenium-webdriver@~2.53.31": 90 | version "2.53.35" 91 | resolved "https://registry.yarnpkg.com/@types/selenium-webdriver/-/selenium-webdriver-2.53.35.tgz#a0c4b5f090bde48ba9ed16e4d43a5b99112c72fb" 92 | 93 | abbrev@1: 94 | version "1.0.9" 95 | resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.0.9.tgz#91b4792588a7738c25f35dd6f63752a2f8776135" 96 | 97 | acorn@^4.0.1: 98 | version "4.0.3" 99 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-4.0.3.tgz#1a3e850b428e73ba6b09d1cc527f5aaad4d03ef1" 100 | 101 | adm-zip@^0.4.7, adm-zip@0.4.7: 102 | version "0.4.7" 103 | resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.7.tgz#8606c2cbf1c426ce8c8ec00174447fd49b6eafc1" 104 | 105 | adm-zip@0.4.4: 106 | version "0.4.4" 107 | resolved "https://registry.yarnpkg.com/adm-zip/-/adm-zip-0.4.4.tgz#a61ed5ae6905c3aea58b3a657d25033091052736" 108 | 109 | agent-base@2: 110 | version "2.0.1" 111 | resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-2.0.1.tgz#bd8f9e86a8eb221fffa07bd14befd55df142815e" 112 | dependencies: 113 | extend "~3.0.0" 114 | semver "~5.0.1" 115 | 116 | amdefine@>=0.0.4: 117 | version "1.0.0" 118 | resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.0.tgz#fd17474700cb5cc9c2b709f0be9d23ce3c198c33" 119 | 120 | angular2-platform-node@~2.1.0-rc.1: 121 | version "2.1.0-rc.1" 122 | resolved "https://registry.yarnpkg.com/angular2-platform-node/-/angular2-platform-node-2.1.0-rc.1.tgz#ab92d093951ffeede4f1570aec8de1a454b91645" 123 | dependencies: 124 | css "^2.2.1" 125 | parse5 "^2.2.1" 126 | preboot "4.5.2" 127 | 128 | angular2-universal: 129 | version "2.1.0-rc.1" 130 | resolved "https://registry.yarnpkg.com/angular2-universal/-/angular2-universal-2.1.0-rc.1.tgz#8cd5f5288014b15d86eb18829c2f6ef3f841c80b" 131 | dependencies: 132 | angular2-platform-node "~2.1.0-rc.1" 133 | css "^2.2.1" 134 | js-beautify "^1.6.4" 135 | parse5 "^2.2.1" 136 | preboot "4.5.2" 137 | xhr2 "^0.1.3" 138 | 139 | angular2-universal-polyfills: 140 | version "2.1.0-rc.1" 141 | resolved "https://registry.yarnpkg.com/angular2-universal-polyfills/-/angular2-universal-polyfills-2.1.0-rc.1.tgz#d14a2bdec567cd94baba6161c7c5e7d5edc1210e" 142 | dependencies: 143 | es6-promise "~3.0.2" 144 | es6-shim "~0.35.0" 145 | ie-shim "^0.1.0" 146 | reflect-metadata "0.1.2" 147 | 148 | ansi-regex@^2.0.0: 149 | version "2.0.0" 150 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.0.0.tgz#c5061b6e0ef8a81775e50f5d66151bf6bf371107" 151 | 152 | ansi-styles@^2.2.1: 153 | version "2.2.1" 154 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" 155 | 156 | any-promise@^1.3.0: 157 | version "1.3.0" 158 | resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" 159 | 160 | archy@^1.0.0: 161 | version "1.0.0" 162 | resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" 163 | 164 | arr-diff@^2.0.0: 165 | version "2.0.0" 166 | resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-2.0.0.tgz#8f3b827f955a8bd669697e4a4256ac3ceae356cf" 167 | dependencies: 168 | arr-flatten "^1.0.1" 169 | 170 | arr-flatten@^1.0.1: 171 | version "1.0.1" 172 | resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.0.1.tgz#e5ffe54d45e19f32f216e91eb99c8ce892bb604b" 173 | 174 | array-differ@^1.0.0: 175 | version "1.0.0" 176 | resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-1.0.0.tgz#eff52e3758249d33be402b8bb8e564bb2b5d4031" 177 | 178 | array-find-index@^1.0.1: 179 | version "1.0.2" 180 | resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" 181 | 182 | array-union@^1.0.1: 183 | version "1.0.2" 184 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" 185 | dependencies: 186 | array-uniq "^1.0.1" 187 | 188 | array-uniq@^1.0.1, array-uniq@^1.0.2: 189 | version "1.0.3" 190 | resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" 191 | 192 | array-unique@^0.2.1: 193 | version "0.2.1" 194 | resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.2.1.tgz#a1d97ccafcbc2625cc70fadceb36a50c58b01a53" 195 | 196 | arrify@^1.0.0: 197 | version "1.0.1" 198 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 199 | 200 | asn1@~0.2.3: 201 | version "0.2.3" 202 | resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.3.tgz#dac8787713c9966849fc8180777ebe9c1ddf3b86" 203 | 204 | assert-plus@^0.2.0: 205 | version "0.2.0" 206 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" 207 | 208 | assert-plus@^1.0.0: 209 | version "1.0.0" 210 | resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" 211 | 212 | async@~0.2.6: 213 | version "0.2.10" 214 | resolved "https://registry.yarnpkg.com/async/-/async-0.2.10.tgz#b6bbe0b0674b9d719708ca38de8c237cb526c3d1" 215 | 216 | asynckit@^0.4.0: 217 | version "0.4.0" 218 | resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" 219 | 220 | atob@~1.1.0: 221 | version "1.1.3" 222 | resolved "https://registry.yarnpkg.com/atob/-/atob-1.1.3.tgz#95f13629b12c3a51a5d215abdce2aa9f32f80773" 223 | 224 | aws-sign2@~0.6.0: 225 | version "0.6.0" 226 | resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" 227 | 228 | aws4@^1.2.1: 229 | version "1.5.0" 230 | resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.5.0.tgz#0a29ffb79c31c9e712eeb087e8e7a64b4a56d755" 231 | 232 | balanced-match@^0.4.1: 233 | version "0.4.2" 234 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-0.4.2.tgz#cb3f3e3c732dc0f01ee70b403f302e61d7709838" 235 | 236 | base64-js@^1.1.2: 237 | version "1.2.0" 238 | resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.2.0.tgz#a39992d723584811982be5e290bb6a53d86700f1" 239 | 240 | bcrypt-pbkdf@^1.0.0: 241 | version "1.0.0" 242 | resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.0.tgz#3ca76b85241c7170bf7d9703e7b9aa74630040d4" 243 | dependencies: 244 | tweetnacl "^0.14.3" 245 | 246 | beeper@^1.0.0: 247 | version "1.1.0" 248 | resolved "https://registry.yarnpkg.com/beeper/-/beeper-1.1.0.tgz#9ee6fc1ce7f54feaace7ce73588b056037866a2c" 249 | 250 | bluebird@^3.0.5: 251 | version "3.4.6" 252 | resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.4.6.tgz#01da8d821d87813d158967e743d5fe6c62cf8c0f" 253 | 254 | boom@2.x.x: 255 | version "2.10.1" 256 | resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" 257 | dependencies: 258 | hoek "2.x.x" 259 | 260 | brace-expansion@^1.0.0: 261 | version "1.1.6" 262 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.6.tgz#7197d7eaa9b87e648390ea61fc66c84427420df9" 263 | dependencies: 264 | balanced-match "^0.4.1" 265 | concat-map "0.0.1" 266 | 267 | braces@^1.8.2: 268 | version "1.8.5" 269 | resolved "https://registry.yarnpkg.com/braces/-/braces-1.8.5.tgz#ba77962e12dff969d6b76711e914b737857bf6a7" 270 | dependencies: 271 | expand-range "^1.8.1" 272 | preserve "^0.2.0" 273 | repeat-element "^1.1.2" 274 | 275 | browser-resolve@^1.11.0: 276 | version "1.11.2" 277 | resolved "https://registry.yarnpkg.com/browser-resolve/-/browser-resolve-1.11.2.tgz#8ff09b0a2c421718a1051c260b32e48f442938ce" 278 | dependencies: 279 | resolve "1.1.7" 280 | 281 | builtin-modules@^1.0.0, builtin-modules@^1.1.0: 282 | version "1.1.1" 283 | resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f" 284 | 285 | camelcase-keys@^2.0.0: 286 | version "2.1.0" 287 | resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" 288 | dependencies: 289 | camelcase "^2.0.0" 290 | map-obj "^1.0.0" 291 | 292 | camelcase@^2.0.0: 293 | version "2.1.1" 294 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" 295 | 296 | caseless@~0.11.0: 297 | version "0.11.0" 298 | resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" 299 | 300 | chalk@*, chalk@^1.0.0, chalk@^1.1.1, chalk@^1.1.3: 301 | version "1.1.3" 302 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" 303 | dependencies: 304 | ansi-styles "^2.2.1" 305 | escape-string-regexp "^1.0.2" 306 | has-ansi "^2.0.0" 307 | strip-ansi "^3.0.0" 308 | supports-color "^2.0.0" 309 | 310 | clone-stats@^0.0.1: 311 | version "0.0.1" 312 | resolved "https://registry.yarnpkg.com/clone-stats/-/clone-stats-0.0.1.tgz#b88f94a82cf38b8791d58046ea4029ad88ca99d1" 313 | 314 | clone@^0.2.0: 315 | version "0.2.0" 316 | resolved "https://registry.yarnpkg.com/clone/-/clone-0.2.0.tgz#c6126a90ad4f72dbf5acdb243cc37724fe93fc1f" 317 | 318 | clone@^1.0.0, clone@^1.0.2: 319 | version "1.0.2" 320 | resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.2.tgz#260b7a99ebb1edfe247538175f783243cb19d149" 321 | 322 | combined-stream@^1.0.5, combined-stream@~1.0.5: 323 | version "1.0.5" 324 | resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.5.tgz#938370a57b4a51dea2c77c15d5c5fdf895164009" 325 | dependencies: 326 | delayed-stream "~1.0.0" 327 | 328 | commander@^2.9.0: 329 | version "2.9.0" 330 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.9.0.tgz#9c99094176e12240cb22d6c5146098400fe0f7d4" 331 | dependencies: 332 | graceful-readlink ">= 1.0.0" 333 | 334 | concat-map@0.0.1: 335 | version "0.0.1" 336 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 337 | 338 | config-chain@~1.1.5: 339 | version "1.1.11" 340 | resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.11.tgz#aba09747dfbe4c3e70e766a6e41586e1859fc6f2" 341 | dependencies: 342 | ini "^1.3.4" 343 | proto-list "~1.2.1" 344 | 345 | core-util-is@~1.0.0: 346 | version "1.0.2" 347 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" 348 | 349 | cryptiles@2.x.x: 350 | version "2.0.5" 351 | resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" 352 | dependencies: 353 | boom "2.x.x" 354 | 355 | css@^2.2.1: 356 | version "2.2.1" 357 | resolved "https://registry.yarnpkg.com/css/-/css-2.2.1.tgz#73a4c81de85db664d4ee674f7d47085e3b2d55dc" 358 | dependencies: 359 | inherits "^2.0.1" 360 | source-map "^0.1.38" 361 | source-map-resolve "^0.3.0" 362 | urix "^0.1.0" 363 | 364 | currently-unhandled@^0.4.1: 365 | version "0.4.1" 366 | resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" 367 | dependencies: 368 | array-find-index "^1.0.1" 369 | 370 | dashdash@^1.12.0: 371 | version "1.14.0" 372 | resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.0.tgz#29e486c5418bf0f356034a993d51686a33e84141" 373 | dependencies: 374 | assert-plus "^1.0.0" 375 | 376 | dateformat@^1.0.11: 377 | version "1.0.12" 378 | resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-1.0.12.tgz#9f124b67594c937ff706932e4a642cca8dbbfee9" 379 | dependencies: 380 | get-stdin "^4.0.1" 381 | meow "^3.3.0" 382 | 383 | debug@2: 384 | version "2.3.2" 385 | resolved "https://registry.yarnpkg.com/debug/-/debug-2.3.2.tgz#94cb466ef7d6d2c7e5245cdd6e4104f2d0d70d30" 386 | dependencies: 387 | ms "0.7.2" 388 | 389 | decamelize@^1.1.2: 390 | version "1.2.0" 391 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 392 | 393 | defaults@^1.0.0: 394 | version "1.0.3" 395 | resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" 396 | dependencies: 397 | clone "^1.0.2" 398 | 399 | del@^2.2.0: 400 | version "2.2.2" 401 | resolved "https://registry.yarnpkg.com/del/-/del-2.2.2.tgz#c12c981d067846c84bcaf862cff930d907ffd1a8" 402 | dependencies: 403 | globby "^5.0.0" 404 | is-path-cwd "^1.0.0" 405 | is-path-in-cwd "^1.0.0" 406 | object-assign "^4.0.1" 407 | pify "^2.0.0" 408 | pinkie-promise "^2.0.0" 409 | rimraf "^2.2.8" 410 | 411 | delayed-stream@~1.0.0: 412 | version "1.0.0" 413 | resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" 414 | 415 | deprecated@^0.0.1: 416 | version "0.0.1" 417 | resolved "https://registry.yarnpkg.com/deprecated/-/deprecated-0.0.1.tgz#f9c9af5464afa1e7a971458a8bdef2aa94d5bb19" 418 | 419 | detect-file@^0.1.0: 420 | version "0.1.0" 421 | resolved "https://registry.yarnpkg.com/detect-file/-/detect-file-0.1.0.tgz#4935dedfd9488648e006b0129566e9386711ea63" 422 | dependencies: 423 | fs-exists-sync "^0.1.0" 424 | 425 | diff@^3.0.0: 426 | version "3.0.1" 427 | resolved "https://registry.yarnpkg.com/diff/-/diff-3.0.1.tgz#a52d90cc08956994be00877bff97110062582c35" 428 | 429 | dom-walk@^0.1.0: 430 | version "0.1.1" 431 | resolved "https://registry.yarnpkg.com/dom-walk/-/dom-walk-0.1.1.tgz#672226dc74c8f799ad35307df936aba11acd6018" 432 | 433 | duplexer2@0.0.2: 434 | version "0.0.2" 435 | resolved "https://registry.yarnpkg.com/duplexer2/-/duplexer2-0.0.2.tgz#c614dcf67e2fb14995a91711e5a617e8a60a31db" 436 | dependencies: 437 | readable-stream "~1.1.9" 438 | 439 | ecc-jsbn@~0.1.1: 440 | version "0.1.1" 441 | resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" 442 | dependencies: 443 | jsbn "~0.1.0" 444 | 445 | editorconfig@^0.13.2: 446 | version "0.13.2" 447 | resolved "https://registry.yarnpkg.com/editorconfig/-/editorconfig-0.13.2.tgz#8e57926d9ee69ab6cb999f027c2171467acceb35" 448 | dependencies: 449 | bluebird "^3.0.5" 450 | commander "^2.9.0" 451 | lru-cache "^3.2.0" 452 | sigmund "^1.0.1" 453 | 454 | end-of-stream@~0.1.5: 455 | version "0.1.5" 456 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-0.1.5.tgz#8e177206c3c80837d85632e8b9359dfe8b2f6eaf" 457 | dependencies: 458 | once "~1.3.0" 459 | 460 | error-ex@^1.2.0: 461 | version "1.3.0" 462 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.0.tgz#e67b43f3e82c96ea3a584ffee0b9fc3325d802d9" 463 | dependencies: 464 | is-arrayish "^0.2.1" 465 | 466 | es6-promise@~3.0.2: 467 | version "3.0.2" 468 | resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.0.2.tgz#010d5858423a5f118979665f46486a95c6ee2bb6" 469 | 470 | es6-shim@~0.35.0: 471 | version "0.35.1" 472 | resolved "https://registry.yarnpkg.com/es6-shim/-/es6-shim-0.35.1.tgz#a23524009005b031ab4a352ac196dfdfd1144ab7" 473 | 474 | escape-string-regexp@^1.0.2: 475 | version "1.0.5" 476 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 477 | 478 | estree-walker@^0.2.1: 479 | version "0.2.1" 480 | resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-0.2.1.tgz#bdafe8095383d8414d5dc2ecf4c9173b6db9412e" 481 | 482 | exit@^0.1.2: 483 | version "0.1.2" 484 | resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" 485 | 486 | expand-brackets@^0.1.4: 487 | version "0.1.5" 488 | resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" 489 | dependencies: 490 | is-posix-bracket "^0.1.0" 491 | 492 | expand-range@^1.8.1: 493 | version "1.8.2" 494 | resolved "https://registry.yarnpkg.com/expand-range/-/expand-range-1.8.2.tgz#a299effd335fe2721ebae8e257ec79644fc85337" 495 | dependencies: 496 | fill-range "^2.1.0" 497 | 498 | expand-tilde@^1.2.1, expand-tilde@^1.2.2: 499 | version "1.2.2" 500 | resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-1.2.2.tgz#0b81eba897e5a3d31d1c3d102f8f01441e559449" 501 | dependencies: 502 | os-homedir "^1.0.1" 503 | 504 | extend@^3.0.0, extend@~3.0.0, extend@3: 505 | version "3.0.0" 506 | resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.0.tgz#5a474353b9f3353ddd8176dfd37b91c83a46f1d4" 507 | 508 | extglob@^0.3.1: 509 | version "0.3.2" 510 | resolved "https://registry.yarnpkg.com/extglob/-/extglob-0.3.2.tgz#2e18ff3d2f49ab2765cec9023f011daa8d8349a1" 511 | dependencies: 512 | is-extglob "^1.0.0" 513 | 514 | extsprintf@1.0.2: 515 | version "1.0.2" 516 | resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.0.2.tgz#e1080e0658e300b06294990cc70e1502235fd550" 517 | 518 | fancy-log@^1.1.0: 519 | version "1.2.0" 520 | resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.2.0.tgz#d5a51b53e9ab22ca07d558f2b67ae55fdb5fcbd8" 521 | dependencies: 522 | chalk "^1.1.1" 523 | time-stamp "^1.0.0" 524 | 525 | filename-regex@^2.0.0: 526 | version "2.0.0" 527 | resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.0.tgz#996e3e80479b98b9897f15a8a58b3d084e926775" 528 | 529 | fill-range@^2.1.0: 530 | version "2.2.3" 531 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-2.2.3.tgz#50b77dfd7e469bc7492470963699fe7a8485a723" 532 | dependencies: 533 | is-number "^2.1.0" 534 | isobject "^2.0.0" 535 | randomatic "^1.1.3" 536 | repeat-element "^1.1.2" 537 | repeat-string "^1.5.2" 538 | 539 | find-index@^0.1.1: 540 | version "0.1.1" 541 | resolved "https://registry.yarnpkg.com/find-index/-/find-index-0.1.1.tgz#675d358b2ca3892d795a1ab47232f8b6e2e0dde4" 542 | 543 | find-up@^1.0.0: 544 | version "1.1.2" 545 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" 546 | dependencies: 547 | path-exists "^2.0.0" 548 | pinkie-promise "^2.0.0" 549 | 550 | findup-sync@^0.4.2: 551 | version "0.4.3" 552 | resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-0.4.3.tgz#40043929e7bc60adf0b7f4827c4c6e75a0deca12" 553 | dependencies: 554 | detect-file "^0.1.0" 555 | is-glob "^2.0.1" 556 | micromatch "^2.3.7" 557 | resolve-dir "^0.1.0" 558 | 559 | fined@^1.0.1: 560 | version "1.0.2" 561 | resolved "https://registry.yarnpkg.com/fined/-/fined-1.0.2.tgz#5b28424b760d7598960b7ef8480dff8ad3660e97" 562 | dependencies: 563 | expand-tilde "^1.2.1" 564 | lodash.assignwith "^4.0.7" 565 | lodash.isempty "^4.2.1" 566 | lodash.isplainobject "^4.0.4" 567 | lodash.isstring "^4.0.1" 568 | lodash.pick "^4.2.1" 569 | parse-filepath "^1.0.1" 570 | 571 | first-chunk-stream@^1.0.0: 572 | version "1.0.0" 573 | resolved "https://registry.yarnpkg.com/first-chunk-stream/-/first-chunk-stream-1.0.0.tgz#59bfb50cd905f60d7c394cd3d9acaab4e6ad934e" 574 | 575 | flagged-respawn@^0.3.2: 576 | version "0.3.2" 577 | resolved "https://registry.yarnpkg.com/flagged-respawn/-/flagged-respawn-0.3.2.tgz#ff191eddcd7088a675b2610fffc976be9b8074b5" 578 | 579 | for-in@^0.1.5: 580 | version "0.1.6" 581 | resolved "https://registry.yarnpkg.com/for-in/-/for-in-0.1.6.tgz#c9f96e89bfad18a545af5ec3ed352a1d9e5b4dc8" 582 | 583 | for-own@^0.1.3: 584 | version "0.1.4" 585 | resolved "https://registry.yarnpkg.com/for-own/-/for-own-0.1.4.tgz#0149b41a39088c7515f51ebe1c1386d45f935072" 586 | dependencies: 587 | for-in "^0.1.5" 588 | 589 | forever-agent@~0.6.1: 590 | version "0.6.1" 591 | resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" 592 | 593 | form-data@~2.1.1: 594 | version "2.1.2" 595 | resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.2.tgz#89c3534008b97eada4cbb157d58f6f5df025eae4" 596 | dependencies: 597 | asynckit "^0.4.0" 598 | combined-stream "^1.0.5" 599 | mime-types "^2.1.12" 600 | 601 | fs-exists-sync@^0.1.0: 602 | version "0.1.0" 603 | resolved "https://registry.yarnpkg.com/fs-exists-sync/-/fs-exists-sync-0.1.0.tgz#982d6893af918e72d08dec9e8673ff2b5a8d6add" 604 | 605 | fs.realpath@^1.0.0: 606 | version "1.0.0" 607 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 608 | 609 | gaze@^0.5.1: 610 | version "0.5.2" 611 | resolved "https://registry.yarnpkg.com/gaze/-/gaze-0.5.2.tgz#40b709537d24d1d45767db5a908689dfe69ac44f" 612 | dependencies: 613 | globule "~0.1.0" 614 | 615 | generate-function@^2.0.0: 616 | version "2.0.0" 617 | resolved "https://registry.yarnpkg.com/generate-function/-/generate-function-2.0.0.tgz#6858fe7c0969b7d4e9093337647ac79f60dfbe74" 618 | 619 | generate-object-property@^1.1.0: 620 | version "1.2.0" 621 | resolved "https://registry.yarnpkg.com/generate-object-property/-/generate-object-property-1.2.0.tgz#9c0e1c40308ce804f4783618b937fa88f99d50d0" 622 | dependencies: 623 | is-property "^1.0.0" 624 | 625 | get-stdin@^4.0.1: 626 | version "4.0.1" 627 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" 628 | 629 | getpass@^0.1.1: 630 | version "0.1.6" 631 | resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" 632 | dependencies: 633 | assert-plus "^1.0.0" 634 | 635 | glob-base@^0.3.0: 636 | version "0.3.0" 637 | resolved "https://registry.yarnpkg.com/glob-base/-/glob-base-0.3.0.tgz#dbb164f6221b1c0b1ccf82aea328b497df0ea3c4" 638 | dependencies: 639 | glob-parent "^2.0.0" 640 | is-glob "^2.0.0" 641 | 642 | glob-parent@^2.0.0: 643 | version "2.0.0" 644 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-2.0.0.tgz#81383d72db054fcccf5336daa902f182f6edbb28" 645 | dependencies: 646 | is-glob "^2.0.0" 647 | 648 | glob-stream@^3.1.5: 649 | version "3.1.18" 650 | resolved "https://registry.yarnpkg.com/glob-stream/-/glob-stream-3.1.18.tgz#9170a5f12b790306fdfe598f313f8f7954fd143b" 651 | dependencies: 652 | glob "^4.3.1" 653 | glob2base "^0.0.12" 654 | minimatch "^2.0.1" 655 | ordered-read-streams "^0.1.0" 656 | through2 "^0.6.1" 657 | unique-stream "^1.0.0" 658 | 659 | glob-watcher@^0.0.6: 660 | version "0.0.6" 661 | resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-0.0.6.tgz#b95b4a8df74b39c83298b0c05c978b4d9a3b710b" 662 | dependencies: 663 | gaze "^0.5.1" 664 | 665 | glob@^3.2.11: 666 | version "3.2.11" 667 | resolved "https://registry.yarnpkg.com/glob/-/glob-3.2.11.tgz#4a973f635b9190f715d10987d5c00fd2815ebe3d" 668 | dependencies: 669 | inherits "2" 670 | minimatch "0.3" 671 | 672 | glob@^4.3.1: 673 | version "4.5.3" 674 | resolved "https://registry.yarnpkg.com/glob/-/glob-4.5.3.tgz#c6cb73d3226c1efef04de3c56d012f03377ee15f" 675 | dependencies: 676 | inflight "^1.0.4" 677 | inherits "2" 678 | minimatch "^2.0.1" 679 | once "^1.3.0" 680 | 681 | glob@^7.0.3, glob@^7.0.5: 682 | version "7.1.1" 683 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.1.tgz#805211df04faaf1c63a3600306cdf5ade50b2ec8" 684 | dependencies: 685 | fs.realpath "^1.0.0" 686 | inflight "^1.0.4" 687 | inherits "2" 688 | minimatch "^3.0.2" 689 | once "^1.3.0" 690 | path-is-absolute "^1.0.0" 691 | 692 | glob@~3.1.21: 693 | version "3.1.21" 694 | resolved "https://registry.yarnpkg.com/glob/-/glob-3.1.21.tgz#d29e0a055dea5138f4d07ed40e8982e83c2066cd" 695 | dependencies: 696 | graceful-fs "~1.2.0" 697 | inherits "1" 698 | minimatch "~0.2.11" 699 | 700 | glob2base@^0.0.12: 701 | version "0.0.12" 702 | resolved "https://registry.yarnpkg.com/glob2base/-/glob2base-0.0.12.tgz#9d419b3e28f12e83a362164a277055922c9c0d56" 703 | dependencies: 704 | find-index "^0.1.1" 705 | 706 | global: 707 | version "4.3.1" 708 | resolved "https://registry.yarnpkg.com/global/-/global-4.3.1.tgz#5f757908c7cbabce54f386ae440e11e26b7916df" 709 | dependencies: 710 | min-document "^2.19.0" 711 | process "~0.5.1" 712 | 713 | global-modules@^0.2.3: 714 | version "0.2.3" 715 | resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-0.2.3.tgz#ea5a3bed42c6d6ce995a4f8a1269b5dae223828d" 716 | dependencies: 717 | global-prefix "^0.1.4" 718 | is-windows "^0.2.0" 719 | 720 | global-prefix@^0.1.4: 721 | version "0.1.4" 722 | resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-0.1.4.tgz#05158db1cde2dd491b455e290eb3ab8bfc45c6e1" 723 | dependencies: 724 | ini "^1.3.4" 725 | is-windows "^0.2.0" 726 | osenv "^0.1.3" 727 | which "^1.2.10" 728 | 729 | globby@^5.0.0: 730 | version "5.0.0" 731 | resolved "https://registry.yarnpkg.com/globby/-/globby-5.0.0.tgz#ebd84667ca0dbb330b99bcfc68eac2bc54370e0d" 732 | dependencies: 733 | array-union "^1.0.1" 734 | arrify "^1.0.0" 735 | glob "^7.0.3" 736 | object-assign "^4.0.1" 737 | pify "^2.0.0" 738 | pinkie-promise "^2.0.0" 739 | 740 | globule@~0.1.0: 741 | version "0.1.0" 742 | resolved "https://registry.yarnpkg.com/globule/-/globule-0.1.0.tgz#d9c8edde1da79d125a151b79533b978676346ae5" 743 | dependencies: 744 | glob "~3.1.21" 745 | lodash "~1.0.1" 746 | minimatch "~0.2.11" 747 | 748 | glogg@^1.0.0: 749 | version "1.0.0" 750 | resolved "https://registry.yarnpkg.com/glogg/-/glogg-1.0.0.tgz#7fe0f199f57ac906cf512feead8f90ee4a284fc5" 751 | dependencies: 752 | sparkles "^1.0.0" 753 | 754 | google-closure-compiler-js: 755 | version "20160916.0.0" 756 | resolved "https://registry.yarnpkg.com/google-closure-compiler-js/-/google-closure-compiler-js-20160916.0.0.tgz#e57618f07c644420269e8b12fb16caf4f88fefbf" 757 | dependencies: 758 | gulp-util "^3.0.7" 759 | webpack-core "^0.6.8" 760 | 761 | graceful-fs@^3.0.0: 762 | version "3.0.11" 763 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-3.0.11.tgz#7613c778a1afea62f25c630a086d7f3acbbdd818" 764 | dependencies: 765 | natives "^1.1.0" 766 | 767 | graceful-fs@^4.1.2: 768 | version "4.1.9" 769 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.9.tgz#baacba37d19d11f9d146d3578bc99958c3787e29" 770 | 771 | graceful-fs@~1.2.0: 772 | version "1.2.3" 773 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-1.2.3.tgz#15a4806a57547cb2d2dbf27f42e89a8c3451b364" 774 | 775 | "graceful-readlink@>= 1.0.0": 776 | version "1.0.1" 777 | resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" 778 | 779 | gulp: 780 | version "3.9.1" 781 | resolved "https://registry.yarnpkg.com/gulp/-/gulp-3.9.1.tgz#571ce45928dd40af6514fc4011866016c13845b4" 782 | dependencies: 783 | archy "^1.0.0" 784 | chalk "^1.0.0" 785 | deprecated "^0.0.1" 786 | gulp-util "^3.0.0" 787 | interpret "^1.0.0" 788 | liftoff "^2.1.0" 789 | minimist "^1.1.0" 790 | orchestrator "^0.3.0" 791 | pretty-hrtime "^1.0.0" 792 | semver "^4.1.0" 793 | tildify "^1.0.0" 794 | v8flags "^2.0.2" 795 | vinyl-fs "^0.3.0" 796 | 797 | gulp-util@*, gulp-util@^3.0.0, gulp-util@^3.0.7: 798 | version "3.0.7" 799 | resolved "https://registry.yarnpkg.com/gulp-util/-/gulp-util-3.0.7.tgz#78925c4b8f8b49005ac01a011c557e6218941cbb" 800 | dependencies: 801 | array-differ "^1.0.0" 802 | array-uniq "^1.0.2" 803 | beeper "^1.0.0" 804 | chalk "^1.0.0" 805 | dateformat "^1.0.11" 806 | fancy-log "^1.1.0" 807 | gulplog "^1.0.0" 808 | has-gulplog "^0.1.0" 809 | lodash._reescape "^3.0.0" 810 | lodash._reevaluate "^3.0.0" 811 | lodash._reinterpolate "^3.0.0" 812 | lodash.template "^3.0.0" 813 | minimist "^1.1.0" 814 | multipipe "^0.1.2" 815 | object-assign "^3.0.0" 816 | replace-ext "0.0.1" 817 | through2 "^2.0.0" 818 | vinyl "^0.5.0" 819 | 820 | gulplog@^1.0.0: 821 | version "1.0.0" 822 | resolved "https://registry.yarnpkg.com/gulplog/-/gulplog-1.0.0.tgz#e28c4d45d05ecbbed818363ce8f9c5926229ffe5" 823 | dependencies: 824 | glogg "^1.0.0" 825 | 826 | har-validator@~2.0.6: 827 | version "2.0.6" 828 | resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-2.0.6.tgz#cdcbc08188265ad119b6a5a7c8ab70eecfb5d27d" 829 | dependencies: 830 | chalk "^1.1.1" 831 | commander "^2.9.0" 832 | is-my-json-valid "^2.12.4" 833 | pinkie-promise "^2.0.0" 834 | 835 | has-ansi@^2.0.0: 836 | version "2.0.0" 837 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" 838 | dependencies: 839 | ansi-regex "^2.0.0" 840 | 841 | has-gulplog@^0.1.0: 842 | version "0.1.0" 843 | resolved "https://registry.yarnpkg.com/has-gulplog/-/has-gulplog-0.1.0.tgz#6414c82913697da51590397dafb12f22967811ce" 844 | dependencies: 845 | sparkles "^1.0.0" 846 | 847 | hawk@~3.1.3: 848 | version "3.1.3" 849 | resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" 850 | dependencies: 851 | boom "2.x.x" 852 | cryptiles "2.x.x" 853 | hoek "2.x.x" 854 | sntp "1.x.x" 855 | 856 | hoek@2.x.x: 857 | version "2.16.3" 858 | resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" 859 | 860 | hosted-git-info@^2.1.4: 861 | version "2.1.5" 862 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.1.5.tgz#0ba81d90da2e25ab34a332e6ec77936e1598118b" 863 | 864 | http-signature@~1.1.0: 865 | version "1.1.1" 866 | resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" 867 | dependencies: 868 | assert-plus "^0.2.0" 869 | jsprim "^1.2.2" 870 | sshpk "^1.7.0" 871 | 872 | https-proxy-agent@^1.0.0: 873 | version "1.0.0" 874 | resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz#35f7da6c48ce4ddbfa264891ac593ee5ff8671e6" 875 | dependencies: 876 | agent-base "2" 877 | debug "2" 878 | extend "3" 879 | 880 | ie-shim@^0.1.0: 881 | version "0.1.0" 882 | resolved "https://registry.yarnpkg.com/ie-shim/-/ie-shim-0.1.0.tgz#d329de228e7dfe656feaea3e20748ef095363c5d" 883 | 884 | indent-string@^2.1.0: 885 | version "2.1.0" 886 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" 887 | dependencies: 888 | repeating "^2.0.0" 889 | 890 | inflight@^1.0.4: 891 | version "1.0.6" 892 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 893 | dependencies: 894 | once "^1.3.0" 895 | wrappy "1" 896 | 897 | inherits@^2.0.1, inherits@~2.0.1, inherits@2: 898 | version "2.0.3" 899 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" 900 | 901 | inherits@1: 902 | version "1.0.2" 903 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-1.0.2.tgz#ca4309dadee6b54cc0b8d247e8d7c7a0975bdc9b" 904 | 905 | ini@^1.3.4: 906 | version "1.3.4" 907 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" 908 | 909 | interpret@^1.0.0: 910 | version "1.0.1" 911 | resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.0.1.tgz#d579fb7f693b858004947af39fa0db49f795602c" 912 | 913 | is-absolute@^0.2.3: 914 | version "0.2.5" 915 | resolved "https://registry.yarnpkg.com/is-absolute/-/is-absolute-0.2.5.tgz#994142b9f468d27c14fbf0cd30fe77db934ca76d" 916 | dependencies: 917 | is-relative "^0.2.1" 918 | is-windows "^0.1.1" 919 | 920 | is-arrayish@^0.2.1: 921 | version "0.2.1" 922 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 923 | 924 | is-buffer@^1.0.2: 925 | version "1.1.4" 926 | resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.4.tgz#cfc86ccd5dc5a52fa80489111c6920c457e2d98b" 927 | 928 | is-builtin-module@^1.0.0: 929 | version "1.0.0" 930 | resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-1.0.0.tgz#540572d34f7ac3119f8f76c30cbc1b1e037affbe" 931 | dependencies: 932 | builtin-modules "^1.0.0" 933 | 934 | is-dotfile@^1.0.0: 935 | version "1.0.2" 936 | resolved "https://registry.yarnpkg.com/is-dotfile/-/is-dotfile-1.0.2.tgz#2c132383f39199f8edc268ca01b9b007d205cc4d" 937 | 938 | is-equal-shallow@^0.1.3: 939 | version "0.1.3" 940 | resolved "https://registry.yarnpkg.com/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz#2238098fc221de0bcfa5d9eac4c45d638aa1c534" 941 | dependencies: 942 | is-primitive "^2.0.0" 943 | 944 | is-extendable@^0.1.1: 945 | version "0.1.1" 946 | resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" 947 | 948 | is-extglob@^1.0.0: 949 | version "1.0.0" 950 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-1.0.0.tgz#ac468177c4943405a092fc8f29760c6ffc6206c0" 951 | 952 | is-finite@^1.0.0: 953 | version "1.0.2" 954 | resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.0.2.tgz#cc6677695602be550ef11e8b4aa6305342b6d0aa" 955 | dependencies: 956 | number-is-nan "^1.0.0" 957 | 958 | is-glob@^2.0.0, is-glob@^2.0.1: 959 | version "2.0.1" 960 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-2.0.1.tgz#d096f926a3ded5600f3fdfd91198cb0888c2d863" 961 | dependencies: 962 | is-extglob "^1.0.0" 963 | 964 | is-my-json-valid@^2.12.4: 965 | version "2.15.0" 966 | resolved "https://registry.yarnpkg.com/is-my-json-valid/-/is-my-json-valid-2.15.0.tgz#936edda3ca3c211fd98f3b2d3e08da43f7b2915b" 967 | dependencies: 968 | generate-function "^2.0.0" 969 | generate-object-property "^1.1.0" 970 | jsonpointer "^4.0.0" 971 | xtend "^4.0.0" 972 | 973 | is-number@^2.0.2, is-number@^2.1.0: 974 | version "2.1.0" 975 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-2.1.0.tgz#01fcbbb393463a548f2f466cce16dece49db908f" 976 | dependencies: 977 | kind-of "^3.0.2" 978 | 979 | is-path-cwd@^1.0.0: 980 | version "1.0.0" 981 | resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" 982 | 983 | is-path-in-cwd@^1.0.0: 984 | version "1.0.0" 985 | resolved "https://registry.yarnpkg.com/is-path-in-cwd/-/is-path-in-cwd-1.0.0.tgz#6477582b8214d602346094567003be8a9eac04dc" 986 | dependencies: 987 | is-path-inside "^1.0.0" 988 | 989 | is-path-inside@^1.0.0: 990 | version "1.0.0" 991 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.0.tgz#fc06e5a1683fbda13de667aff717bbc10a48f37f" 992 | dependencies: 993 | path-is-inside "^1.0.1" 994 | 995 | is-posix-bracket@^0.1.0: 996 | version "0.1.1" 997 | resolved "https://registry.yarnpkg.com/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz#3334dc79774368e92f016e6fbc0a88f5cd6e6bc4" 998 | 999 | is-primitive@^2.0.0: 1000 | version "2.0.0" 1001 | resolved "https://registry.yarnpkg.com/is-primitive/-/is-primitive-2.0.0.tgz#207bab91638499c07b2adf240a41a87210034575" 1002 | 1003 | is-property@^1.0.0: 1004 | version "1.0.2" 1005 | resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" 1006 | 1007 | is-relative@^0.2.1: 1008 | version "0.2.1" 1009 | resolved "https://registry.yarnpkg.com/is-relative/-/is-relative-0.2.1.tgz#d27f4c7d516d175fb610db84bbeef23c3bc97aa5" 1010 | dependencies: 1011 | is-unc-path "^0.1.1" 1012 | 1013 | is-typedarray@~1.0.0: 1014 | version "1.0.0" 1015 | resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" 1016 | 1017 | is-unc-path@^0.1.1: 1018 | version "0.1.1" 1019 | resolved "https://registry.yarnpkg.com/is-unc-path/-/is-unc-path-0.1.1.tgz#ab2533d77ad733561124c3dc0f5cd8b90054c86b" 1020 | dependencies: 1021 | unc-path-regex "^0.1.0" 1022 | 1023 | is-utf8@^0.2.0: 1024 | version "0.2.1" 1025 | resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" 1026 | 1027 | is-windows@^0.1.1: 1028 | version "0.1.1" 1029 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.1.1.tgz#be310715431cfabccc54ab3951210fa0b6d01abe" 1030 | 1031 | is-windows@^0.2.0: 1032 | version "0.2.0" 1033 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-0.2.0.tgz#de1aa6d63ea29dd248737b69f1ff8b8002d2108c" 1034 | 1035 | isarray@~1.0.0, isarray@1.0.0: 1036 | version "1.0.0" 1037 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" 1038 | 1039 | isarray@0.0.1: 1040 | version "0.0.1" 1041 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" 1042 | 1043 | isexe@^1.1.1: 1044 | version "1.1.2" 1045 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-1.1.2.tgz#36f3e22e60750920f5e7241a476a8c6a42275ad0" 1046 | 1047 | isobject@^2.0.0: 1048 | version "2.1.0" 1049 | resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" 1050 | dependencies: 1051 | isarray "1.0.0" 1052 | 1053 | isstream@~0.1.2: 1054 | version "0.1.2" 1055 | resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" 1056 | 1057 | jasmine-core@~2.4.0: 1058 | version "2.4.1" 1059 | resolved "https://registry.yarnpkg.com/jasmine-core/-/jasmine-core-2.4.1.tgz#6f83ab3a0f16951722ce07d206c773d57cc838be" 1060 | 1061 | jasmine@2.4.1: 1062 | version "2.4.1" 1063 | resolved "https://registry.yarnpkg.com/jasmine/-/jasmine-2.4.1.tgz#9016dda453213d27ac6d43dc4ea97315a189085e" 1064 | dependencies: 1065 | exit "^0.1.2" 1066 | glob "^3.2.11" 1067 | jasmine-core "~2.4.0" 1068 | 1069 | jasminewd2@0.0.10: 1070 | version "0.0.10" 1071 | resolved "https://registry.yarnpkg.com/jasminewd2/-/jasminewd2-0.0.10.tgz#94f48ae2bc946cad643035467b4bb7ea9c1075ef" 1072 | 1073 | jodid25519@^1.0.0: 1074 | version "1.0.2" 1075 | resolved "https://registry.yarnpkg.com/jodid25519/-/jodid25519-1.0.2.tgz#06d4912255093419477d425633606e0e90782967" 1076 | dependencies: 1077 | jsbn "~0.1.0" 1078 | 1079 | js-beautify@^1.6.4: 1080 | version "1.6.4" 1081 | resolved "https://registry.yarnpkg.com/js-beautify/-/js-beautify-1.6.4.tgz#a9af79699742ac9a1b6fddc1fdbc78bc4d515fc3" 1082 | dependencies: 1083 | config-chain "~1.1.5" 1084 | editorconfig "^0.13.2" 1085 | mkdirp "~0.5.0" 1086 | nopt "~3.0.1" 1087 | 1088 | jsbn@~0.1.0: 1089 | version "0.1.0" 1090 | resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.0.tgz#650987da0dd74f4ebf5a11377a2aa2d273e97dfd" 1091 | 1092 | jshashes@^1.0.5: 1093 | version "1.0.5" 1094 | resolved "https://registry.yarnpkg.com/jshashes/-/jshashes-1.0.5.tgz#8ba1f70fefda9f6563f5587685185e43cf2e720b" 1095 | 1096 | json-schema@0.2.3: 1097 | version "0.2.3" 1098 | resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" 1099 | 1100 | json-stringify-safe@~5.0.1: 1101 | version "5.0.1" 1102 | resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" 1103 | 1104 | jsonpointer@^4.0.0: 1105 | version "4.0.0" 1106 | resolved "https://registry.yarnpkg.com/jsonpointer/-/jsonpointer-4.0.0.tgz#6661e161d2fc445f19f98430231343722e1fcbd5" 1107 | 1108 | jsprim@^1.2.2: 1109 | version "1.3.1" 1110 | resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.3.1.tgz#2a7256f70412a29ee3670aaca625994c4dcff252" 1111 | dependencies: 1112 | extsprintf "1.0.2" 1113 | json-schema "0.2.3" 1114 | verror "1.3.6" 1115 | 1116 | kind-of@^3.0.2: 1117 | version "3.0.4" 1118 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.0.4.tgz#7b8ecf18a4e17f8269d73b501c9f232c96887a74" 1119 | dependencies: 1120 | is-buffer "^1.0.2" 1121 | 1122 | liftoff@^2.1.0: 1123 | version "2.3.0" 1124 | resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-2.3.0.tgz#a98f2ff67183d8ba7cfaca10548bd7ff0550b385" 1125 | dependencies: 1126 | extend "^3.0.0" 1127 | findup-sync "^0.4.2" 1128 | fined "^1.0.1" 1129 | flagged-respawn "^0.3.2" 1130 | lodash.isplainobject "^4.0.4" 1131 | lodash.isstring "^4.0.1" 1132 | lodash.mapvalues "^4.4.0" 1133 | rechoir "^0.6.2" 1134 | resolve "^1.1.7" 1135 | 1136 | load-json-file@^1.0.0: 1137 | version "1.1.0" 1138 | resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" 1139 | dependencies: 1140 | graceful-fs "^4.1.2" 1141 | parse-json "^2.2.0" 1142 | pify "^2.0.0" 1143 | pinkie-promise "^2.0.0" 1144 | strip-bom "^2.0.0" 1145 | 1146 | lodash._basecopy@^3.0.0: 1147 | version "3.0.1" 1148 | resolved "https://registry.yarnpkg.com/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz#8da0e6a876cf344c0ad8a54882111dd3c5c7ca36" 1149 | 1150 | lodash._basetostring@^3.0.0: 1151 | version "3.0.1" 1152 | resolved "https://registry.yarnpkg.com/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz#d1861d877f824a52f669832dcaf3ee15566a07d5" 1153 | 1154 | lodash._basevalues@^3.0.0: 1155 | version "3.0.0" 1156 | resolved "https://registry.yarnpkg.com/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz#5b775762802bde3d3297503e26300820fdf661b7" 1157 | 1158 | lodash._getnative@^3.0.0: 1159 | version "3.9.1" 1160 | resolved "https://registry.yarnpkg.com/lodash._getnative/-/lodash._getnative-3.9.1.tgz#570bc7dede46d61cdcde687d65d3eecbaa3aaff5" 1161 | 1162 | lodash._isiterateecall@^3.0.0: 1163 | version "3.0.9" 1164 | resolved "https://registry.yarnpkg.com/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz#5203ad7ba425fae842460e696db9cf3e6aac057c" 1165 | 1166 | lodash._reescape@^3.0.0: 1167 | version "3.0.0" 1168 | resolved "https://registry.yarnpkg.com/lodash._reescape/-/lodash._reescape-3.0.0.tgz#2b1d6f5dfe07c8a355753e5f27fac7f1cde1616a" 1169 | 1170 | lodash._reevaluate@^3.0.0: 1171 | version "3.0.0" 1172 | resolved "https://registry.yarnpkg.com/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz#58bc74c40664953ae0b124d806996daca431e2ed" 1173 | 1174 | lodash._reinterpolate@^3.0.0: 1175 | version "3.0.0" 1176 | resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" 1177 | 1178 | lodash._root@^3.0.0: 1179 | version "3.0.1" 1180 | resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" 1181 | 1182 | lodash.assignwith@^4.0.7: 1183 | version "4.2.0" 1184 | resolved "https://registry.yarnpkg.com/lodash.assignwith/-/lodash.assignwith-4.2.0.tgz#127a97f02adc41751a954d24b0de17e100e038eb" 1185 | 1186 | lodash.escape@^3.0.0: 1187 | version "3.2.0" 1188 | resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-3.2.0.tgz#995ee0dc18c1b48cc92effae71a10aab5b487698" 1189 | dependencies: 1190 | lodash._root "^3.0.0" 1191 | 1192 | lodash.isarguments@^3.0.0: 1193 | version "3.1.0" 1194 | resolved "https://registry.yarnpkg.com/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz#2f573d85c6a24289ff00663b491c1d338ff3458a" 1195 | 1196 | lodash.isarray@^3.0.0: 1197 | version "3.0.4" 1198 | resolved "https://registry.yarnpkg.com/lodash.isarray/-/lodash.isarray-3.0.4.tgz#79e4eb88c36a8122af86f844aa9bcd851b5fbb55" 1199 | 1200 | lodash.isempty@^4.2.1: 1201 | version "4.4.0" 1202 | resolved "https://registry.yarnpkg.com/lodash.isempty/-/lodash.isempty-4.4.0.tgz#6f86cbedd8be4ec987be9aaf33c9684db1b31e7e" 1203 | 1204 | lodash.isplainobject@^4.0.4: 1205 | version "4.0.6" 1206 | resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" 1207 | 1208 | lodash.isstring@^4.0.1: 1209 | version "4.0.1" 1210 | resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" 1211 | 1212 | lodash.keys@^3.0.0: 1213 | version "3.1.2" 1214 | resolved "https://registry.yarnpkg.com/lodash.keys/-/lodash.keys-3.1.2.tgz#4dbc0472b156be50a0b286855d1bd0b0c656098a" 1215 | dependencies: 1216 | lodash._getnative "^3.0.0" 1217 | lodash.isarguments "^3.0.0" 1218 | lodash.isarray "^3.0.0" 1219 | 1220 | lodash.mapvalues@^4.4.0: 1221 | version "4.6.0" 1222 | resolved "https://registry.yarnpkg.com/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz#1bafa5005de9dd6f4f26668c30ca37230cc9689c" 1223 | 1224 | lodash.pick@^4.2.1: 1225 | version "4.4.0" 1226 | resolved "https://registry.yarnpkg.com/lodash.pick/-/lodash.pick-4.4.0.tgz#52f05610fff9ded422611441ed1fc123a03001b3" 1227 | 1228 | lodash.restparam@^3.0.0: 1229 | version "3.6.1" 1230 | resolved "https://registry.yarnpkg.com/lodash.restparam/-/lodash.restparam-3.6.1.tgz#936a4e309ef330a7645ed4145986c85ae5b20805" 1231 | 1232 | lodash.template@^3.0.0: 1233 | version "3.6.2" 1234 | resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-3.6.2.tgz#f8cdecc6169a255be9098ae8b0c53d378931d14f" 1235 | dependencies: 1236 | lodash._basecopy "^3.0.0" 1237 | lodash._basetostring "^3.0.0" 1238 | lodash._basevalues "^3.0.0" 1239 | lodash._isiterateecall "^3.0.0" 1240 | lodash._reinterpolate "^3.0.0" 1241 | lodash.escape "^3.0.0" 1242 | lodash.keys "^3.0.0" 1243 | lodash.restparam "^3.0.0" 1244 | lodash.templatesettings "^3.0.0" 1245 | 1246 | lodash.templatesettings@^3.0.0: 1247 | version "3.1.1" 1248 | resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz#fb307844753b66b9f1afa54e262c745307dba8e5" 1249 | dependencies: 1250 | lodash._reinterpolate "^3.0.0" 1251 | lodash.escape "^3.0.0" 1252 | 1253 | lodash@~1.0.1: 1254 | version "1.0.2" 1255 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" 1256 | 1257 | loud-rejection@^1.0.0: 1258 | version "1.6.0" 1259 | resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" 1260 | dependencies: 1261 | currently-unhandled "^0.4.1" 1262 | signal-exit "^3.0.0" 1263 | 1264 | lru-cache@^3.2.0: 1265 | version "3.2.0" 1266 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-3.2.0.tgz#71789b3b7f5399bec8565dda38aa30d2a097efee" 1267 | dependencies: 1268 | pseudomap "^1.0.1" 1269 | 1270 | lru-cache@2: 1271 | version "2.7.3" 1272 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.7.3.tgz#6d4524e8b955f95d4f5b58851ce21dd72fb4e952" 1273 | 1274 | magic-string@^0.16.0: 1275 | version "0.16.0" 1276 | resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.16.0.tgz#970ebb0da7193301285fb1aa650f39bdd81eb45a" 1277 | dependencies: 1278 | vlq "^0.2.1" 1279 | 1280 | make-error@^1.1.1: 1281 | version "1.2.1" 1282 | resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.2.1.tgz#9a6dfb4844423b9f145806728d05c6e935670e75" 1283 | 1284 | map-cache@^0.2.0: 1285 | version "0.2.2" 1286 | resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" 1287 | 1288 | map-obj@^1.0.0, map-obj@^1.0.1: 1289 | version "1.0.1" 1290 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" 1291 | 1292 | meow@^3.3.0: 1293 | version "3.7.0" 1294 | resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" 1295 | dependencies: 1296 | camelcase-keys "^2.0.0" 1297 | decamelize "^1.1.2" 1298 | loud-rejection "^1.0.0" 1299 | map-obj "^1.0.1" 1300 | minimist "^1.1.3" 1301 | normalize-package-data "^2.3.4" 1302 | object-assign "^4.0.1" 1303 | read-pkg-up "^1.0.1" 1304 | redent "^1.0.0" 1305 | trim-newlines "^1.0.0" 1306 | 1307 | micromatch@^2.3.7: 1308 | version "2.3.11" 1309 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" 1310 | dependencies: 1311 | arr-diff "^2.0.0" 1312 | array-unique "^0.2.1" 1313 | braces "^1.8.2" 1314 | expand-brackets "^0.1.4" 1315 | extglob "^0.3.1" 1316 | filename-regex "^2.0.0" 1317 | is-extglob "^1.0.0" 1318 | is-glob "^2.0.1" 1319 | kind-of "^3.0.2" 1320 | normalize-path "^2.0.1" 1321 | object.omit "^2.0.0" 1322 | parse-glob "^3.0.4" 1323 | regex-cache "^0.4.2" 1324 | 1325 | mime-db@~1.24.0: 1326 | version "1.24.0" 1327 | resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.24.0.tgz#e2d13f939f0016c6e4e9ad25a8652f126c467f0c" 1328 | 1329 | mime-types@^2.1.12, mime-types@~2.1.7: 1330 | version "2.1.12" 1331 | resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.12.tgz#152ba256777020dd4663f54c2e7bc26381e71729" 1332 | dependencies: 1333 | mime-db "~1.24.0" 1334 | 1335 | min-document@^2.19.0: 1336 | version "2.19.0" 1337 | resolved "https://registry.yarnpkg.com/min-document/-/min-document-2.19.0.tgz#7bd282e3f5842ed295bb748cdd9f1ffa2c824685" 1338 | dependencies: 1339 | dom-walk "^0.1.0" 1340 | 1341 | minimatch@^2.0.1: 1342 | version "2.0.10" 1343 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-2.0.10.tgz#8d087c39c6b38c001b97fca7ce6d0e1e80afbac7" 1344 | dependencies: 1345 | brace-expansion "^1.0.0" 1346 | 1347 | minimatch@^3.0.2: 1348 | version "3.0.3" 1349 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.3.tgz#2a4e4090b96b2db06a9d7df01055a62a77c9b774" 1350 | dependencies: 1351 | brace-expansion "^1.0.0" 1352 | 1353 | minimatch@~0.2.11: 1354 | version "0.2.14" 1355 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.2.14.tgz#c74e780574f63c6f9a090e90efbe6ef53a6a756a" 1356 | dependencies: 1357 | lru-cache "2" 1358 | sigmund "~1.0.0" 1359 | 1360 | minimatch@0.3: 1361 | version "0.3.0" 1362 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-0.3.0.tgz#275d8edaac4f1bb3326472089e7949c8394699dd" 1363 | dependencies: 1364 | lru-cache "2" 1365 | sigmund "~1.0.0" 1366 | 1367 | minimist@^1.1.0, minimist@^1.1.3, minimist@^1.2.0: 1368 | version "1.2.0" 1369 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.0.tgz#a35008b20f41383eec1fb914f4cd5df79a264284" 1370 | 1371 | minimist@~0.0.1: 1372 | version "0.0.10" 1373 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf" 1374 | 1375 | minimist@0.0.8: 1376 | version "0.0.8" 1377 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.8.tgz#857fcabfc3397d2625b8228262e86aa7a011b05d" 1378 | 1379 | mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@~0.5.0: 1380 | version "0.5.1" 1381 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903" 1382 | dependencies: 1383 | minimist "0.0.8" 1384 | 1385 | ms@0.7.2: 1386 | version "0.7.2" 1387 | resolved "https://registry.yarnpkg.com/ms/-/ms-0.7.2.tgz#ae25cf2512b3885a1d95d7f037868d8431124765" 1388 | 1389 | multipipe@^0.1.2: 1390 | version "0.1.2" 1391 | resolved "https://registry.yarnpkg.com/multipipe/-/multipipe-0.1.2.tgz#2a8f2ddf70eed564dff2d57f1e1a137d9f05078b" 1392 | dependencies: 1393 | duplexer2 "0.0.2" 1394 | 1395 | natives@^1.1.0: 1396 | version "1.1.0" 1397 | resolved "https://registry.yarnpkg.com/natives/-/natives-1.1.0.tgz#e9ff841418a6b2ec7a495e939984f78f163e6e31" 1398 | 1399 | node-uuid@~1.4.7: 1400 | version "1.4.7" 1401 | resolved "https://registry.yarnpkg.com/node-uuid/-/node-uuid-1.4.7.tgz#6da5a17668c4b3dd59623bda11cf7fa4c1f60a6f" 1402 | 1403 | nopt@~3.0.1: 1404 | version "3.0.6" 1405 | resolved "https://registry.yarnpkg.com/nopt/-/nopt-3.0.6.tgz#c6465dbf08abcd4db359317f79ac68a646b28ff9" 1406 | dependencies: 1407 | abbrev "1" 1408 | 1409 | normalize-package-data@^2.3.2, normalize-package-data@^2.3.4: 1410 | version "2.3.5" 1411 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.3.5.tgz#8d924f142960e1777e7ffe170543631cc7cb02df" 1412 | dependencies: 1413 | hosted-git-info "^2.1.4" 1414 | is-builtin-module "^1.0.0" 1415 | semver "2 || 3 || 4 || 5" 1416 | validate-npm-package-license "^3.0.1" 1417 | 1418 | normalize-path@^2.0.1: 1419 | version "2.0.1" 1420 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.0.1.tgz#47886ac1662760d4261b7d979d241709d3ce3f7a" 1421 | 1422 | number-is-nan@^1.0.0: 1423 | version "1.0.1" 1424 | resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" 1425 | 1426 | oauth-sign@~0.8.1: 1427 | version "0.8.2" 1428 | resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" 1429 | 1430 | object-assign@^3.0.0: 1431 | version "3.0.0" 1432 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-3.0.0.tgz#9bedd5ca0897949bca47e7ff408062d549f587f2" 1433 | 1434 | object-assign@^4.0.1: 1435 | version "4.1.0" 1436 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.0.tgz#7a3b3d0e98063d43f4c03f2e8ae6cd51a86883a0" 1437 | 1438 | object.omit@^2.0.0: 1439 | version "2.0.0" 1440 | resolved "https://registry.yarnpkg.com/object.omit/-/object.omit-2.0.0.tgz#868597333d54e60662940bb458605dd6ae12fe94" 1441 | dependencies: 1442 | for-own "^0.1.3" 1443 | is-extendable "^0.1.1" 1444 | 1445 | once@^1.3.0: 1446 | version "1.4.0" 1447 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1448 | dependencies: 1449 | wrappy "1" 1450 | 1451 | once@~1.3.0: 1452 | version "1.3.3" 1453 | resolved "https://registry.yarnpkg.com/once/-/once-1.3.3.tgz#b2e261557ce4c314ec8304f3fa82663e4297ca20" 1454 | dependencies: 1455 | wrappy "1" 1456 | 1457 | optimist@~0.6.0: 1458 | version "0.6.1" 1459 | resolved "https://registry.yarnpkg.com/optimist/-/optimist-0.6.1.tgz#da3ea74686fa21a19a111c326e90eb15a0196686" 1460 | dependencies: 1461 | minimist "~0.0.1" 1462 | wordwrap "~0.0.2" 1463 | 1464 | options@>=0.0.5: 1465 | version "0.0.6" 1466 | resolved "https://registry.yarnpkg.com/options/-/options-0.0.6.tgz#ec22d312806bb53e731773e7cdaefcf1c643128f" 1467 | 1468 | orchestrator@^0.3.0: 1469 | version "0.3.7" 1470 | resolved "https://registry.yarnpkg.com/orchestrator/-/orchestrator-0.3.7.tgz#c45064e22c5a2a7b99734f409a95ffedc7d3c3df" 1471 | dependencies: 1472 | end-of-stream "~0.1.5" 1473 | sequencify "~0.0.7" 1474 | stream-consume "~0.1.0" 1475 | 1476 | ordered-read-streams@^0.1.0: 1477 | version "0.1.0" 1478 | resolved "https://registry.yarnpkg.com/ordered-read-streams/-/ordered-read-streams-0.1.0.tgz#fd565a9af8eb4473ba69b6ed8a34352cb552f126" 1479 | 1480 | os-homedir@^1.0.0, os-homedir@^1.0.1: 1481 | version "1.0.2" 1482 | resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" 1483 | 1484 | os-tmpdir@^1.0.0: 1485 | version "1.0.2" 1486 | resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" 1487 | 1488 | osenv@^0.1.3: 1489 | version "0.1.3" 1490 | resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.3.tgz#83cf05c6d6458fc4d5ac6362ea325d92f2754217" 1491 | dependencies: 1492 | os-homedir "^1.0.0" 1493 | os-tmpdir "^1.0.0" 1494 | 1495 | parse-filepath@^1.0.1: 1496 | version "1.0.1" 1497 | resolved "https://registry.yarnpkg.com/parse-filepath/-/parse-filepath-1.0.1.tgz#159d6155d43904d16c10ef698911da1e91969b73" 1498 | dependencies: 1499 | is-absolute "^0.2.3" 1500 | map-cache "^0.2.0" 1501 | path-root "^0.1.1" 1502 | 1503 | parse-glob@^3.0.4: 1504 | version "3.0.4" 1505 | resolved "https://registry.yarnpkg.com/parse-glob/-/parse-glob-3.0.4.tgz#b2c376cfb11f35513badd173ef0bb6e3a388391c" 1506 | dependencies: 1507 | glob-base "^0.3.0" 1508 | is-dotfile "^1.0.0" 1509 | is-extglob "^1.0.0" 1510 | is-glob "^2.0.0" 1511 | 1512 | parse-json@^2.2.0: 1513 | version "2.2.0" 1514 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" 1515 | dependencies: 1516 | error-ex "^1.2.0" 1517 | 1518 | parse5@^2.2.1: 1519 | version "2.2.2" 1520 | resolved "https://registry.yarnpkg.com/parse5/-/parse5-2.2.2.tgz#27f04785e9aee58aa824bc0a31c3049c3e39c51e" 1521 | 1522 | path-exists@^2.0.0: 1523 | version "2.1.0" 1524 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" 1525 | dependencies: 1526 | pinkie-promise "^2.0.0" 1527 | 1528 | path-is-absolute@^1.0.0: 1529 | version "1.0.1" 1530 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1531 | 1532 | path-is-inside@^1.0.1: 1533 | version "1.0.2" 1534 | resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" 1535 | 1536 | path-root-regex@^0.1.0: 1537 | version "0.1.2" 1538 | resolved "https://registry.yarnpkg.com/path-root-regex/-/path-root-regex-0.1.2.tgz#bfccdc8df5b12dc52c8b43ec38d18d72c04ba96d" 1539 | 1540 | path-root@^0.1.1: 1541 | version "0.1.1" 1542 | resolved "https://registry.yarnpkg.com/path-root/-/path-root-0.1.1.tgz#9a4a6814cac1c0cd73360a95f32083c8ea4745b7" 1543 | dependencies: 1544 | path-root-regex "^0.1.0" 1545 | 1546 | path-type@^1.0.0: 1547 | version "1.1.0" 1548 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" 1549 | dependencies: 1550 | graceful-fs "^4.1.2" 1551 | pify "^2.0.0" 1552 | pinkie-promise "^2.0.0" 1553 | 1554 | pify@^2.0.0: 1555 | version "2.3.0" 1556 | resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" 1557 | 1558 | pinkie-promise@^2.0.0: 1559 | version "2.0.1" 1560 | resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" 1561 | dependencies: 1562 | pinkie "^2.0.0" 1563 | 1564 | pinkie@^2.0.0, pinkie@^2.0.4: 1565 | version "2.0.4" 1566 | resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" 1567 | 1568 | preboot@4.5.2: 1569 | version "4.5.2" 1570 | resolved "https://registry.yarnpkg.com/preboot/-/preboot-4.5.2.tgz#cb349209958c2b48d7f74137b3499bbbe5472a5e" 1571 | 1572 | preserve@^0.2.0: 1573 | version "0.2.0" 1574 | resolved "https://registry.yarnpkg.com/preserve/-/preserve-0.2.0.tgz#815ed1f6ebc65926f865b310c0713bcb3315ce4b" 1575 | 1576 | pretty-hrtime@^1.0.0: 1577 | version "1.0.2" 1578 | resolved "https://registry.yarnpkg.com/pretty-hrtime/-/pretty-hrtime-1.0.2.tgz#70ca96f4d0628a443b918758f79416a9a7bc9fa8" 1579 | 1580 | process-nextick-args@~1.0.6: 1581 | version "1.0.7" 1582 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3" 1583 | 1584 | process@~0.5.1: 1585 | version "0.5.2" 1586 | resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" 1587 | 1588 | proto-list@~1.2.1: 1589 | version "1.2.4" 1590 | resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" 1591 | 1592 | protractor@^4.0.10: 1593 | version "4.0.11" 1594 | resolved "https://registry.yarnpkg.com/protractor/-/protractor-4.0.11.tgz#fc4bf8d75deec8516b600f87ea5b95ecf537d059" 1595 | dependencies: 1596 | "@types/jasmine" "^2.5.36" 1597 | "@types/node" "^6.0.46" 1598 | "@types/q" "^0.0.32" 1599 | "@types/selenium-webdriver" "~2.53.31" 1600 | adm-zip "0.4.7" 1601 | chalk "^1.1.3" 1602 | glob "^7.0.3" 1603 | jasmine "2.4.1" 1604 | jasminewd2 "0.0.10" 1605 | optimist "~0.6.0" 1606 | q "1.4.1" 1607 | saucelabs "~1.3.0" 1608 | selenium-webdriver "2.53.3" 1609 | source-map-support "~0.4.0" 1610 | webdriver-manager "^10.2.8" 1611 | 1612 | pseudomap@^1.0.1: 1613 | version "1.0.2" 1614 | resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" 1615 | 1616 | punycode@^1.4.1: 1617 | version "1.4.1" 1618 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" 1619 | 1620 | q@^1.4.1, q@1.4.1: 1621 | version "1.4.1" 1622 | resolved "https://registry.yarnpkg.com/q/-/q-1.4.1.tgz#55705bcd93c5f3673530c2c2cbc0c2b3addc286e" 1623 | 1624 | qs@~6.3.0: 1625 | version "6.3.0" 1626 | resolved "https://registry.yarnpkg.com/qs/-/qs-6.3.0.tgz#f403b264f23bc01228c74131b407f18d5ea5d442" 1627 | 1628 | randomatic@^1.1.3: 1629 | version "1.1.5" 1630 | resolved "https://registry.yarnpkg.com/randomatic/-/randomatic-1.1.5.tgz#5e9ef5f2d573c67bd2b8124ae90b5156e457840b" 1631 | dependencies: 1632 | is-number "^2.0.2" 1633 | kind-of "^3.0.2" 1634 | 1635 | read-pkg-up@^1.0.1: 1636 | version "1.0.1" 1637 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" 1638 | dependencies: 1639 | find-up "^1.0.0" 1640 | read-pkg "^1.0.0" 1641 | 1642 | read-pkg@^1.0.0: 1643 | version "1.1.0" 1644 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" 1645 | dependencies: 1646 | load-json-file "^1.0.0" 1647 | normalize-package-data "^2.3.2" 1648 | path-type "^1.0.0" 1649 | 1650 | "readable-stream@>=1.0.33-1 <1.1.0-0": 1651 | version "1.0.34" 1652 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" 1653 | dependencies: 1654 | core-util-is "~1.0.0" 1655 | inherits "~2.0.1" 1656 | isarray "0.0.1" 1657 | string_decoder "~0.10.x" 1658 | 1659 | readable-stream@~1.1.9: 1660 | version "1.1.14" 1661 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" 1662 | dependencies: 1663 | core-util-is "~1.0.0" 1664 | inherits "~2.0.1" 1665 | isarray "0.0.1" 1666 | string_decoder "~0.10.x" 1667 | 1668 | readable-stream@~2.0.0: 1669 | version "2.0.6" 1670 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e" 1671 | dependencies: 1672 | core-util-is "~1.0.0" 1673 | inherits "~2.0.1" 1674 | isarray "~1.0.0" 1675 | process-nextick-args "~1.0.6" 1676 | string_decoder "~0.10.x" 1677 | util-deprecate "~1.0.1" 1678 | 1679 | rechoir@^0.6.2: 1680 | version "0.6.2" 1681 | resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.6.2.tgz#85204b54dba82d5742e28c96756ef43af50e3384" 1682 | dependencies: 1683 | resolve "^1.1.6" 1684 | 1685 | redent@^1.0.0: 1686 | version "1.0.0" 1687 | resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" 1688 | dependencies: 1689 | indent-string "^2.1.0" 1690 | strip-indent "^1.0.1" 1691 | 1692 | reflect-metadata, reflect-metadata@^0.1.2: 1693 | version "0.1.8" 1694 | resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.8.tgz#72426d570b60776e3688968bd5ab9537a15cecf6" 1695 | 1696 | reflect-metadata@0.1.2: 1697 | version "0.1.2" 1698 | resolved "https://registry.yarnpkg.com/reflect-metadata/-/reflect-metadata-0.1.2.tgz#ea23e5823dc830f292822bd3da9b89fd57bffb03" 1699 | 1700 | regex-cache@^0.4.2: 1701 | version "0.4.3" 1702 | resolved "https://registry.yarnpkg.com/regex-cache/-/regex-cache-0.4.3.tgz#9b1a6c35d4d0dfcef5711ae651e8e9d3d7114145" 1703 | dependencies: 1704 | is-equal-shallow "^0.1.3" 1705 | is-primitive "^2.0.0" 1706 | 1707 | repeat-element@^1.1.2: 1708 | version "1.1.2" 1709 | resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.2.tgz#ef089a178d1483baae4d93eb98b4f9e4e11d990a" 1710 | 1711 | repeat-string@^1.5.2: 1712 | version "1.5.4" 1713 | resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.5.4.tgz#64ec0c91e0f4b475f90d5b643651e3e6e5b6c2d5" 1714 | 1715 | repeating@^2.0.0: 1716 | version "2.0.1" 1717 | resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" 1718 | dependencies: 1719 | is-finite "^1.0.0" 1720 | 1721 | replace-ext@0.0.1: 1722 | version "0.0.1" 1723 | resolved "https://registry.yarnpkg.com/replace-ext/-/replace-ext-0.0.1.tgz#29bbd92078a739f0bcce2b4ee41e837953522924" 1724 | 1725 | request@^2.78.0: 1726 | version "2.78.0" 1727 | resolved "https://registry.yarnpkg.com/request/-/request-2.78.0.tgz#e1c8dec346e1c81923b24acdb337f11decabe9cc" 1728 | dependencies: 1729 | aws-sign2 "~0.6.0" 1730 | aws4 "^1.2.1" 1731 | caseless "~0.11.0" 1732 | combined-stream "~1.0.5" 1733 | extend "~3.0.0" 1734 | forever-agent "~0.6.1" 1735 | form-data "~2.1.1" 1736 | har-validator "~2.0.6" 1737 | hawk "~3.1.3" 1738 | http-signature "~1.1.0" 1739 | is-typedarray "~1.0.0" 1740 | isstream "~0.1.2" 1741 | json-stringify-safe "~5.0.1" 1742 | mime-types "~2.1.7" 1743 | node-uuid "~1.4.7" 1744 | oauth-sign "~0.8.1" 1745 | qs "~6.3.0" 1746 | stringstream "~0.0.4" 1747 | tough-cookie "~2.3.0" 1748 | tunnel-agent "~0.4.1" 1749 | 1750 | resolve-dir@^0.1.0: 1751 | version "0.1.1" 1752 | resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-0.1.1.tgz#b219259a5602fac5c5c496ad894a6e8cc430261e" 1753 | dependencies: 1754 | expand-tilde "^1.2.2" 1755 | global-modules "^0.2.3" 1756 | 1757 | resolve-url@~0.2.1: 1758 | version "0.2.1" 1759 | resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" 1760 | 1761 | resolve@^1.1.6, resolve@^1.1.7, resolve@1.1.7: 1762 | version "1.1.7" 1763 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b" 1764 | 1765 | rimraf@^2.2.8, rimraf@^2.5.2: 1766 | version "2.5.4" 1767 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.5.4.tgz#96800093cbf1a0c86bd95b4625467535c29dfa04" 1768 | dependencies: 1769 | glob "^7.0.5" 1770 | 1771 | rollup: 1772 | version "0.36.3" 1773 | resolved "https://registry.yarnpkg.com/rollup/-/rollup-0.36.3.tgz#c89ac479828924ff8f69c1d44541cb4ea2fc11fc" 1774 | dependencies: 1775 | source-map-support "^0.4.0" 1776 | 1777 | rollup-plugin-commonjs: 1778 | version "5.0.5" 1779 | resolved "https://registry.yarnpkg.com/rollup-plugin-commonjs/-/rollup-plugin-commonjs-5.0.5.tgz#14f93d92cb70e6c31142914b83cd3e904be30c1f" 1780 | dependencies: 1781 | acorn "^4.0.1" 1782 | estree-walker "^0.2.1" 1783 | magic-string "^0.16.0" 1784 | resolve "^1.1.7" 1785 | rollup-pluginutils "^1.5.1" 1786 | 1787 | rollup-plugin-node-resolve: 1788 | version "2.0.0" 1789 | resolved "https://registry.yarnpkg.com/rollup-plugin-node-resolve/-/rollup-plugin-node-resolve-2.0.0.tgz#07e0ae94ac002a3ea36e8f33ca121d9f836b1309" 1790 | dependencies: 1791 | browser-resolve "^1.11.0" 1792 | builtin-modules "^1.1.0" 1793 | resolve "^1.1.6" 1794 | 1795 | rollup-pluginutils@^1.5.1: 1796 | version "1.5.2" 1797 | resolved "https://registry.yarnpkg.com/rollup-pluginutils/-/rollup-pluginutils-1.5.2.tgz#1e156e778f94b7255bfa1b3d0178be8f5c552408" 1798 | dependencies: 1799 | estree-walker "^0.2.1" 1800 | minimatch "^3.0.2" 1801 | 1802 | run-sequence: 1803 | version "1.2.2" 1804 | resolved "https://registry.yarnpkg.com/run-sequence/-/run-sequence-1.2.2.tgz#5095a0bebe98733b0140bd08dd80ec030ddacdeb" 1805 | dependencies: 1806 | chalk "*" 1807 | gulp-util "*" 1808 | 1809 | rxjs: 1810 | version "5.0.0-rc.1" 1811 | resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.0.0-rc.1.tgz#9e02b7044da81a2d5e138908d22af77e22d96973" 1812 | dependencies: 1813 | symbol-observable "^1.0.1" 1814 | 1815 | rxjs-es: 1816 | version "5.0.0-beta.12" 1817 | resolved "https://registry.yarnpkg.com/rxjs-es/-/rxjs-es-5.0.0-beta.12.tgz#cf161b173f5086feec113b82c4d95187b2f11c43" 1818 | dependencies: 1819 | symbol-observable "^1.0.1" 1820 | 1821 | saucelabs@~1.3.0: 1822 | version "1.3.0" 1823 | resolved "https://registry.yarnpkg.com/saucelabs/-/saucelabs-1.3.0.tgz#d240e8009df7fa87306ec4578a69ba3b5c424fee" 1824 | dependencies: 1825 | https-proxy-agent "^1.0.0" 1826 | 1827 | sax@0.6.x: 1828 | version "0.6.1" 1829 | resolved "https://registry.yarnpkg.com/sax/-/sax-0.6.1.tgz#563b19c7c1de892e09bfc4f2fc30e3c27f0952b9" 1830 | 1831 | selenium-webdriver@2.53.3: 1832 | version "2.53.3" 1833 | resolved "https://registry.yarnpkg.com/selenium-webdriver/-/selenium-webdriver-2.53.3.tgz#d29ff5a957dff1a1b49dc457756e4e4bfbdce085" 1834 | dependencies: 1835 | adm-zip "0.4.4" 1836 | rimraf "^2.2.8" 1837 | tmp "0.0.24" 1838 | ws "^1.0.1" 1839 | xml2js "0.4.4" 1840 | 1841 | semver@^4.1.0: 1842 | version "4.3.6" 1843 | resolved "https://registry.yarnpkg.com/semver/-/semver-4.3.6.tgz#300bc6e0e86374f7ba61068b5b1ecd57fc6532da" 1844 | 1845 | semver@^5.3.0, "semver@2 || 3 || 4 || 5": 1846 | version "5.3.0" 1847 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" 1848 | 1849 | semver@~5.0.1: 1850 | version "5.0.3" 1851 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.0.3.tgz#77466de589cd5d3c95f138aa78bc569a3cb5d27a" 1852 | 1853 | sequencify@~0.0.7: 1854 | version "0.0.7" 1855 | resolved "https://registry.yarnpkg.com/sequencify/-/sequencify-0.0.7.tgz#90cff19d02e07027fd767f5ead3e7b95d1e7380c" 1856 | 1857 | sigmund@^1.0.1, sigmund@~1.0.0: 1858 | version "1.0.1" 1859 | resolved "https://registry.yarnpkg.com/sigmund/-/sigmund-1.0.1.tgz#3ff21f198cad2175f9f3b781853fd94d0d19b590" 1860 | 1861 | signal-exit@^3.0.0: 1862 | version "3.0.1" 1863 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.1.tgz#5a4c884992b63a7acd9badb7894c3ee9cfccad81" 1864 | 1865 | sntp@1.x.x: 1866 | version "1.0.9" 1867 | resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" 1868 | dependencies: 1869 | hoek "2.x.x" 1870 | 1871 | source-list-map@~0.1.0: 1872 | version "0.1.6" 1873 | resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-0.1.6.tgz#e1e6f94f0b40c4d28dcf8f5b8766e0e45636877f" 1874 | 1875 | source-map-resolve@^0.3.0: 1876 | version "0.3.1" 1877 | resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.3.1.tgz#610f6122a445b8dd51535a2a71b783dfc1248761" 1878 | dependencies: 1879 | atob "~1.1.0" 1880 | resolve-url "~0.2.1" 1881 | source-map-url "~0.3.0" 1882 | urix "~0.1.0" 1883 | 1884 | source-map-support@^0.3.1: 1885 | version "0.3.3" 1886 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.3.3.tgz#34900977d5ba3f07c7757ee72e73bb1a9b53754f" 1887 | dependencies: 1888 | source-map "0.1.32" 1889 | 1890 | source-map-support@^0.4.0: 1891 | version "0.4.3" 1892 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.3.tgz#693c8383d4389a4569486987c219744dfc601685" 1893 | dependencies: 1894 | source-map "^0.5.3" 1895 | 1896 | source-map-support@~0.4.0: 1897 | version "0.4.6" 1898 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.4.6.tgz#32552aa64b458392a85eab3b0b5ee61527167aeb" 1899 | dependencies: 1900 | source-map "^0.5.3" 1901 | 1902 | source-map-url@~0.3.0: 1903 | version "0.3.0" 1904 | resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.3.0.tgz#7ecaf13b57bcd09da8a40c5d269db33799d4aaf9" 1905 | 1906 | source-map@^0.1.38: 1907 | version "0.1.43" 1908 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.43.tgz#c24bc146ca517c1471f5dacbe2571b2b7f9e3346" 1909 | dependencies: 1910 | amdefine ">=0.0.4" 1911 | 1912 | source-map@^0.4.2, source-map@~0.4.1: 1913 | version "0.4.4" 1914 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" 1915 | dependencies: 1916 | amdefine ">=0.0.4" 1917 | 1918 | source-map@^0.5.3: 1919 | version "0.5.6" 1920 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.6.tgz#75ce38f52bf0733c5a7f0c118d81334a2bb5f412" 1921 | 1922 | source-map@0.1.32: 1923 | version "0.1.32" 1924 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.32.tgz#c8b6c167797ba4740a8ea33252162ff08591b266" 1925 | dependencies: 1926 | amdefine ">=0.0.4" 1927 | 1928 | source-map@0.1.34: 1929 | version "0.1.34" 1930 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.1.34.tgz#a7cfe89aec7b1682c3b198d0acfb47d7d090566b" 1931 | dependencies: 1932 | amdefine ">=0.0.4" 1933 | 1934 | sparkles@^1.0.0: 1935 | version "1.0.0" 1936 | resolved "https://registry.yarnpkg.com/sparkles/-/sparkles-1.0.0.tgz#1acbbfb592436d10bbe8f785b7cc6f82815012c3" 1937 | 1938 | spdx-correct@~1.0.0: 1939 | version "1.0.2" 1940 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-1.0.2.tgz#4b3073d933ff51f3912f03ac5519498a4150db40" 1941 | dependencies: 1942 | spdx-license-ids "^1.0.2" 1943 | 1944 | spdx-expression-parse@~1.0.0: 1945 | version "1.0.4" 1946 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-1.0.4.tgz#9bdf2f20e1f40ed447fbe273266191fced51626c" 1947 | 1948 | spdx-license-ids@^1.0.2: 1949 | version "1.2.2" 1950 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-1.2.2.tgz#c9df7a3424594ade6bd11900d596696dc06bac57" 1951 | 1952 | sshpk@^1.7.0: 1953 | version "1.10.1" 1954 | resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.10.1.tgz#30e1a5d329244974a1af61511339d595af6638b0" 1955 | dependencies: 1956 | asn1 "~0.2.3" 1957 | assert-plus "^1.0.0" 1958 | dashdash "^1.12.0" 1959 | getpass "^0.1.1" 1960 | optionalDependencies: 1961 | bcrypt-pbkdf "^1.0.0" 1962 | ecc-jsbn "~0.1.1" 1963 | jodid25519 "^1.0.0" 1964 | jsbn "~0.1.0" 1965 | tweetnacl "~0.14.0" 1966 | 1967 | stream-consume@~0.1.0: 1968 | version "0.1.0" 1969 | resolved "https://registry.yarnpkg.com/stream-consume/-/stream-consume-0.1.0.tgz#a41ead1a6d6081ceb79f65b061901b6d8f3d1d0f" 1970 | 1971 | string_decoder@~0.10.x: 1972 | version "0.10.31" 1973 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" 1974 | 1975 | stringstream@~0.0.4: 1976 | version "0.0.5" 1977 | resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.5.tgz#4e484cd4de5a0bbbee18e46307710a8a81621878" 1978 | 1979 | strip-ansi@^3.0.0: 1980 | version "3.0.1" 1981 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" 1982 | dependencies: 1983 | ansi-regex "^2.0.0" 1984 | 1985 | strip-bom@^1.0.0: 1986 | version "1.0.0" 1987 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-1.0.0.tgz#85b8862f3844b5a6d5ec8467a93598173a36f794" 1988 | dependencies: 1989 | first-chunk-stream "^1.0.0" 1990 | is-utf8 "^0.2.0" 1991 | 1992 | strip-bom@^2.0.0: 1993 | version "2.0.0" 1994 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" 1995 | dependencies: 1996 | is-utf8 "^0.2.0" 1997 | 1998 | strip-indent@^1.0.1: 1999 | version "1.0.1" 2000 | resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" 2001 | dependencies: 2002 | get-stdin "^4.0.1" 2003 | 2004 | strip-json-comments@^2.0.0: 2005 | version "2.0.1" 2006 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" 2007 | 2008 | supports-color@^2.0.0: 2009 | version "2.0.0" 2010 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" 2011 | 2012 | symbol-observable@^1.0.1: 2013 | version "1.0.3" 2014 | resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.3.tgz#0fdb005e84f346a899d492beba23068b32d1525a" 2015 | 2016 | through2@^0.6.1: 2017 | version "0.6.5" 2018 | resolved "https://registry.yarnpkg.com/through2/-/through2-0.6.5.tgz#41ab9c67b29d57209071410e1d7a7a968cd3ad48" 2019 | dependencies: 2020 | readable-stream ">=1.0.33-1 <1.1.0-0" 2021 | xtend ">=4.0.0 <4.1.0-0" 2022 | 2023 | through2@^2.0.0: 2024 | version "2.0.1" 2025 | resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.1.tgz#384e75314d49f32de12eebb8136b8eb6b5d59da9" 2026 | dependencies: 2027 | readable-stream "~2.0.0" 2028 | xtend "~4.0.0" 2029 | 2030 | tildify@^1.0.0: 2031 | version "1.2.0" 2032 | resolved "https://registry.yarnpkg.com/tildify/-/tildify-1.2.0.tgz#dcec03f55dca9b7aa3e5b04f21817eb56e63588a" 2033 | dependencies: 2034 | os-homedir "^1.0.0" 2035 | 2036 | time-stamp@^1.0.0: 2037 | version "1.0.1" 2038 | resolved "https://registry.yarnpkg.com/time-stamp/-/time-stamp-1.0.1.tgz#9f4bd23559c9365966f3302dbba2b07c6b99b151" 2039 | 2040 | tmp@0.0.24: 2041 | version "0.0.24" 2042 | resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.24.tgz#d6a5e198d14a9835cc6f2d7c3d9e302428c8cf12" 2043 | 2044 | tough-cookie@~2.3.0: 2045 | version "2.3.2" 2046 | resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.2.tgz#f081f76e4c85720e6c37a5faced737150d84072a" 2047 | dependencies: 2048 | punycode "^1.4.1" 2049 | 2050 | trim-newlines@^1.0.0: 2051 | version "1.0.0" 2052 | resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" 2053 | 2054 | ts-node: 2055 | version "1.4.3" 2056 | resolved "https://registry.yarnpkg.com/ts-node/-/ts-node-1.4.3.tgz#d96399b6257d6ab0f0c61487e23c6713594666be" 2057 | dependencies: 2058 | arrify "^1.0.0" 2059 | chalk "^1.1.1" 2060 | diff "^3.0.0" 2061 | make-error "^1.1.1" 2062 | minimist "^1.2.0" 2063 | mkdirp "^0.5.1" 2064 | pinkie "^2.0.4" 2065 | source-map-support "^0.4.0" 2066 | tsconfig "^5.0.2" 2067 | xtend "^4.0.0" 2068 | yn "^1.2.0" 2069 | 2070 | tsconfig@^5.0.2: 2071 | version "5.0.3" 2072 | resolved "https://registry.yarnpkg.com/tsconfig/-/tsconfig-5.0.3.tgz#5f4278e701800967a8fc383fd19648878f2a6e3a" 2073 | dependencies: 2074 | any-promise "^1.3.0" 2075 | parse-json "^2.2.0" 2076 | strip-bom "^2.0.0" 2077 | strip-json-comments "^2.0.0" 2078 | 2079 | tsickle@^0.1.7: 2080 | version "0.1.7" 2081 | resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.1.7.tgz#bfe8f4cdcdaf9a40b84a729a38480c2f824f18ab" 2082 | dependencies: 2083 | minimist "^1.2.0" 2084 | mkdirp "^0.5.1" 2085 | source-map "^0.4.2" 2086 | source-map-support "^0.3.1" 2087 | 2088 | tunnel-agent@~0.4.1: 2089 | version "0.4.3" 2090 | resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.4.3.tgz#6373db76909fe570e08d73583365ed828a74eeeb" 2091 | 2092 | tweetnacl@^0.14.3, tweetnacl@~0.14.0: 2093 | version "0.14.3" 2094 | resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.3.tgz#3da382f670f25ded78d7b3d1792119bca0b7132d" 2095 | 2096 | typescript: 2097 | version "2.0.3" 2098 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.0.3.tgz#33dec9eae86b8eee327dd419ca050c853cabd514" 2099 | 2100 | uglify-to-browserify@~1.0.0: 2101 | version "1.0.2" 2102 | resolved "https://registry.yarnpkg.com/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz#6e0924d6bda6b5afe349e39a6d632850a0f882b7" 2103 | 2104 | uglifyjs: 2105 | version "2.4.10" 2106 | resolved "https://registry.yarnpkg.com/uglifyjs/-/uglifyjs-2.4.10.tgz#632927319fa6a3da3fc91f9773ac27bfe6c3ee92" 2107 | dependencies: 2108 | async "~0.2.6" 2109 | source-map "0.1.34" 2110 | uglify-to-browserify "~1.0.0" 2111 | yargs "~1.3.3" 2112 | 2113 | ultron@1.0.x: 2114 | version "1.0.2" 2115 | resolved "https://registry.yarnpkg.com/ultron/-/ultron-1.0.2.tgz#ace116ab557cd197386a4e88f4685378c8b2e4fa" 2116 | 2117 | unc-path-regex@^0.1.0: 2118 | version "0.1.2" 2119 | resolved "https://registry.yarnpkg.com/unc-path-regex/-/unc-path-regex-0.1.2.tgz#e73dd3d7b0d7c5ed86fbac6b0ae7d8c6a69d50fa" 2120 | 2121 | unique-stream@^1.0.0: 2122 | version "1.0.0" 2123 | resolved "https://registry.yarnpkg.com/unique-stream/-/unique-stream-1.0.0.tgz#d59a4a75427447d9aa6c91e70263f8d26a4b104b" 2124 | 2125 | urix@^0.1.0, urix@~0.1.0: 2126 | version "0.1.0" 2127 | resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" 2128 | 2129 | user-home@^1.1.1: 2130 | version "1.1.1" 2131 | resolved "https://registry.yarnpkg.com/user-home/-/user-home-1.1.1.tgz#2b5be23a32b63a7c9deb8d0f28d485724a3df190" 2132 | 2133 | util-deprecate@~1.0.1: 2134 | version "1.0.2" 2135 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2136 | 2137 | v8flags@^2.0.2: 2138 | version "2.0.11" 2139 | resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-2.0.11.tgz#bca8f30f0d6d60612cc2c00641e6962d42ae6881" 2140 | dependencies: 2141 | user-home "^1.1.1" 2142 | 2143 | validate-npm-package-license@^3.0.1: 2144 | version "3.0.1" 2145 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.1.tgz#2804babe712ad3379459acfbe24746ab2c303fbc" 2146 | dependencies: 2147 | spdx-correct "~1.0.0" 2148 | spdx-expression-parse "~1.0.0" 2149 | 2150 | verror@1.3.6: 2151 | version "1.3.6" 2152 | resolved "https://registry.yarnpkg.com/verror/-/verror-1.3.6.tgz#cff5df12946d297d2baaefaa2689e25be01c005c" 2153 | dependencies: 2154 | extsprintf "1.0.2" 2155 | 2156 | vinyl-fs@^0.3.0: 2157 | version "0.3.14" 2158 | resolved "https://registry.yarnpkg.com/vinyl-fs/-/vinyl-fs-0.3.14.tgz#9a6851ce1cac1c1cea5fe86c0931d620c2cfa9e6" 2159 | dependencies: 2160 | defaults "^1.0.0" 2161 | glob-stream "^3.1.5" 2162 | glob-watcher "^0.0.6" 2163 | graceful-fs "^3.0.0" 2164 | mkdirp "^0.5.0" 2165 | strip-bom "^1.0.0" 2166 | through2 "^0.6.1" 2167 | vinyl "^0.4.0" 2168 | 2169 | vinyl@^0.4.0: 2170 | version "0.4.6" 2171 | resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.4.6.tgz#2f356c87a550a255461f36bbeb2a5ba8bf784847" 2172 | dependencies: 2173 | clone "^0.2.0" 2174 | clone-stats "^0.0.1" 2175 | 2176 | vinyl@^0.5.0: 2177 | version "0.5.3" 2178 | resolved "https://registry.yarnpkg.com/vinyl/-/vinyl-0.5.3.tgz#b0455b38fc5e0cf30d4325132e461970c2091cde" 2179 | dependencies: 2180 | clone "^1.0.0" 2181 | clone-stats "^0.0.1" 2182 | replace-ext "0.0.1" 2183 | 2184 | vlq@^0.2.1: 2185 | version "0.2.1" 2186 | resolved "https://registry.yarnpkg.com/vlq/-/vlq-0.2.1.tgz#14439d711891e682535467f8587c5630e4222a6c" 2187 | 2188 | webdriver-manager@^10.2.6, webdriver-manager@^10.2.8: 2189 | version "10.2.8" 2190 | resolved "https://registry.yarnpkg.com/webdriver-manager/-/webdriver-manager-10.2.8.tgz#b3b4ef7983271a97b9432c4211c39ff5caecd9dc" 2191 | dependencies: 2192 | adm-zip "^0.4.7" 2193 | chalk "^1.1.1" 2194 | del "^2.2.0" 2195 | glob "^7.0.3" 2196 | ini "^1.3.4" 2197 | minimist "^1.2.0" 2198 | q "^1.4.1" 2199 | request "^2.78.0" 2200 | rimraf "^2.5.2" 2201 | semver "^5.3.0" 2202 | 2203 | webpack-core@^0.6.8: 2204 | version "0.6.8" 2205 | resolved "https://registry.yarnpkg.com/webpack-core/-/webpack-core-0.6.8.tgz#edf9135de00a6a3c26dd0f14b208af0aa4af8d0a" 2206 | dependencies: 2207 | source-list-map "~0.1.0" 2208 | source-map "~0.4.1" 2209 | 2210 | which@^1.2.10: 2211 | version "1.2.11" 2212 | resolved "https://registry.yarnpkg.com/which/-/which-1.2.11.tgz#c8b2eeea6b8c1659fa7c1dd4fdaabe9533dc5e8b" 2213 | dependencies: 2214 | isexe "^1.1.1" 2215 | 2216 | wordwrap@~0.0.2: 2217 | version "0.0.3" 2218 | resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-0.0.3.tgz#a3d5da6cd5c0bc0008d37234bbaf1bed63059107" 2219 | 2220 | wrappy@1: 2221 | version "1.0.2" 2222 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2223 | 2224 | ws@^1.0.1: 2225 | version "1.1.1" 2226 | resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.1.tgz#082ddb6c641e85d4bb451f03d52f06eabdb1f018" 2227 | dependencies: 2228 | options ">=0.0.5" 2229 | ultron "1.0.x" 2230 | 2231 | xhr2@^0.1.3: 2232 | version "0.1.3" 2233 | resolved "https://registry.yarnpkg.com/xhr2/-/xhr2-0.1.3.tgz#cbfc4759a69b4a888e78cf4f20b051038757bd11" 2234 | 2235 | xml2js@0.4.4: 2236 | version "0.4.4" 2237 | resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.4.tgz#3111010003008ae19240eba17497b57c729c555d" 2238 | dependencies: 2239 | sax "0.6.x" 2240 | xmlbuilder ">=1.0.0" 2241 | 2242 | xmlbuilder@>=1.0.0: 2243 | version "8.2.2" 2244 | resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-8.2.2.tgz#69248673410b4ba42e1a6136551d2922335aa773" 2245 | 2246 | xtend@^4.0.0, "xtend@>=4.0.0 <4.1.0-0", xtend@~4.0.0: 2247 | version "4.0.1" 2248 | resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af" 2249 | 2250 | yargs@~1.3.3: 2251 | version "1.3.3" 2252 | resolved "https://registry.yarnpkg.com/yargs/-/yargs-1.3.3.tgz#054de8b61f22eefdb7207059eaef9d6b83fb931a" 2253 | 2254 | yn@^1.2.0: 2255 | version "1.2.0" 2256 | resolved "https://registry.yarnpkg.com/yn/-/yn-1.2.0.tgz#d237a4c533f279b2b89d3acac2db4b8c795e4a63" 2257 | 2258 | zone.js: 2259 | version "0.6.25" 2260 | resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.6.25.tgz#a41b57fe8c0ff3b8f077de3b193a86a234420301" 2261 | 2262 | --------------------------------------------------------------------------------