Fixed TSLint. Now I'll have to fix the actual linting errors.

This commit is contained in:
Manuel Friedli 2017-04-15 18:51:22 +02:00
parent 1a689efc3c
commit 9ffbee6e0d
32 changed files with 1201 additions and 981 deletions

View file

@ -64,7 +64,7 @@
"protractor": "^5.1.0", "protractor": "^5.1.0",
"protractor-console": "^2.0.1", "protractor-console": "^2.0.1",
"ts-node": "^3.0.0", "ts-node": "^3.0.0",
"tslint": "^5.0.0", "tslint": "^4.0.0",
"typescript": "~2.2.0" "typescript": "~2.2.0"
} }
} }

View file

@ -1,5 +1,5 @@
import { NgModule } from '@angular/core'; import {NgModule} from "@angular/core";
import { Routes, RouterModule } from '@angular/router'; import {RouterModule, Routes} from "@angular/router";
const routes: Routes = [ const routes: Routes = [
{ {
@ -12,4 +12,5 @@ const routes: Routes = [
imports: [RouterModule.forRoot(routes)], imports: [RouterModule.forRoot(routes)],
exports: [RouterModule] exports: [RouterModule]
}) })
export class AppRoutingModule { } export class AppRoutingModule {
}

View file

@ -1,10 +1,10 @@
import { BrowserModule } from '@angular/platform-browser'; import {BrowserModule} from "@angular/platform-browser";
import { NgModule } from '@angular/core'; import {NgModule} from "@angular/core";
import { FormsModule } from '@angular/forms'; import {FormsModule} from "@angular/forms";
import { HttpModule } from '@angular/http'; import {HttpModule} from "@angular/http";
import { AppRoutingModule } from './app-routing.module'; import {AppRoutingModule} from "./app-routing.module";
import { AppComponent } from './app.component'; import {AppComponent} from "./app.component";
@NgModule({ @NgModule({
declarations: [ declarations: [
@ -19,4 +19,5 @@ import { AppComponent } from './app.component';
providers: [], providers: [],
bootstrap: [AppComponent] bootstrap: [AppComponent]
}) })
export class AppModule { } export class AppModule {
}

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class Base64Decoder implements Converter { export class Base64Decoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Decode Base 64"; return "Decode Base 64";
} }
getId():string { getId(): string {
return "base64decode"; return "base64decode";
} }
convert(input:string):string { convert(input: string): string {
try { try {
return atob(input); return atob(input);
} catch (exception) { } catch (exception) {
throw new Error("Could not decode base64 string. Maybe corrupt input?"); throw new Error("Could not decode base64 string. Maybe corrupt input?");
}
} }
}
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class BinToDecConverter implements Converter { export class BinToDecConverter implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Convert binary to decimal"; return "Convert binary to decimal";
} }
getId():string { getId(): string {
return "bintodec"; return "bintodec";
} }
convert(input:string):string { convert(input: string): string {
let n:number = parseInt(input, 2); let n: number = parseInt(input, 2);
if (isNaN(n)) { if (isNaN(n)) {
throw new Error("The input seems not to be a valid binary number."); throw new Error("The input seems not to be a valid binary number.");
}
return n.toString(10);
} }
return n.toString(10);
}
} }

View file

@ -1,5 +1,5 @@
export interface Converter { export interface Converter {
getDisplayname():string; getDisplayname(): string;
getId():string; getId(): string;
convert(input:string):string; convert(input: string): string;
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class DecToBinConverter implements Converter { export class DecToBinConverter implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Convert decimal to binary"; return "Convert decimal to binary";
} }
getId():string { getId(): string {
return "dectobin"; return "dectobin";
} }
convert(input:string):string { convert(input: string): string {
let n:number = parseInt(input, 10); let n: number = parseInt(input, 10);
if (isNaN(n)) { if (isNaN(n)) {
throw new Error("The input seems not to be a valid integer."); throw new Error("The input seems not to be a valid integer.");
}
return n.toString(2);
} }
return n.toString(2);
}
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class DecToHexConverter implements Converter { export class DecToHexConverter implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Convert decimal to hexadecimal"; return "Convert decimal to hexadecimal";
} }
getId():string { getId(): string {
return "dectohex"; return "dectohex";
} }
convert(input:string):string { convert(input: string): string {
let n:number = parseInt(input, 10); let n: number = parseInt(input, 10);
if (isNaN(n)) { if (isNaN(n)) {
throw new Error("The input seems not to be a valid integer."); throw new Error("The input seems not to be a valid integer.");
}
return n.toString(16);
} }
return n.toString(16);
}
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class HexToDecConverter implements Converter { export class HexToDecConverter implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Convert hexadecimal to decimal"; return "Convert hexadecimal to decimal";
} }
getId():string { getId(): string {
return "hextodec"; return "hextodec";
} }
convert(input:string):string { convert(input: string): string {
let n:number = parseInt(input, 16); let n: number = parseInt(input, 16);
if (isNaN(n)) { if (isNaN(n)) {
throw new Error("The input seems not to be a valid hexadecimal number.") throw new Error("The input seems not to be a valid hexadecimal number.")
}
return n.toString(10);
} }
return n.toString(10);
}
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class HTMLEntitiesDecoder implements Converter { export class HTMLEntitiesDecoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Decode HTML entities"; return "Decode HTML entities";
} }
getId():string { getId(): string {
return "decodehtmlentities"; return "decodehtmlentities";
} }
convert(input:string):string { convert(input: string): string {
return input return input
.replace(/\&quot\;/g, "\"") .replace(/\&quot\;/g, "\"")
.replace(/\&gt\;/g, ">") .replace(/\&gt\;/g, ">")
.replace(/\&lt\;/g, "<") .replace(/\&lt\;/g, "<")
.replace(/\&amp\;/g, "&"); .replace(/\&amp\;/g, "&");
} }
} }

View file

@ -1,19 +1,19 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class HTMLEntitiesEncoder implements Converter { export class HTMLEntitiesEncoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Encode HTML entities"; return "Encode HTML entities";
} }
getId():string { getId(): string {
return "encodehtmlentities"; return "encodehtmlentities";
} }
convert(input:string):string { convert(input: string): string {
return input return input
.replace(/\&/g, "&amp;") .replace(/\&/g, "&amp;")
.replace(/\</g, "&lt;") .replace(/\</g, "&lt;")
.replace(/\>/g, "&gt;") .replace(/\>/g, "&gt;")
.replace(/\"/g, "&quot;"); .replace(/\"/g, "&quot;");
} }
} }

View file

@ -3,18 +3,18 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class PunycodeDecoder implements Converter { export class PunycodeDecoder implements Converter {
constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname(): string { getDisplayname(): string {
return "Decode from punycode"; return "Decode from punycode";
} }
getId(): string { getId(): string {
return "decodepunycode"; return "decodepunycode";
} }
convert(input: string): string { convert(input: string): string {
return this.nativeLibraryWrapperService.punycode.decode(input); return this.nativeLibraryWrapperService.punycode.decode(input);
} }
} }

View file

@ -3,18 +3,18 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class PunycodeEncoder implements Converter { export class PunycodeEncoder implements Converter {
constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname(): string { getDisplayname(): string {
return "Encode as punycode"; return "Encode as punycode";
} }
getId(): string { getId(): string {
return "encodepunycode"; return "encodepunycode";
} }
convert(input: string): string { convert(input: string): string {
return this.nativeLibraryWrapperService.punycode.encode(input); return this.nativeLibraryWrapperService.punycode.encode(input);
} }
} }

View file

@ -3,22 +3,22 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class QuotedPrintableDecoder implements Converter { export class QuotedPrintableDecoder implements Converter {
constructor(private nativeLibraryWrapperService:NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname():string { getDisplayname(): string {
return "Decode quoted printable"; return "Decode quoted printable";
} }
getId():string { getId(): string {
return "decodequotedprintable"; return "decodequotedprintable";
} }
convert(input:string):string { convert(input: string): string {
try { try {
return this.nativeLibraryWrapperService.quotedPrintable.decode(input); return this.nativeLibraryWrapperService.quotedPrintable.decode(input);
} catch (error) { } catch (error) {
throw new Error("The input can not be interpreted as quoted-printable. May be corrupt?"); throw new Error("The input can not be interpreted as quoted-printable. May be corrupt?");
}
} }
}
} }

View file

@ -3,18 +3,18 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class QuotedPrintableEncoder implements Converter { export class QuotedPrintableEncoder implements Converter {
constructor(private nativeLibraryWrapperService:NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname():string { getDisplayname(): string {
return "Encode quoted printable"; return "Encode quoted printable";
} }
getId():string { getId(): string {
return "encodequotedprintable"; return "encodequotedprintable";
} }
convert(input:string):string { convert(input: string): string {
return this.nativeLibraryWrapperService.quotedPrintable.encode(input); return this.nativeLibraryWrapperService.quotedPrintable.encode(input);
} }
} }

View file

@ -1,15 +1,15 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class URIComponentDecoder implements Converter { export class URIComponentDecoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Decode URI component"; return "Decode URI component";
} }
getId():string { getId(): string {
return "uricomponentdecode"; return "uricomponentdecode";
} }
convert(input:string):string { convert(input: string): string {
return decodeURIComponent(input); return decodeURIComponent(input);
} }
} }

View file

@ -1,17 +1,17 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class URIComponentEncoder implements Converter { export class URIComponentEncoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Encode URI component"; return "Encode URI component";
} }
getId():string { getId(): string {
return "uricomponentencode"; return "uricomponentencode";
} }
convert(input:string):string { convert(input: string): string {
return encodeURIComponent(input).replace(/[!'()*]/g, function (c) { return encodeURIComponent(input).replace(/[!'()*]/g, function (c) {
return '%' + c.charCodeAt(0).toString(16); return '%' + c.charCodeAt(0).toString(16);
}); });
} }
} }

View file

@ -1,15 +1,15 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class URIDecoder implements Converter { export class URIDecoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Decode URI"; return "Decode URI";
} }
getId():string { getId(): string {
return "uridecode"; return "uridecode";
} }
convert(input:string):string { convert(input: string): string {
return decodeURI(input); return decodeURI(input);
} }
} }

View file

@ -1,15 +1,15 @@
import {Converter} from "./converter"; import {Converter} from "./converter";
export class URIEncoder implements Converter { export class URIEncoder implements Converter {
getDisplayname():string { getDisplayname(): string {
return "Encode URI"; return "Encode URI";
} }
getId():string { getId(): string {
return "uriencode"; return "uriencode";
} }
convert(input:string):string { convert(input: string): string {
return encodeURI(input).replace(/%5B/g, '[').replace(/%5D/g, ']'); return encodeURI(input).replace(/%5B/g, '[').replace(/%5D/g, ']');
} }
} }

View file

@ -3,22 +3,22 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class UTF8Decoder implements Converter { export class UTF8Decoder implements Converter {
constructor(private nativeLibraryWrapperService:NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname():string { getDisplayname(): string {
return "Decode UTF-8"; return "Decode UTF-8";
} }
getId():string { getId(): string {
return "decodeutf8"; return "decodeutf8";
} }
convert(input:string):string { convert(input: string): string {
try { try {
return this.nativeLibraryWrapperService.utf8.decode(input); return this.nativeLibraryWrapperService.utf8.decode(input);
} catch (error) { } catch (error) {
throw new Error("The input can not be interpreted a valid UTF-8 encoded string. May be corrupt?"); throw new Error("The input can not be interpreted a valid UTF-8 encoded string. May be corrupt?");
}
} }
}
} }

View file

@ -3,22 +3,22 @@ import {NativeLibraryWrapperService} from "../nativelibrarywrapper.service";
export class UTF8Encoder implements Converter { export class UTF8Encoder implements Converter {
constructor(private nativeLibraryWrapperService:NativeLibraryWrapperService) { constructor(private nativeLibraryWrapperService: NativeLibraryWrapperService) {
} }
getDisplayname():string { getDisplayname(): string {
return "Encode UTF-8"; return "Encode UTF-8";
} }
getId():string { getId(): string {
return "encodeutf8"; return "encodeutf8";
} }
convert(input:string):string { convert(input: string): string {
try { try {
return this.nativeLibraryWrapperService.utf8.encode(input); return this.nativeLibraryWrapperService.utf8.encode(input);
} catch (error) { } catch (error) {
throw new Error("The input can not be encoded as UTF-8. May be corrupt?"); throw new Error("The input can not be encoded as UTF-8. May be corrupt?");
}
} }
}
} }

View file

@ -22,52 +22,52 @@ import {UTF8Decoder} from "./converter/utf8decoder";
@Injectable() @Injectable()
export class ConverterRegistryService { export class ConverterRegistryService {
private converters:Converter[] = []; private converters: Converter[] = [];
constructor(private wrapper:NativeLibraryWrapperService) { constructor(private wrapper: NativeLibraryWrapperService) {
this.init(); this.init();
} }
public getAllConverters():Converter[] { public getAllConverters(): Converter[] {
return this.converters; return this.converters;
} }
public getConverter(id:string):Converter { public getConverter(id: string): Converter {
for (let i = 0; i < this.converters.length; i++) { for (let i = 0; i < this.converters.length; i++) {
if (this.converters[i].getId() == id) { if (this.converters[i].getId() == id) {
return this.converters[i]; return this.converters[i];
} }
}
return undefined;
} }
return undefined;
}
private init():void { private init(): void {
this.registerConverter(new Base64Encoder()); this.registerConverter(new Base64Encoder());
this.registerConverter(new Base64Decoder()); this.registerConverter(new Base64Decoder());
this.registerConverter(new URIEncoder()); this.registerConverter(new URIEncoder());
this.registerConverter(new URIDecoder()); this.registerConverter(new URIDecoder());
this.registerConverter(new URIComponentEncoder()); this.registerConverter(new URIComponentEncoder());
this.registerConverter(new URIComponentDecoder()); this.registerConverter(new URIComponentDecoder());
this.registerConverter(new HTMLEntitiesEncoder()); this.registerConverter(new HTMLEntitiesEncoder());
this.registerConverter(new HTMLEntitiesDecoder()); this.registerConverter(new HTMLEntitiesDecoder());
this.registerConverter(new QuotedPrintableEncoder(this.wrapper)); this.registerConverter(new QuotedPrintableEncoder(this.wrapper));
this.registerConverter(new QuotedPrintableDecoder(this.wrapper)); this.registerConverter(new QuotedPrintableDecoder(this.wrapper));
this.registerConverter(new DecToHexConverter()); this.registerConverter(new DecToHexConverter());
this.registerConverter(new HexToDecConverter()); this.registerConverter(new HexToDecConverter());
this.registerConverter(new DecToBinConverter()); this.registerConverter(new DecToBinConverter());
this.registerConverter(new BinToDecConverter()); this.registerConverter(new BinToDecConverter());
this.registerConverter(new PunycodeEncoder(this.wrapper)); this.registerConverter(new PunycodeEncoder(this.wrapper));
this.registerConverter(new PunycodeDecoder(this.wrapper)); this.registerConverter(new PunycodeDecoder(this.wrapper));
this.registerConverter(new UTF8Encoder(this.wrapper)); this.registerConverter(new UTF8Encoder(this.wrapper));
this.registerConverter(new UTF8Decoder(this.wrapper)); this.registerConverter(new UTF8Decoder(this.wrapper));
} }
private registerConverter(converter:Converter):void { private registerConverter(converter: Converter): void {
this.converters.forEach((c:Converter) => { this.converters.forEach((c: Converter) => {
if (c.getId() == converter.getId()) { if (c.getId() == converter.getId()) {
throw new Error("Converter-ID " + converter.getId() + " is already registered!"); throw new Error("Converter-ID " + converter.getId() + " is already registered!");
} }
}); });
this.converters.push(converter); this.converters.push(converter);
} }
} }

View file

@ -3,35 +3,35 @@ import {Step} from "./step";
@Injectable() @Injectable()
export class InputComponentManagerService { export class InputComponentManagerService {
private components:Step[] = []; private components: Step[] = [];
public constructor() { public constructor() {
} }
public register(component:Step):void { public register(component: Step): void {
this.components.push(component); this.components.push(component);
} }
public getAllComponents():Step[] { public getAllComponents(): Step[] {
return this.components; return this.components;
} }
public getNext(component:Step):Step { public getNext(component: Step): Step {
let index:number = component.index; let index: number = component.index;
if (index == this.components.length - 1) { if (index == this.components.length - 1) {
this.addComponent(); this.addComponent();
}
return this.components[index + 1];
} }
return this.components[index + 1];
}
public getFirst():Step { public getFirst(): Step {
if (this.components.length == 0) { if (this.components.length == 0) {
this.addComponent(); this.addComponent();
}
return this.components[0];
} }
return this.components[0];
}
private addComponent():void { private addComponent(): void {
this.register(new Step(this.components.length)); this.register(new Step(this.components.length));
} }
} }

View file

@ -1,4 +1,4 @@
export interface Punycode { export interface Punycode {
encode(input:string):string; encode(input: string): string;
decode(input:string):string; decode(input: string): string;
} }

View file

@ -1,4 +1,4 @@
export interface QuotedPrintable { export interface QuotedPrintable {
encode(input:string):string; encode(input: string): string;
decode(input:string):string; decode(input: string): string;
} }

View file

@ -1,13 +1,13 @@
import {Converter} from "./converter/converter"; import {Converter} from "./converter/converter";
export class Step { export class Step {
public content:string = ""; public content: string = "";
public selectedConverter:Converter = undefined; public selectedConverter: Converter = undefined;
public index:number; public index: number;
public error:boolean = false; public error: boolean = false;
public message:string = ""; public message: string = "";
constructor(index:number) { constructor(index: number) {
this.index = index; this.index = index;
} }
} }

View file

@ -1,4 +1,4 @@
export interface Utf8 { export interface Utf8 {
encode(input:any):string; encode(input: any): string;
decode(input:string):any; decode(input: string): any;
} }

File diff suppressed because it is too large Load diff

Before

Width:  |  Height:  |  Size: 75 KiB

After

Width:  |  Height:  |  Size: 78 KiB

View file

@ -1,8 +1,8 @@
import { enableProdMode } from '@angular/core'; import {enableProdMode} from "@angular/core";
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'; import {platformBrowserDynamic} from "@angular/platform-browser-dynamic";
import { AppModule } from './app/app.module'; import {AppModule} from "./app/app.module";
import { environment } from './environments/environment'; import {environment} from "./environments/environment";
if (environment.production) { if (environment.production) {
enableProdMode(); enableProdMode();

View file

@ -13,48 +13,36 @@
* *
* Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html * Learn more in https://angular.io/docs/ts/latest/guide/browser-support.html
*/ */
/*************************************************************************************************** /***************************************************************************************************
* BROWSER POLYFILLS * BROWSER POLYFILLS
*/ */
/** IE9, IE10 and IE11 requires all of the following polyfills. **/ /** IE9, IE10 and IE11 requires all of the following polyfills. **/
import 'core-js/es6/symbol'; import "core-js/es6/symbol";
import 'core-js/es6/object'; import "core-js/es6/object";
import 'core-js/es6/function'; import "core-js/es6/function";
import 'core-js/es6/parse-int'; import "core-js/es6/parse-int";
import 'core-js/es6/parse-float'; import "core-js/es6/parse-float";
import 'core-js/es6/number'; import "core-js/es6/number";
import 'core-js/es6/math'; import "core-js/es6/math";
import 'core-js/es6/string'; import "core-js/es6/string";
import 'core-js/es6/date'; import "core-js/es6/date";
import 'core-js/es6/array'; import "core-js/es6/array";
import 'core-js/es6/regexp'; import "core-js/es6/regexp";
import 'core-js/es6/map'; import "core-js/es6/map";
import 'core-js/es6/set'; import "core-js/es6/set";
/** IE10 and IE11 requires the following for NgClass support on SVG elements */ /** IE10 and IE11 requires the following for NgClass support on SVG elements */
// import 'classlist.js'; // Run `npm install --save classlist.js`. // import 'classlist.js'; // Run `npm install --save classlist.js`.
/** IE10 and IE11 requires the following to support `@angular/animation`. */ /** IE10 and IE11 requires the following to support `@angular/animation`. */
// import 'web-animations-js'; // Run `npm install --save web-animations-js`. // import 'web-animations-js'; // Run `npm install --save web-animations-js`.
/** Evergreen browsers require these. **/ /** Evergreen browsers require these. **/
import 'core-js/es6/reflect'; import "core-js/es6/reflect";
import 'core-js/es7/reflect'; import "core-js/es7/reflect";
/** ALL Firefox browsers require the following to support `@angular/animation`. **/ /** ALL Firefox browsers require the following to support `@angular/animation`. **/
// import 'web-animations-js'; // Run `npm install --save web-animations-js`. // import 'web-animations-js'; // Run `npm install --save web-animations-js`.
/*************************************************************************************************** /***************************************************************************************************
* Zone JS is required by Angular itself. * Zone JS is required by Angular itself.
*/ */
import 'zone.js/dist/zone'; // Included with Angular CLI. import "zone.js/dist/zone"; // Included with Angular CLI.
/*************************************************************************************************** /***************************************************************************************************

View file

@ -1,23 +1,21 @@
// This file is required by karma.conf.js and loads recursively all the .spec and framework files // This file is required by karma.conf.js and loads recursively all the .spec and framework files
import 'zone.js/dist/long-stack-trace-zone'; import "zone.js/dist/long-stack-trace-zone";
import 'zone.js/dist/proxy.js'; import "zone.js/dist/proxy.js";
import 'zone.js/dist/sync-test'; import "zone.js/dist/sync-test";
import 'zone.js/dist/jasmine-patch'; import "zone.js/dist/jasmine-patch";
import 'zone.js/dist/async-test'; import "zone.js/dist/async-test";
import 'zone.js/dist/fake-async-test'; import "zone.js/dist/fake-async-test";
import { getTestBed } from '@angular/core/testing'; import {getTestBed} from "@angular/core/testing";
import { import {BrowserDynamicTestingModule, platformBrowserDynamicTesting} from "@angular/platform-browser-dynamic/testing";
BrowserDynamicTestingModule,
platformBrowserDynamicTesting
} from '@angular/platform-browser-dynamic/testing';
// Unfortunately there's no typing for the `__karma__` variable. Just declare it as any. // Unfortunately there's no typing for the `__karma__` variable. Just declare it as any.
declare const __karma__: any; declare const __karma__: any;
declare const require: any; declare const require: any;
// Prevent Karma from running prematurely. // Prevent Karma from running prematurely.
__karma__.loaded = function () {}; __karma__.loaded = function () {
};
// First, initialize the Angular testing environment. // First, initialize the Angular testing environment.
getTestBed().initTestEnvironment( getTestBed().initTestEnvironment(

277
yarn.lock
View file

@ -212,6 +212,12 @@ amdefine@>=0.0.4:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5"
ansi-align@^1.1.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-1.1.0.tgz#2f0c1658829739add5ebb15e6b0c6e3423f016ba"
dependencies:
string-width "^1.0.1"
ansi-escapes@^1.1.0: ansi-escapes@^1.1.0:
version "1.4.0" version "1.4.0"
resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-1.4.0.tgz#d3a8a83b319aa67793662b13e761c7911422306e"
@ -385,7 +391,7 @@ aws4@^1.2.1:
version "1.6.0" version "1.6.0"
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.6.0.tgz#83ef5ca860b2b32e4a0deedee8c771b9db57471e"
babel-code-frame@^6.11.0, babel-code-frame@^6.22.0: babel-code-frame@^6.11.0, babel-code-frame@^6.20.0, babel-code-frame@^6.22.0:
version "6.22.0" version "6.22.0"
resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4" resolved "https://registry.yarnpkg.com/babel-code-frame/-/babel-code-frame-6.22.0.tgz#027620bee567a88c32561574e7fd0801d33118e4"
dependencies: dependencies:
@ -549,6 +555,18 @@ boom@2.x.x:
dependencies: dependencies:
hoek "2.x.x" hoek "2.x.x"
boxen@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.0.0.tgz#b2694baf1f605f708ff0177c12193b22f29aaaab"
dependencies:
ansi-align "^1.1.0"
camelcase "^4.0.0"
chalk "^1.1.1"
cli-boxes "^1.0.0"
string-width "^2.0.0"
term-size "^0.1.0"
widest-line "^1.0.0"
brace-expansion@^1.0.0: brace-expansion@^1.0.0:
version "1.1.7" version "1.1.7"
resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.7.tgz#3effc3c50e000531fb720eaff80f0ae8ef23cf59"
@ -694,6 +712,10 @@ camelcase@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-3.0.0.tgz#32fc4b9fcdaf845fcdf7e73bb97cac2261f0ab0a"
camelcase@^4.0.0:
version "4.1.0"
resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd"
caniuse-api@^1.5.2: caniuse-api@^1.5.2:
version "1.6.1" version "1.6.1"
resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c" resolved "https://registry.yarnpkg.com/caniuse-api/-/caniuse-api-1.6.1.tgz#b534e7c734c4f81ec5fbe8aca2ad24354b962c6c"
@ -707,6 +729,10 @@ caniuse-db@^1.0.30000529, caniuse-db@^1.0.30000634, caniuse-db@^1.0.30000639:
version "1.0.30000655" version "1.0.30000655"
resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000655.tgz#e40b6287adc938848d6708ef83d65b5f54ac1874" resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30000655.tgz#e40b6287adc938848d6708ef83d65b5f54ac1874"
capture-stack-trace@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.0.tgz#4a6fa07399c26bba47f0b2496b4d0fb408c5550d"
caseless@~0.11.0: caseless@~0.11.0:
version "0.11.0" version "0.11.0"
resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.11.0.tgz#715b96ea9841593cc33067923f5ec60ebda4f7d7"
@ -765,6 +791,10 @@ clean-css@4.0.x:
dependencies: dependencies:
source-map "0.5.x" source-map "0.5.x"
cli-boxes@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143"
cli-cursor@^2.1.0: cli-cursor@^2.1.0:
version "2.1.0" version "2.1.0"
resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5"
@ -925,6 +955,17 @@ concat-stream@1.5.0:
readable-stream "~2.0.0" readable-stream "~2.0.0"
typedarray "~0.0.5" typedarray "~0.0.5"
configstore@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.0.0.tgz#e1b8669c1803ccc50b545e92f8e6e79aa80e0196"
dependencies:
dot-prop "^4.1.0"
graceful-fs "^4.1.2"
mkdirp "^0.5.0"
unique-string "^1.0.0"
write-file-atomic "^1.1.2"
xdg-basedir "^3.0.0"
connect-history-api-fallback@^1.3.0: connect-history-api-fallback@^1.3.0:
version "1.3.0" version "1.3.0"
resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.3.0.tgz#e51d17f8f0ef0db90a64fdb47de3051556e9f169" resolved "https://registry.yarnpkg.com/connect-history-api-fallback/-/connect-history-api-fallback-1.3.0.tgz#e51d17f8f0ef0db90a64fdb47de3051556e9f169"
@ -987,6 +1028,12 @@ create-ecdh@^4.0.0:
bn.js "^4.1.0" bn.js "^4.1.0"
elliptic "^6.0.0" elliptic "^6.0.0"
create-error-class@^3.0.0:
version "3.0.2"
resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6"
dependencies:
capture-stack-trace "^1.0.0"
create-hash@^1.1.0, create-hash@^1.1.1: create-hash@^1.1.0, create-hash@^1.1.1:
version "1.1.2" version "1.1.2"
resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad" resolved "https://registry.yarnpkg.com/create-hash/-/create-hash-1.1.2.tgz#51210062d7bb7479f6c65bb41a92208b1d61abad"
@ -1003,6 +1050,13 @@ create-hmac@^1.1.0, create-hmac@^1.1.2:
create-hash "^1.1.0" create-hash "^1.1.0"
inherits "^2.0.1" inherits "^2.0.1"
cross-spawn-async@^2.1.1:
version "2.2.5"
resolved "https://registry.yarnpkg.com/cross-spawn-async/-/cross-spawn-async-2.2.5.tgz#845ff0c0834a3ded9d160daca6d390906bb288cc"
dependencies:
lru-cache "^4.0.0"
which "^1.2.8"
cross-spawn@^3.0.0: cross-spawn@^3.0.0:
version "3.0.1" version "3.0.1"
resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982"
@ -1031,6 +1085,10 @@ crypto-browserify@^3.11.0:
public-encrypt "^4.0.0" public-encrypt "^4.0.0"
randombytes "^2.0.0" randombytes "^2.0.0"
crypto-random-string@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e"
css-color-names@0.0.4: css-color-names@0.0.4:
version "0.0.4" version "0.0.4"
resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0" resolved "https://registry.yarnpkg.com/css-color-names/-/css-color-names-0.0.4.tgz#808adc2e79cf84738069b646cb20ec27beb629e0"
@ -1248,7 +1306,7 @@ di@^0.0.1:
version "0.0.1" version "0.0.1"
resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c" resolved "https://registry.yarnpkg.com/di/-/di-0.0.1.tgz#806649326ceaa7caa3306d75d985ea2748ba913c"
diff@^3.1.0, diff@^3.2.0: diff@^3.0.1, diff@^3.1.0:
version "3.2.0" version "3.2.0"
resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9" resolved "https://registry.yarnpkg.com/diff/-/diff-3.2.0.tgz#c9ce393a4b7cbd0b058a725c93df299027868ff9"
@ -1321,6 +1379,16 @@ domutils@1.5.1:
dom-serializer "0" dom-serializer "0"
domelementtype "1" domelementtype "1"
dot-prop@^4.1.0:
version "4.1.1"
resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.1.1.tgz#a8493f0b7b5eeec82525b5c7587fa7de7ca859c1"
dependencies:
is-obj "^1.0.0"
duplexer3@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2"
ecc-jsbn@~0.1.1: ecc-jsbn@~0.1.1:
version "0.1.1" version "0.1.1"
resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505" resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz#0fc73a9ed5f0d53c38193398523ef7e543777505"
@ -1485,6 +1553,17 @@ evp_bytestokey@^1.0.0:
dependencies: dependencies:
create-hash "^1.1.1" create-hash "^1.1.1"
execa@^0.4.0:
version "0.4.0"
resolved "https://registry.yarnpkg.com/execa/-/execa-0.4.0.tgz#4eb6467a36a095fabb2970ff9d5e3fb7bce6ebc3"
dependencies:
cross-spawn-async "^2.1.1"
is-stream "^1.1.0"
npm-run-path "^1.0.0"
object-assign "^4.0.1"
path-key "^1.0.0"
strip-eof "^1.0.0"
exit@^0.1.2: exit@^0.1.2:
version "0.1.2" version "0.1.2"
resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c"
@ -1807,6 +1886,10 @@ get-stdin@^4.0.1:
version "4.0.1" version "4.0.1"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe"
get-stream@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14"
getpass@^0.1.1: getpass@^0.1.1:
version "0.1.6" version "0.1.6"
resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.6.tgz#283ffd9fc1256840875311c1b60e8c40187110e6"
@ -1881,7 +1964,23 @@ globule@^1.0.0:
lodash "~4.16.4" lodash "~4.16.4"
minimatch "~3.0.2" minimatch "~3.0.2"
graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9: got@^6.7.1:
version "6.7.1"
resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0"
dependencies:
create-error-class "^3.0.0"
duplexer3 "^0.1.4"
get-stream "^3.0.0"
is-redirect "^1.0.0"
is-retry-allowed "^1.0.0"
is-stream "^1.0.0"
lowercase-keys "^1.0.0"
safe-buffer "^5.0.1"
timed-out "^4.0.0"
unzip-response "^2.0.1"
url-parse-lax "^1.0.0"
graceful-fs@^4.1.11, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9:
version "4.1.11" version "4.1.11"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.11.tgz#0e8bdfe4d1ddb8854d64e04ea7c00e2a026e5658"
@ -2132,6 +2231,10 @@ img-stats@^0.5.2:
dependencies: dependencies:
xmldom "^0.1.19" xmldom "^0.1.19"
imurmurhash@^0.1.4:
version "0.1.4"
resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea"
in-publish@^2.0.0: in-publish@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" resolved "https://registry.yarnpkg.com/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51"
@ -2292,6 +2395,10 @@ is-my-json-valid@^2.12.4:
jsonpointer "^4.0.0" jsonpointer "^4.0.0"
xtend "^4.0.0" xtend "^4.0.0"
is-npm@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4"
is-number@^0.1.1: is-number@^0.1.1:
version "0.1.1" version "0.1.1"
resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806" resolved "https://registry.yarnpkg.com/is-number/-/is-number-0.1.1.tgz#69a7af116963d47206ec9bd9b48a14216f1e3806"
@ -2302,6 +2409,10 @@ is-number@^2.0.2, is-number@^2.1.0:
dependencies: dependencies:
kind-of "^3.0.2" kind-of "^3.0.2"
is-obj@^1.0.0:
version "1.0.1"
resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f"
is-path-cwd@^1.0.0: is-path-cwd@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d" resolved "https://registry.yarnpkg.com/is-path-cwd/-/is-path-cwd-1.0.0.tgz#d225ec23132e89edd38fda767472e62e65f1106d"
@ -2338,7 +2449,15 @@ is-property@^1.0.0:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84"
is-stream@^1.0.1: is-redirect@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24"
is-retry-allowed@^1.0.0:
version "1.1.0"
resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.1.0.tgz#11a060568b67339444033d0125a61a20d564fb34"
is-stream@^1.0.0, is-stream@^1.0.1, is-stream@^1.1.0:
version "1.1.0" version "1.1.0"
resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44"
@ -2583,10 +2702,6 @@ karma-coverage-istanbul-reporter@^1.2.0:
dependencies: dependencies:
istanbul-api "^1.1.7" istanbul-api "^1.1.7"
karma-firefox-launcher@^1.0.1:
version "1.0.1"
resolved "https://registry.yarnpkg.com/karma-firefox-launcher/-/karma-firefox-launcher-1.0.1.tgz#ce58f47c2013a88156d55a5d61337c099cf5bb51"
karma-jasmine-html-reporter@^0.2.2: karma-jasmine-html-reporter@^0.2.2:
version "0.2.2" version "0.2.2"
resolved "https://registry.yarnpkg.com/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz#48a8e5ef18807617ee2b5e33c1194c35b439524c" resolved "https://registry.yarnpkg.com/karma-jasmine-html-reporter/-/karma-jasmine-html-reporter-0.2.2.tgz#48a8e5ef18807617ee2b5e33c1194c35b439524c"
@ -2668,10 +2783,20 @@ klaw@^1.0.0:
optionalDependencies: optionalDependencies:
graceful-fs "^4.1.9" graceful-fs "^4.1.9"
latest-version@^3.0.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15"
dependencies:
package-json "^4.0.0"
lazy-cache@^1.0.3: lazy-cache@^1.0.3:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e" resolved "https://registry.yarnpkg.com/lazy-cache/-/lazy-cache-1.0.4.tgz#a1d78fc3a50474cb80845d3b3b6e1da49a446e8e"
lazy-req@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/lazy-req/-/lazy-req-2.0.0.tgz#c9450a363ecdda2e6f0c70132ad4f37f8f06f2b4"
lcid@^1.0.0: lcid@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835"
@ -2792,11 +2917,15 @@ lower-case@^1.1.1:
version "1.1.4" version "1.1.4"
resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac" resolved "https://registry.yarnpkg.com/lower-case/-/lower-case-1.1.4.tgz#9a2cabd1b9e8e0ae993a4bf7d5875c39c42e8eac"
lowercase-keys@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.0.tgz#4e3366b39e7f5457e35f1324bdf6f88d0bfc7306"
lru-cache@2.2.x: lru-cache@2.2.x:
version "2.2.4" version "2.2.4"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.2.4.tgz#6c658619becf14031d0d0b594b16042ce4dc063d" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-2.2.4.tgz#6c658619becf14031d0d0b594b16042ce4dc063d"
lru-cache@^4.0.1: lru-cache@^4.0.0, lru-cache@^4.0.1:
version "4.0.2" version "4.0.2"
resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.0.2.tgz#1d17679c069cda5d040991a09dbc2c0db377e55e"
dependencies: dependencies:
@ -3106,6 +3235,12 @@ normalize-url@^1.4.0:
query-string "^4.1.0" query-string "^4.1.0"
sort-keys "^1.0.0" sort-keys "^1.0.0"
npm-run-path@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-1.0.0.tgz#f5c32bf595fe81ae927daec52e82f8b000ac3c8f"
dependencies:
path-key "^1.0.0"
"npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2: "npmlog@0 || 1 || 2 || 3 || 4", npmlog@^4.0.0, npmlog@^4.0.2:
version "4.0.2" version "4.0.2"
resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.0.2.tgz#d03950e0e78ce1527ba26d2a7592e9348ac3e75f"
@ -3233,6 +3368,15 @@ osenv@0, osenv@^0.1.4:
os-homedir "^1.0.0" os-homedir "^1.0.0"
os-tmpdir "^1.0.0" os-tmpdir "^1.0.0"
package-json@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.0.tgz#f3c9dc8738f5b59304d54d2cfb3f91d08fdd7998"
dependencies:
got "^6.7.1"
registry-auth-token "^3.0.1"
registry-url "^3.0.3"
semver "^5.1.0"
pako@~0.2.0: pako@~0.2.0:
version "0.2.9" version "0.2.9"
resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75" resolved "https://registry.yarnpkg.com/pako/-/pako-0.2.9.tgz#f3f7522f4ef782348da8161bad9ecfd51bf83a75"
@ -3308,6 +3452,10 @@ path-is-inside@^1.0.1:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53"
path-key@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/path-key/-/path-key-1.0.0.tgz#5d53d578019646c0d68800db4e146e6bdc2ac7af"
path-parse@^1.0.5: path-parse@^1.0.5:
version "1.0.5" version "1.0.5"
resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.5.tgz#3c1adf871ea9cd6c9431b6ea2bd74a0ff055c4c1"
@ -3631,7 +3779,7 @@ postcss@^5.0.0, postcss@^5.0.10, postcss@^5.0.11, postcss@^5.0.12, postcss@^5.0.
source-map "^0.5.6" source-map "^0.5.6"
supports-color "^3.2.3" supports-color "^3.2.3"
prepend-http@^1.0.0: prepend-http@^1.0.0, prepend-http@^1.0.1:
version "1.0.4" version "1.0.4"
resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc"
@ -3796,7 +3944,7 @@ raw-loader@^0.5.1, raw-loader@~0.5.1:
version "0.5.1" version "0.5.1"
resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa"
rc@^1.1.7: rc@^1.0.1, rc@^1.1.6, rc@^1.1.7:
version "1.2.1" version "1.2.1"
resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.1.tgz#2e03e8e42ee450b8cb3dce65be1bf8974e1dfd95"
dependencies: dependencies:
@ -3909,6 +4057,18 @@ regexpu-core@^1.0.0:
regjsgen "^0.2.0" regjsgen "^0.2.0"
regjsparser "^0.1.4" regjsparser "^0.1.4"
registry-auth-token@^3.0.1:
version "3.1.2"
resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.1.2.tgz#1b9e51a185c930da34a9894b12a52ea998f1adaf"
dependencies:
rc "^1.1.6"
registry-url@^3.0.3:
version "3.1.0"
resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942"
dependencies:
rc "^1.0.1"
regjsgen@^0.2.0: regjsgen@^0.2.0:
version "0.2.0" version "0.2.0"
resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7" resolved "https://registry.yarnpkg.com/regjsgen/-/regjsgen-0.2.0.tgz#6c016adeac554f75823fe37ac05b92d5a4edb1f7"
@ -4025,7 +4185,7 @@ requires-port@1.0.x, requires-port@1.x.x:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff"
resolve@^1.1.6, resolve@^1.1.7, resolve@^1.3.2: resolve@^1.1.6, resolve@^1.1.7:
version "1.3.2" version "1.3.2"
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.3.2.tgz#1f0442c9e0cbb8136e87b9305f932f46c7f28235"
dependencies: dependencies:
@ -4145,13 +4305,19 @@ selenium-webdriver@^2.53.2:
ws "^1.0.1" ws "^1.0.1"
xml2js "0.4.4" xml2js "0.4.4"
semver-diff@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36"
dependencies:
semver "^5.0.3"
semver-dsl@^1.0.1: semver-dsl@^1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/semver-dsl/-/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0" resolved "https://registry.yarnpkg.com/semver-dsl/-/semver-dsl-1.0.1.tgz#d3678de5555e8a61f629eed025366ae5f27340a0"
dependencies: dependencies:
semver "^5.3.0" semver "^5.3.0"
"semver@2 || 3 || 4 || 5", semver@^5.1.0, semver@^5.3.0, semver@~5.3.0: "semver@2 || 3 || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.3.0, semver@~5.3.0:
version "5.3.0" version "5.3.0"
resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f" resolved "https://registry.yarnpkg.com/semver/-/semver-5.3.0.tgz#9b2ce5d3de02d17c6012ad326aa6b4d0cf54f94f"
@ -4238,6 +4404,10 @@ silent-error@^1.0.0:
dependencies: dependencies:
debug "^2.2.0" debug "^2.2.0"
slide@^1.1.5:
version "1.1.6"
resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707"
sntp@1.x.x: sntp@1.x.x:
version "1.0.9" version "1.0.9"
resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198"
@ -4475,6 +4645,10 @@ strip-bom@^3.0.0:
version "3.0.0" version "3.0.0"
resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3"
strip-eof@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf"
strip-indent@^1.0.1: strip-indent@^1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2"
@ -4568,6 +4742,12 @@ temp@0.8.3:
os-tmpdir "^1.0.0" os-tmpdir "^1.0.0"
rimraf "~2.2.6" rimraf "~2.2.6"
term-size@^0.1.0:
version "0.1.1"
resolved "https://registry.yarnpkg.com/term-size/-/term-size-0.1.1.tgz#87360b96396cab5760963714cda0d0cbeecad9ca"
dependencies:
execa "^0.4.0"
throttleit@^1.0.0: throttleit@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c" resolved "https://registry.yarnpkg.com/throttleit/-/throttleit-1.0.0.tgz#9e785836daf46743145a5984b6268d828528ac6c"
@ -4576,6 +4756,10 @@ through@X.X.X, through@^2.3.6:
version "2.3.8" version "2.3.8"
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
timed-out@^4.0.0:
version "4.0.1"
resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f"
timers-browserify@^2.0.2: timers-browserify@^2.0.2:
version "2.0.2" version "2.0.2"
resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.2.tgz#ab4883cf597dcd50af211349a00fbca56ac86b86" resolved "https://registry.yarnpkg.com/timers-browserify/-/timers-browserify-2.0.2.tgz#ab4883cf597dcd50af211349a00fbca56ac86b86"
@ -4659,21 +4843,21 @@ tsickle@^0.21.0:
source-map "^0.5.6" source-map "^0.5.6"
source-map-support "^0.4.2" source-map-support "^0.4.2"
tslint@^5.0.0: tslint@^4.0.0:
version "5.1.0" version "4.5.1"
resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.1.0.tgz#51a47baeeb58956fcd617bd2cf00e2ef0eea2ed9" resolved "https://registry.yarnpkg.com/tslint/-/tslint-4.5.1.tgz#05356871bef23a434906734006fc188336ba824b"
dependencies: dependencies:
babel-code-frame "^6.22.0" babel-code-frame "^6.20.0"
colors "^1.1.2" colors "^1.1.2"
diff "^3.2.0" diff "^3.0.1"
findup-sync "~0.3.0" findup-sync "~0.3.0"
glob "^7.1.1" glob "^7.1.1"
optimist "~0.6.0" optimist "~0.6.0"
resolve "^1.3.2" resolve "^1.1.7"
semver "^5.3.0" tsutils "^1.1.0"
tsutils "^1.4.0" update-notifier "^2.0.0"
tsutils@^1.4.0: tsutils@^1.1.0:
version "1.6.0" version "1.6.0"
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.6.0.tgz#1fd7fac2a61369ed99cd3997f0fbb437128850f2" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-1.6.0.tgz#1fd7fac2a61369ed99cd3997f0fbb437128850f2"
@ -4753,10 +4937,33 @@ uniqs@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02" resolved "https://registry.yarnpkg.com/uniqs/-/uniqs-2.0.0.tgz#ffede4b36b25290696e6e165d4a59edb998e6b02"
unique-string@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a"
dependencies:
crypto-random-string "^1.0.0"
unpipe@1.0.0, unpipe@~1.0.0: unpipe@1.0.0, unpipe@~1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
unzip-response@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97"
update-notifier@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.1.0.tgz#ec0c1e53536b76647a24b77cb83966d9315123d9"
dependencies:
boxen "^1.0.0"
chalk "^1.0.0"
configstore "^3.0.0"
is-npm "^1.0.0"
latest-version "^3.0.0"
lazy-req "^2.0.0"
semver-diff "^2.0.0"
xdg-basedir "^3.0.0"
upper-case@^1.1.1: upper-case@^1.1.1:
version "1.1.3" version "1.1.3"
resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598" resolved "https://registry.yarnpkg.com/upper-case/-/upper-case-1.1.3.tgz#f6b4501c2ec4cdd26ba78be7222961de77621598"
@ -4768,6 +4975,12 @@ url-loader@^0.5.7:
loader-utils "^1.0.2" loader-utils "^1.0.2"
mime "1.3.x" mime "1.3.x"
url-parse-lax@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73"
dependencies:
prepend-http "^1.0.1"
url-parse@1.0.x: url-parse@1.0.x:
version "1.0.5" version "1.0.5"
resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b" resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.0.5.tgz#0854860422afdcfefeb6c965c662d4800169927b"
@ -5010,7 +5223,7 @@ which-module@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f" resolved "https://registry.yarnpkg.com/which-module/-/which-module-1.0.0.tgz#bba63ca861948994ff307736089e3b96026c2a4f"
which@1, which@^1.2.1, which@^1.2.9, which@~1.2.10: which@1, which@^1.2.1, which@^1.2.8, which@^1.2.9, which@~1.2.10:
version "1.2.14" version "1.2.14"
resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5" resolved "https://registry.yarnpkg.com/which/-/which-1.2.14.tgz#9a87c4378f03e827cecaf1acdf56c736c01c14e5"
dependencies: dependencies:
@ -5022,6 +5235,12 @@ wide-align@^1.1.0:
dependencies: dependencies:
string-width "^1.0.1" string-width "^1.0.1"
widest-line@^1.0.0:
version "1.0.0"
resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-1.0.0.tgz#0c09c85c2a94683d0d7eaf8ee097d564bf0e105c"
dependencies:
string-width "^1.0.1"
window-size@0.1.0: window-size@0.1.0:
version "0.1.0" version "0.1.0"
resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d" resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.0.tgz#5438cd2ea93b202efa3a19fe8887aee7c94f9c9d"
@ -5049,6 +5268,14 @@ wrappy@1:
version "1.0.2" version "1.0.2"
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
write-file-atomic@^1.1.2:
version "1.3.1"
resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-1.3.1.tgz#7d45ba32316328dd1ec7d90f60ebc0d845bb759a"
dependencies:
graceful-fs "^4.1.11"
imurmurhash "^0.1.4"
slide "^1.1.5"
ws@1.1.2, ws@^1.0.1: ws@1.1.2, ws@^1.0.1:
version "1.1.2" version "1.1.2"
resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f" resolved "https://registry.yarnpkg.com/ws/-/ws-1.1.2.tgz#8a244fa052401e08c9886cf44a85189e1fd4067f"
@ -5060,6 +5287,10 @@ wtf-8@1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a" resolved "https://registry.yarnpkg.com/wtf-8/-/wtf-8-1.0.0.tgz#392d8ba2d0f1c34d1ee2d630f15d0efb68e1048a"
xdg-basedir@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4"
xml-char-classes@^1.0.0: xml-char-classes@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d" resolved "https://registry.yarnpkg.com/xml-char-classes/-/xml-char-classes-1.0.0.tgz#64657848a20ffc5df583a42ad8a277b4512bbc4d"