From 8d278169255c2e16687e05d241a1bafe6db4aed0 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Thu, 21 Feb 2019 14:13:52 -0400 Subject: [PATCH 01/15] Better processing of unconfirmed transactions --- .../transaction-info.component.html | 2 +- .../address-detail.component.html | 32 ++++++++++++++++--- .../address-detail.component.ts | 18 +++++++++-- .../transaction-detail.component.html | 2 +- src/assets/i18n/en.json | 3 +- 5 files changed, 47 insertions(+), 10 deletions(-) diff --git a/src/app/components/layout/transaction-info/transaction-info.component.html b/src/app/components/layout/transaction-info/transaction-info.component.html index 451215b5..bd846037 100644 --- a/src/app/components/layout/transaction-info/transaction-info.component.html +++ b/src/app/components/layout/transaction-info/transaction-info.component.html @@ -8,7 +8,7 @@
- {{ (transaction.balance<0?"":"+")+(transaction.balance.decimalPlaces(6).toString() | number:'1.0-6') }} {{ 'general.coinIdentifier' | translate }} ({{ 'txBoxes.pending' | translate }}) + {{ (transaction.balance<0?"":"+")+(transaction.balance.decimalPlaces(6).toString() | number:'1.0-6') }} {{ 'general.coinIdentifier' | translate }} ({{ 'general.pending' | translate }})
diff --git a/src/app/components/pages/address-detail/address-detail.component.html b/src/app/components/pages/address-detail/address-detail.component.html index dbdfc635..4c5bdc5f 100644 --- a/src/app/components/pages/address-detail/address-detail.component.html +++ b/src/app/components/pages/address-detail/address-detail.component.html @@ -7,10 +7,34 @@

{{ 'addressDetail.title' | translate }}

{{ 'general.address' | translate }}
{{ address ? address : loadingMsg }}
{{ 'addressDetail.txsNumber' | translate }}
{{ transactions ? transactions.length : loadingMsg }}
-
{{ 'addressDetail.totalReceived' | translate }}
{{ transactions && totalReceived ? ((totalReceived.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }}
-
{{ 'addressDetail.totalSent' | translate }}
{{ transactions && totalSent ? ((totalSent.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }}
-
{{ 'addressDetail.currentBalance' | translate }}
{{ transactions && balance ? ((balance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }}
-
{{ 'addressDetail.hoursBalance' | translate }}
{{ transactions && hoursBalance ? ((hoursBalance.decimalPlaces(0).toString() | number:'1.0-0')) : loadingMsg }}
+
+ {{ 'addressDetail.totalReceived' | translate }}
+
+ {{ transactions && totalReceived ? ((totalReceived.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} +  ({{ (PendingIn.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.pending' | translate) }}) +
+
+
+ {{ 'addressDetail.totalSent' | translate }}
+
+ {{ transactions && totalSent ? ((totalSent.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} +  ({{ (PendingOut.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.pending' | translate) }}) +
+
+
+ {{ 'addressDetail.currentBalance' | translate }}
+
+ {{ transactions && balance ? ((balance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} +  ({{ (predictedBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.predicted' | translate) }}) +
+
+
+ {{ 'addressDetail.hoursBalance' | translate }}
+
+ {{ transactions && hoursBalance ? ((hoursBalance.decimalPlaces(0).toString() | number:'1.0-0')) : loadingMsg }} +  ({{ (predictedHoursBalance.decimalPlaces(0).toString() | number:'1.0-0') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.predicted' | translate) }}) +
+
{{ 'addressDetail.tools' | translate }}
{{ 'addressDetail.unspentOutputs' | translate }} {{ loadingMsg }}
diff --git a/src/app/components/pages/address-detail/address-detail.component.ts b/src/app/components/pages/address-detail/address-detail.component.ts index c4f80cd3..cca7d42d 100644 --- a/src/app/components/pages/address-detail/address-detail.component.ts +++ b/src/app/components/pages/address-detail/address-detail.component.ts @@ -6,6 +6,7 @@ import {Observable} from 'rxjs/Observable'; import 'rxjs/Rx'; import { TranslateService } from '@ngx-translate/core'; import { BigNumber } from 'bignumber.js'; +import { Transaction } from 'app/app.datatypes'; @Component({ selector: 'app-address-detail', @@ -16,9 +17,13 @@ export class AddressDetailComponent implements OnInit { address: string; totalReceived: BigNumber; totalSent: BigNumber; + PendingIn: BigNumber; + PendingOut: BigNumber; balance: BigNumber; hoursBalance: BigNumber; - transactions: any[]; + predictedBalance: BigNumber; + predictedHoursBalance: BigNumber; + transactions: Transaction[]; pageTransactions: any[]; pageIndex = 0; pageSize = 25; @@ -68,11 +73,16 @@ export class AddressDetailComponent implements OnInit { this.transactions = transactions; this.totalReceived = new BigNumber(0); - transactions.map(tx => this.totalReceived = this.totalReceived.plus(tx.balance.isGreaterThan(0) ? tx.balance : 0)); + transactions.map(tx => this.totalReceived = this.totalReceived.plus(tx.balance.isGreaterThan(0) && tx.status ? tx.balance : 0)); + this.PendingIn = new BigNumber(0); + transactions.map(tx => this.PendingIn = this.PendingIn.plus(tx.balance.isGreaterThan(0) && !tx.status ? tx.balance : 0)); this.totalSent = new BigNumber(0); - transactions.map(tx => this.totalSent = this.totalSent.plus(tx.balance.isLessThan(0) ? tx.balance : 0)); + transactions.map(tx => this.totalSent = this.totalSent.plus(tx.balance.isLessThan(0) && tx.status ? tx.balance : 0)); this.totalSent = this.totalSent.negated(); + this.PendingOut = new BigNumber(0); + transactions.map(tx => this.PendingOut = this.PendingOut.plus(tx.balance.isLessThan(0) && !tx.status ? tx.balance : 0)); + this.PendingOut = this.PendingOut.negated(); this.updateTransactions(); }, @@ -95,6 +105,8 @@ export class AddressDetailComponent implements OnInit { .subscribe(response => { this.balance = new BigNumber(response.confirmed.coins).dividedBy(1000000); this.hoursBalance = new BigNumber(response.confirmed.hours); + this.predictedBalance = new BigNumber(response.predicted.coins).dividedBy(1000000); + this.predictedHoursBalance = new BigNumber(response.predicted.hours); }); } diff --git a/src/app/components/pages/transaction-detail/transaction-detail.component.html b/src/app/components/pages/transaction-detail/transaction-detail.component.html index 0063fe41..dc30c8d8 100644 --- a/src/app/components/pages/transaction-detail/transaction-detail.component.html +++ b/src/app/components/pages/transaction-detail/transaction-detail.component.html @@ -3,7 +3,7 @@

{{ 'transactionDetail.title' | translate }}

{{ 'transactionDetail.status' | translate }}
{{ transaction ? (transaction.status ? ('transactionDetail.confirmed' | translate) : ('transactionDetail.unconfirmed' | translate)) : loadingMsg }}
{{ 'transactionDetail.size' | translate }}
{{ transaction ? (transaction.length | number) + ' bytes' : loadingMsg }}
-
{{ 'transactionDetail.block' | translate }}
{{ transaction.block }} {{ loadingMsg }}
+
{{ 'transactionDetail.block' | translate }}
{{ transaction.block }} {{ loadingMsg }}
diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 9dccd339..357c93c1 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -7,6 +7,8 @@ "calculatedHours": "Final Hours", "currentHours": "Current Hours", "hours": "Hours", + "predicted": "predicted", + "pending": "pending", "loadingMsg": "Loading...", "shortLoadingErrorMsg": "Loading error", "longLoadingErrorMsg": "Error loading data, try again later...", @@ -17,7 +19,6 @@ "transactionID": "Transaction ID", "inputs": "Inputs", "outputs": "Outputs", - "pending": "pending", "date": "Date", "balance": "More info", "fee": "Transaction fee (in hours)", From 033f4242cc90f1892409e546749aca29a33b7048 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Thu, 21 Feb 2019 14:49:38 -0400 Subject: [PATCH 02/15] Small code fix --- .../pages/transaction-detail/transaction-detail.component.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/app/components/pages/transaction-detail/transaction-detail.component.html b/src/app/components/pages/transaction-detail/transaction-detail.component.html index dc30c8d8..578f1918 100644 --- a/src/app/components/pages/transaction-detail/transaction-detail.component.html +++ b/src/app/components/pages/transaction-detail/transaction-detail.component.html @@ -3,7 +3,7 @@

{{ 'transactionDetail.title' | translate }}

{{ 'transactionDetail.status' | translate }}
{{ transaction ? (transaction.status ? ('transactionDetail.confirmed' | translate) : ('transactionDetail.unconfirmed' | translate)) : loadingMsg }}
{{ 'transactionDetail.size' | translate }}
{{ transaction ? (transaction.length | number) + ' bytes' : loadingMsg }}
-
{{ 'transactionDetail.block' | translate }}
{{ transaction.block }} {{ loadingMsg }}
+
{{ 'transactionDetail.block' | translate }}
{{ transaction.block }} {{ loadingMsg }}
From a6a1735794a0f1408ebd4b7b41d0e76ed763a94e Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Wed, 13 Mar 2019 21:32:50 -0400 Subject: [PATCH 03/15] Update to Angular 7 --- package-lock.json | 2269 ++++++++++++----- package.json | 36 +- src/app/app.translate-loader.ts | 4 +- .../date-formatter.component.html | 2 +- .../address-detail.component.ts | 12 +- .../block-details.component.html | 6 +- .../block-details/block-details.component.ts | 11 +- .../pages/blocks/blocks.component.ts | 9 +- .../pages/richlist/richlist.component.ts | 5 +- .../pages/search/search.component.ts | 3 +- .../transaction-detail.component.ts | 4 +- .../unconfirmed-transactions.component.ts | 2 - .../unspent-outputs.component.ts | 7 +- src/app/services/api/api.service.ts | 19 +- src/app/services/explorer/explorer.service.ts | 31 +- src/app/services/search/search.service.ts | 19 +- tslint.json | 3 +- 17 files changed, 1744 insertions(+), 698 deletions(-) diff --git a/package-lock.json b/package-lock.json index 76374203..01c233fa 100644 --- a/package-lock.json +++ b/package-lock.json @@ -201,356 +201,1033 @@ } }, "@angular-devkit/schematics": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-0.7.1.tgz", - "integrity": "sha512-8G223dq6RgV1tvp3od6mn5TX3VH57OWCN+v6pz4o27pDOQUhxX94VeuetOrhe2oYu4nmcs8epCateG4CJF7phg==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-7.3.5.tgz", + "integrity": "sha512-BFCCkwRMBC4aFlngaloi1avCTgGrl1MFc/0Av2sCpBh/fdm1FqSVzmOiTfu93dehRVVL/bTrA2qj+xpNsXCxzA==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "rxjs": "6.2.2" + "@angular-devkit/core": "7.3.5", + "rxjs": "6.3.3" }, "dependencies": { "@angular-devkit/core": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.7.1.tgz", - "integrity": "sha512-m+j1d+oMZRu0jUN7UyE4C8Kh8YoY9TP6ltjcrO2SzE89mzHg+apY1taf4EzOYKrrCZxw7Q4viPa8EXeF2AJ1cQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.5.tgz", + "integrity": "sha512-J/Tztq2BZ3tpwUsbiz8N61rf9lwqn85UvJsDui2SPIdzDR9KmPr5ESI2Irc/PEb9i+CBXtVuhr8AIqo7rR6ZTg==", "dev": true, "requires": { - "ajv": "6.4.0", + "ajv": "6.9.1", "chokidar": "2.0.4", - "rxjs": "6.2.2", - "source-map": "0.5.7" + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" } }, "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", + "fast-deep-equal": "2.0.1", "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { "tslib": "1.9.3" } }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } } } }, "@angular/animations": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.2.11.tgz", - "integrity": "sha512-J7wKHkFn3wV28/Y1Qm4yjGXVCwXzj1JR5DRjGDTFnxTRacUFx7Nj0ApGhN0b2+V0NOvgxQOvEW415Y22kGoblw==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-7.2.9.tgz", + "integrity": "sha512-cdIf/UWwhNlw6Ep3pRxRk12F8q/GyTbcHDF4qbgg7lZEDPYS32KS1lpHY1pgSuSOIPZUT+iLPOxAZ6cu7Am1vA==", "requires": { "tslib": "1.9.3" } }, "@angular/cli": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-6.1.1.tgz", - "integrity": "sha512-lY8c6x6mJsIEQRKajjxNxTaG0WlcHZp+0wP+aJ5n4plmYKxTIVo4IMTRpzMxNBnPy//OKD9gRM2hPbik7+7geQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-7.3.5.tgz", + "integrity": "sha512-WL339qoWMIsQympJAabtcvX6hMydGD/H0fm8K9ihD7xd6Af1QCSDN/aWTIvYyEzj9Hb8/sJ3mgRtvLlr1xTHzg==", "dev": true, "requires": { - "@angular-devkit/architect": "0.7.1", - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "@schematics/angular": "0.7.1", - "@schematics/update": "0.7.1", - "opn": "5.3.0", - "rxjs": "6.2.2", - "semver": "5.5.0", - "symbol-observable": "1.2.0", - "yargs-parser": "10.1.0" + "@angular-devkit/architect": "0.13.5", + "@angular-devkit/core": "7.3.5", + "@angular-devkit/schematics": "7.3.5", + "@schematics/angular": "7.3.5", + "@schematics/update": "0.13.5", + "@yarnpkg/lockfile": "1.1.0", + "ini": "1.3.5", + "inquirer": "6.2.1", + "npm-package-arg": "6.1.0", + "opn": "5.4.0", + "pacote": "9.4.0", + "semver": "5.6.0", + "symbol-observable": "1.2.0" }, "dependencies": { "@angular-devkit/architect": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.7.1.tgz", - "integrity": "sha512-eJ9hXQ4JC8yJKmCjShikg48IVqYh/0laJ2tnfwrILtwbeM1mDYtpjR5NNUvovR+voYZJyI7uHc/XRu9CCz4NhA==", + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.13.5.tgz", + "integrity": "sha512-ouqDu5stZA2gsWnbKMThDfOG/D6lJQaLL+oGEoM5zfnKir3ctyV5rOm73m2pDYUblByTCb+rkj5KmooUWpnV1g==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "rxjs": "6.2.2" + "@angular-devkit/core": "7.3.5", + "rxjs": "6.3.3" } }, "@angular-devkit/core": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.7.1.tgz", - "integrity": "sha512-m+j1d+oMZRu0jUN7UyE4C8Kh8YoY9TP6ltjcrO2SzE89mzHg+apY1taf4EzOYKrrCZxw7Q4viPa8EXeF2AJ1cQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.5.tgz", + "integrity": "sha512-J/Tztq2BZ3tpwUsbiz8N61rf9lwqn85UvJsDui2SPIdzDR9KmPr5ESI2Irc/PEb9i+CBXtVuhr8AIqo7rR6ZTg==", "dev": true, "requires": { - "ajv": "6.4.0", + "ajv": "6.9.1", "chokidar": "2.0.4", - "rxjs": "6.2.2", - "source-map": "0.5.7" + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" } }, "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", + "fast-deep-equal": "2.0.1", "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" + } + }, + "ansi-regex": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", + "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "dev": true + }, + "chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", + "dev": true + }, + "external-editor": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.0.3.tgz", + "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", + "dev": true, + "requires": { + "chardet": "0.7.0", + "iconv-lite": "0.4.24", + "tmp": "0.0.33" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dev": true, + "requires": { + "safer-buffer": "2.1.2" + } + }, + "inquirer": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.2.1.tgz", + "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", + "dev": true, + "requires": { + "ansi-escapes": "3.1.0", + "chalk": "2.4.1", + "cli-cursor": "2.1.0", + "cli-width": "2.2.0", + "external-editor": "3.0.3", + "figures": "2.0.0", + "lodash": "4.17.10", + "mute-stream": "0.0.7", + "run-async": "2.3.0", + "rxjs": "6.3.3", + "string-width": "2.1.1", + "strip-ansi": "5.1.0", + "through": "2.3.8" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", + "dev": true, + "requires": { + "is-wsl": "1.1.0" + } + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "dev": true, + "requires": { + "tslib": "1.9.3" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true + }, + "strip-ansi": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.1.0.tgz", + "integrity": "sha512-TjxrkPONqO2Z8QDCpeE2j6n0M6EwxzyDgzEeGp+FbdvaJAt//ClYi6W5my+3ROlC/hZX2KACUwDfK49Ka5eDvg==", + "dev": true, + "requires": { + "ansi-regex": "4.1.0" + } + }, + "symbol-observable": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", + "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } + } + } + }, + "@angular/common": { + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-7.2.9.tgz", + "integrity": "sha512-SBIinZi/R0mKWjbKvcBhwRpAVIY/7/AnzIEkMb5JnGExersYhDD02otW3ZwPStpl7HrhgWk8ueWnxVFFXRz5gA==", + "requires": { + "tslib": "1.9.3" + } + }, + "@angular/compiler": { + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-7.2.9.tgz", + "integrity": "sha512-jAKV4C5BW2pnke10fiDZNbLCQOs2QK37mUJWe5jnZqCAM4Y3edXlfifOkbi0hvA4WJMDXKmUdydY6Xo/Z+cWbA==", + "requires": { + "tslib": "1.9.3" + } + }, + "@angular/compiler-cli": { + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-7.2.9.tgz", + "integrity": "sha512-3itdcfszdyXTHYEsO4eBu4WEx10hU8JpOgUcZyw+OYgwLQLyjEXOD9dfYZZpE/+2F0omoMLseCTHTP//uux+Iw==", + "dev": true, + "requires": { + "canonical-path": "1.0.0", + "chokidar": "2.1.2", + "convert-source-map": "1.5.1", + "dependency-graph": "0.7.2", + "magic-string": "0.25.2", + "minimist": "1.2.0", + "reflect-metadata": "0.1.13", + "shelljs": "0.8.3", + "source-map": "0.6.1", + "tslib": "1.9.3", + "yargs": "9.0.1" + }, + "dependencies": { + "camelcase": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", + "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", + "dev": true + }, + "chokidar": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.2.tgz", + "integrity": "sha512-IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==", + "dev": true, + "requires": { + "anymatch": "2.0.0", + "async-each": "1.0.1", + "braces": "2.3.2", + "fsevents": "1.2.7", + "glob-parent": "3.1.0", + "inherits": "2.0.3", + "is-binary-path": "1.0.1", + "is-glob": "4.0.0", + "normalize-path": "3.0.0", + "path-is-absolute": "1.0.1", + "readdirp": "2.2.1", + "upath": "1.1.0" + } + }, + "fsevents": { + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.7.tgz", + "integrity": "sha512-Pxm6sI2MeBD7RdD12RYsqaP0nMiwx8eZBXCa6z2L+mRHm2DYrOYwihmhjpkdjUHwQhslWQjRpEgNq4XvBmaAuw==", + "dev": true, + "optional": true, + "requires": { + "nan": "2.10.0", + "node-pre-gyp": "0.10.3" + }, + "dependencies": { + "abbrev": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "ansi-regex": { + "version": "2.1.1", + "bundled": true, + "dev": true + }, + "aproba": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + }, + "are-we-there-yet": { + "version": "1.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "delegates": "1.0.0", + "readable-stream": "2.3.6" + } + }, + "balanced-match": { + "version": "1.0.0", + "bundled": true, + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "bundled": true, + "dev": true, + "requires": { + "balanced-match": "1.0.0", + "concat-map": "0.0.1" + } + }, + "chownr": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "code-point-at": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "concat-map": { + "version": "0.0.1", + "bundled": true, + "dev": true + }, + "console-control-strings": { + "version": "1.1.0", + "bundled": true, + "dev": true + }, + "core-util-is": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "debug": { + "version": "2.6.9", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ms": "2.0.0" + } + }, + "deep-extend": { + "version": "0.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "delegates": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "detect-libc": { + "version": "1.0.3", + "bundled": true, + "dev": true, + "optional": true + }, + "fs-minipass": { + "version": "1.2.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "2.3.5" + } + }, + "fs.realpath": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "gauge": { + "version": "2.7.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "aproba": "1.2.0", + "console-control-strings": "1.1.0", + "has-unicode": "2.0.1", + "object-assign": "4.1.1", + "signal-exit": "3.0.2", + "string-width": "1.0.2", + "strip-ansi": "3.0.1", + "wide-align": "1.1.3" + } + }, + "glob": { + "version": "7.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "has-unicode": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "iconv-lite": { + "version": "0.4.24", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safer-buffer": "2.1.2" + } + }, + "ignore-walk": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minimatch": "3.0.4" + } + }, + "inflight": { + "version": "1.0.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "once": "1.4.0", + "wrappy": "1.0.2" + } + }, + "inherits": { + "version": "2.0.3", + "bundled": true, + "dev": true + }, + "ini": { + "version": "1.3.5", + "bundled": true, + "dev": true, + "optional": true + }, + "is-fullwidth-code-point": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "requires": { + "number-is-nan": "1.0.1" + } + }, + "isarray": { + "version": "1.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "minimatch": { + "version": "3.0.4", + "bundled": true, + "dev": true, + "requires": { + "brace-expansion": "1.1.11" + } + }, + "minimist": { + "version": "0.0.8", + "bundled": true, + "dev": true + }, + "minipass": { + "version": "2.3.5", + "bundled": true, + "dev": true, + "requires": { + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + } + }, + "minizlib": { + "version": "1.2.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "minipass": "2.3.5" + } + }, + "mkdirp": { + "version": "0.5.1", + "bundled": true, + "dev": true, + "requires": { + "minimist": "0.0.8" + } + }, + "ms": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "needle": { + "version": "2.2.4", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "debug": "2.6.9", + "iconv-lite": "0.4.24", + "sax": "1.2.4" + } + }, + "node-pre-gyp": { + "version": "0.10.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "detect-libc": "1.0.3", + "mkdirp": "0.5.1", + "needle": "2.2.4", + "nopt": "4.0.1", + "npm-packlist": "1.2.0", + "npmlog": "4.1.2", + "rc": "1.2.8", + "rimraf": "2.6.3", + "semver": "5.6.0", + "tar": "4.4.8" + } + }, + "nopt": { + "version": "4.0.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "abbrev": "1.1.1", + "osenv": "0.1.5" + } + }, + "npm-bundled": { + "version": "1.0.5", + "bundled": true, + "dev": true, + "optional": true + }, + "npm-packlist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "ignore-walk": "3.0.1", + "npm-bundled": "1.0.5" + } + }, + "npmlog": { + "version": "4.1.2", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "are-we-there-yet": "1.1.5", + "console-control-strings": "1.1.0", + "gauge": "2.7.4", + "set-blocking": "2.0.0" + } + }, + "number-is-nan": { + "version": "1.0.1", + "bundled": true, + "dev": true + }, + "object-assign": { + "version": "4.1.1", + "bundled": true, + "dev": true, + "optional": true + }, + "once": { + "version": "1.4.0", + "bundled": true, + "dev": true, + "requires": { + "wrappy": "1.0.2" + } + }, + "os-homedir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "os-tmpdir": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "osenv": { + "version": "0.1.5", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "os-homedir": "1.0.2", + "os-tmpdir": "1.0.2" + } + }, + "path-is-absolute": { + "version": "1.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "process-nextick-args": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "rc": { + "version": "1.2.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "deep-extend": "0.6.0", + "ini": "1.3.5", + "minimist": "1.2.0", + "strip-json-comments": "2.0.1" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "bundled": true, + "dev": true, + "optional": true + } + } + }, + "readable-stream": { + "version": "2.3.6", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "core-util-is": "1.0.2", + "inherits": "2.0.3", + "isarray": "1.0.0", + "process-nextick-args": "2.0.0", + "safe-buffer": "5.1.2", + "string_decoder": "1.1.1", + "util-deprecate": "1.0.2" + } + }, + "rimraf": { + "version": "2.6.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "glob": "7.1.3" + } + }, + "safe-buffer": { + "version": "5.1.2", + "bundled": true, + "dev": true + }, + "safer-buffer": { + "version": "2.1.2", + "bundled": true, + "dev": true, + "optional": true + }, + "sax": { + "version": "1.2.4", + "bundled": true, + "dev": true, + "optional": true + }, + "semver": { + "version": "5.6.0", + "bundled": true, + "dev": true, + "optional": true + }, + "set-blocking": { + "version": "2.0.0", + "bundled": true, + "dev": true, + "optional": true + }, + "signal-exit": { + "version": "3.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "string-width": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "requires": { + "code-point-at": "1.1.0", + "is-fullwidth-code-point": "1.0.0", + "strip-ansi": "3.0.1" + } + }, + "string_decoder": { + "version": "1.1.1", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "safe-buffer": "5.1.2" + } + }, + "strip-ansi": { + "version": "3.0.1", + "bundled": true, + "dev": true, + "requires": { + "ansi-regex": "2.1.1" + } + }, + "strip-json-comments": { + "version": "2.0.1", + "bundled": true, + "dev": true, + "optional": true + }, + "tar": { + "version": "4.4.8", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "chownr": "1.1.1", + "fs-minipass": "1.2.5", + "minipass": "2.3.5", + "minizlib": "1.2.1", + "mkdirp": "0.5.1", + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + } + }, + "util-deprecate": { + "version": "1.0.2", + "bundled": true, + "dev": true, + "optional": true + }, + "wide-align": { + "version": "1.1.3", + "bundled": true, + "dev": true, + "optional": true, + "requires": { + "string-width": "1.0.2" + } + }, + "wrappy": { + "version": "1.0.2", + "bundled": true, + "dev": true + }, + "yallist": { + "version": "3.0.3", + "bundled": true, + "dev": true + } } }, - "camelcase": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-4.1.0.tgz", - "integrity": "sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0=", - "dev": true - }, - "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "load-json-file": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { - "tslib": "1.9.3" + "graceful-fs": "4.1.11", + "parse-json": "2.2.0", + "pify": "2.3.0", + "strip-bom": "3.0.0" } }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true }, - "symbol-observable": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.2.0.tgz", - "integrity": "sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ==", + "normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", "dev": true }, - "yargs-parser": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", - "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", - "dev": true, - "requires": { - "camelcase": "4.1.0" - } - } - } - }, - "@angular/common": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.11.tgz", - "integrity": "sha512-LniJjGAeftUJDJh+2+LEjltcGen08C/VMxQ/eUYmesytKy1sN+MWzh3GbpKfEWtWmyUsYTG9lAAJNo3L3jPwsw==", - "requires": { - "tslib": "1.9.3" - } - }, - "@angular/compiler": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.11.tgz", - "integrity": "sha512-ICvB1ud1mxaXUYLb8vhJqiLhGBVocAZGxoHTglv6hMkbrRYcnlB3FZJFOzBvtj+krkd1jamoYLI43UAmesqQ6Q==", - "requires": { - "tslib": "1.9.3" - } - }, - "@angular/compiler-cli": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-5.2.11.tgz", - "integrity": "sha512-dwrQ0yxoCM/XzKzlm7pTsyg4/6ECjT9emZufGj8t12bLMO8NDn1IJOsqXJA1+onEgQKhlr0Ziwi+96TvDTb1Cg==", - "dev": true, - "requires": { - "chokidar": "1.7.0", - "minimist": "1.2.0", - "reflect-metadata": "0.1.12", - "tsickle": "0.27.5" - }, - "dependencies": { - "anymatch": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz", - "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==", + "os-locale": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", + "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "dev": true, "requires": { - "micromatch": "2.3.11", - "normalize-path": "2.1.1" + "execa": "0.7.0", + "lcid": "1.0.0", + "mem": "1.1.0" } }, - "arr-diff": { + "path-type": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz", - "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-2.0.0.tgz", + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "dev": true, "requires": { - "arr-flatten": "1.1.0" + "pify": "2.3.0" } }, - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", + "pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true }, - "braces": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz", - "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=", + "read-pkg": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, "requires": { - "expand-range": "1.8.2", - "preserve": "0.2.0", - "repeat-element": "1.1.2" + "load-json-file": "2.0.0", + "normalize-package-data": "2.4.0", + "path-type": "2.0.0" } }, - "chokidar": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz", - "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=", + "read-pkg-up": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-2.0.0.tgz", + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, "requires": { - "anymatch": "1.3.2", - "async-each": "1.0.1", - "fsevents": "1.2.4", - "glob-parent": "2.0.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "2.0.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0" + "find-up": "2.1.0", + "read-pkg": "2.0.0" } }, - "expand-brackets": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz", - "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=", + "readdirp": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", + "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "is-posix-bracket": "0.1.1" + "graceful-fs": "4.1.11", + "micromatch": "3.1.10", + "readable-stream": "2.3.6" } }, - "extglob": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz", - "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=", - "dev": true, - "requires": { - "is-extglob": "1.0.0" - } + "strip-bom": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", + "dev": true }, - "glob-parent": { + "which-module": { "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "2.0.1" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", + "yargs": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-9.0.1.tgz", + "integrity": "sha1-UqzCP+7Kw0BCB47njAwAf1CF20w=", "dev": true, "requires": { - "is-extglob": "1.0.0" + "camelcase": "4.1.0", + "cliui": "3.2.0", + "decamelize": "1.2.0", + "get-caller-file": "1.0.3", + "os-locale": "2.1.0", + "read-pkg-up": "2.0.0", + "require-directory": "2.1.1", + "require-main-filename": "1.0.1", + "set-blocking": "2.0.0", + "string-width": "2.1.1", + "which-module": "2.0.0", + "y18n": "3.2.1", + "yargs-parser": "7.0.0" } }, - "micromatch": { - "version": "2.3.11", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-2.3.11.tgz", - "integrity": "sha1-hmd8l9FyCzY0MdBNDRUpO9OMFWU=", + "yargs-parser": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-7.0.0.tgz", + "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", "dev": true, "requires": { - "arr-diff": "2.0.0", - "array-unique": "0.2.1", - "braces": "1.8.5", - "expand-brackets": "0.1.5", - "extglob": "0.3.2", - "filename-regex": "2.0.1", - "is-extglob": "1.0.0", - "is-glob": "2.0.1", - "kind-of": "3.2.2", - "normalize-path": "2.1.1", - "object.omit": "2.0.1", - "parse-glob": "3.0.4", - "regex-cache": "0.4.4" + "camelcase": "4.1.0" } - }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true } } }, "@angular/core": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.11.tgz", - "integrity": "sha512-h2vpvXNAdOqKzbVaZcHnHGMT5A8uDnizk6FgGq6SPyw9s3d+/VxZ9LJaPjUk3g2lICA7og1tUel+2YfF971MlQ==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-7.2.9.tgz", + "integrity": "sha512-tW1jHjCnvtquJ3XEnmqRNMoV7MXAZ2yfnCXE25+odRZjNVMiTcKWvRLd/XjBzjCg2OvwREXcQpB7/s+Av10uAQ==", "requires": { "tslib": "1.9.3" } }, "@angular/forms": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.2.11.tgz", - "integrity": "sha512-wBllFlIubPclAFRXUc84Kc7TMeKOftzrQraVZ7ooTNeFLLa/FZLN2K8HGyRde8X/XDsMu1XAmjNfkz++spwTzA==", - "requires": { - "tslib": "1.9.3" - } - }, - "@angular/http": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.11.tgz", - "integrity": "sha512-eR7wNXh1+6MpcQNb3sq4bJVX03dx50Wl3kpPG+Q7N1VSL0oPQSobaTrR17ac3oFCEfSJn6kkUCqtUXha6wcNHg==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-7.2.9.tgz", + "integrity": "sha512-2hpu2Gl8suwG5FmOczk/oBBE1x7QypM58XE1ms0V6uYlL+g/JIg0AWMMOldI5KYUnxwoCikgsdGzzt8XPbvRkQ==", "requires": { "tslib": "1.9.3" } }, "@angular/language-service": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-5.2.11.tgz", - "integrity": "sha512-tgnFAhwBmUs1W0dmcmlBmUlMaOgkoyuSdrcF23lz8W5+nSLb+LnbH5a3blU2NVqA4ESvLKQkPW5dpKa/LuhrPQ==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/language-service/-/language-service-7.2.9.tgz", + "integrity": "sha512-+8P3yGqrCZy8PaoxUUlC6cowxPAIbuW4HwhvHvYV3G99LDQUC/bxUPSPhqbrAvDiFr3VeXqivzXgFCTo69S1WQ==", "dev": true }, "@angular/platform-browser": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.11.tgz", - "integrity": "sha512-6YZ4IpBFqXx88vEzBZG2WWnaSYXbFWDgG0iT+bZPHAfwsbmqbcMcs7Ogu+XZ4VmK02dTqbrFh7U4P2W+sqrzow==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-7.2.9.tgz", + "integrity": "sha512-h7RaXllauFLa1SPcje/cK7IbwCqV6ViyeHEUAAWljrM2OWRU1zRYtDk/gcphRj4tWhhHVfQsJ9+0p3NoPP5LZw==", "requires": { "tslib": "1.9.3" } }, "@angular/platform-browser-dynamic": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.11.tgz", - "integrity": "sha512-5kKPNULcXNwkyBjpHfF+pq+Yxi8Zl866YSOK9t8txoiQ9Ctw97kMkEJcTetk6MJgBp/NP3YyjtoTAm8oXLerug==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-7.2.9.tgz", + "integrity": "sha512-QJQ1NmzaX2nAX9u6vkc/cZSBEqio/YQojaZqlbRyAn391rpzb9cGVvqYzUU9DqCeXbxKgA1xbmLiNMQ/M7xMHg==", "requires": { "tslib": "1.9.3" } }, "@angular/router": { - "version": "5.2.11", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.2.11.tgz", - "integrity": "sha512-NT8xYl7Vr3qPygisek3PlXqNROEjg48GXOEsDEc7c8lDBo3EB9Tf328fWJD0GbLtXZNhmmNNxwIe+qqPFFhFAA==", + "version": "7.2.9", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-7.2.9.tgz", + "integrity": "sha512-vNk2x6i1iLNQM1KYnRhbC2DJQvNmlu9lVGzcZzRiS7zDT5DFvbiYA1M7ixUlbehLDEGVKlJEZNIdKWErWW8xYw==", "requires": { "tslib": "1.9.3" } @@ -567,126 +1244,195 @@ } }, "@ngx-translate/core": { - "version": "9.1.1", - "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-9.1.1.tgz", - "integrity": "sha1-rhA5KINrip4Gn9Li52+iGYzH5ig=" + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-11.0.1.tgz", + "integrity": "sha512-nBCa1ZD9fAUY/3eskP3Lql2fNg8OMrYIej1/5GRsfcutx9tG/5fZLCv9m6UCw1aS+u4uK/vXjv1ctG/FdMvaWg==", + "requires": { + "tslib": "1.9.3" + } }, "@ngx-translate/http-loader": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-2.0.1.tgz", - "integrity": "sha1-qmd4jmS/qGUmkad7Ais7QDEgkRM=" + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-4.0.0.tgz", + "integrity": "sha512-x8LumqydWD7eX9yQTAVeoCM9gFUIGVTUjZqbxdAUavAA3qVnk9wCQux7iHLPXpydl8vyQmLoPQR+fFU+DUDOMA==", + "requires": { + "tslib": "1.9.3" + } }, "@schematics/angular": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-0.7.1.tgz", - "integrity": "sha512-wvP1ofwKVIbu3UCCsLTxdNZ7D0iVl0njoHvFEiMAQEVO+1VnhY3y+xpvnujhmU0pdYfIv17mc/hRNwEH6gQwkQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-7.3.5.tgz", + "integrity": "sha512-fKNZccf1l2OcDwtDupYj54N/YuiMLCWeaXNxcJNUYvGnBtzxQJ4P2LtSCjB4HDvYCtseQM7iyc7D1Xrr5gI8nw==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "typescript": "2.7.2" + "@angular-devkit/core": "7.3.5", + "@angular-devkit/schematics": "7.3.5", + "typescript": "3.2.4" }, "dependencies": { "@angular-devkit/core": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.7.1.tgz", - "integrity": "sha512-m+j1d+oMZRu0jUN7UyE4C8Kh8YoY9TP6ltjcrO2SzE89mzHg+apY1taf4EzOYKrrCZxw7Q4viPa8EXeF2AJ1cQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.5.tgz", + "integrity": "sha512-J/Tztq2BZ3tpwUsbiz8N61rf9lwqn85UvJsDui2SPIdzDR9KmPr5ESI2Irc/PEb9i+CBXtVuhr8AIqo7rR6ZTg==", "dev": true, "requires": { - "ajv": "6.4.0", + "ajv": "6.9.1", "chokidar": "2.0.4", - "rxjs": "6.2.2", - "source-map": "0.5.7" + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" } }, "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", + "fast-deep-equal": "2.0.1", "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { "tslib": "1.9.3" } }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true }, "typescript": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz", - "integrity": "sha512-p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.2.4.tgz", + "integrity": "sha512-0RNDbSdEokBeEAkgNbxJ+BLwSManFy9TeXz8uW+48j/xhEXv1ePME60olyzw2XzUqUBNAYFeJadIqAgNqIACwg==", "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } } } }, "@schematics/update": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.7.1.tgz", - "integrity": "sha512-b2LXdqGMhQVA4Iy3JzBpalRDQy/kuFzDob3nh2DuYtriJLnvRuAvIQ9J6bbUGpQhad8ED+lDjx2ADt1gfBg9xQ==", + "version": "0.13.5", + "resolved": "https://registry.npmjs.org/@schematics/update/-/update-0.13.5.tgz", + "integrity": "sha512-bmwVKeyOmC948gJrIxPg0TY0999nusqSVqXJ8hqAgD0fyD6rnzF74nUhovQGvwFV0pZK8fCkRfdJIqgAPFcHcw==", "dev": true, "requires": { - "@angular-devkit/core": "0.7.1", - "@angular-devkit/schematics": "0.7.1", - "npm-registry-client": "8.6.0", - "rc": "1.2.8", - "rxjs": "6.2.2", - "semver": "5.5.0", - "semver-intersect": "1.3.1" + "@angular-devkit/core": "7.3.5", + "@angular-devkit/schematics": "7.3.5", + "@yarnpkg/lockfile": "1.1.0", + "ini": "1.3.5", + "pacote": "9.4.0", + "rxjs": "6.3.3", + "semver": "5.6.0", + "semver-intersect": "1.4.0" }, "dependencies": { "@angular-devkit/core": { - "version": "0.7.1", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.7.1.tgz", - "integrity": "sha512-m+j1d+oMZRu0jUN7UyE4C8Kh8YoY9TP6ltjcrO2SzE89mzHg+apY1taf4EzOYKrrCZxw7Q4viPa8EXeF2AJ1cQ==", + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.5.tgz", + "integrity": "sha512-J/Tztq2BZ3tpwUsbiz8N61rf9lwqn85UvJsDui2SPIdzDR9KmPr5ESI2Irc/PEb9i+CBXtVuhr8AIqo7rR6ZTg==", "dev": true, "requires": { - "ajv": "6.4.0", + "ajv": "6.9.1", "chokidar": "2.0.4", - "rxjs": "6.2.2", - "source-map": "0.5.7" + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" } }, "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", + "fast-deep-equal": "2.0.1", "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "json-schema-traverse": "0.4.1", + "uri-js": "4.2.2" } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, + "punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "dev": true + }, "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { "tslib": "1.9.3" } }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true + }, + "uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dev": true, + "requires": { + "punycode": "2.1.1" + } } } }, @@ -936,6 +1682,22 @@ } } }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==", + "dev": true + }, + "JSONStream": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", + "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", + "dev": true, + "requires": { + "jsonparse": "1.3.1", + "through": "2.3.8" + } + }, "abbrev": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", @@ -993,6 +1755,15 @@ "es6-promisify": "5.0.0" } }, + "agentkeepalive": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-3.5.2.tgz", + "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", + "dev": true, + "requires": { + "humanize-ms": "1.2.1" + } + }, "ajv": { "version": "5.5.2", "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", @@ -2187,6 +2958,12 @@ "integrity": "sha512-vs79o1mOSKRGv/1pSkp4EXgl4ZviWeYReXw60XfacPU64uQWZwJT6vZNmxRF9O+6zu71sJwMxLK5JXxbzuVrLw==", "dev": true }, + "canonical-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/canonical-path/-/canonical-path-1.0.0.tgz", + "integrity": "sha512-feylzsbDxi1gPZ1IjystzIQZagYYLvfKrSuygUCgf7z6x790VEzze5QEkdSV1U58RA7Hi0+v6fv4K54atOzATg==", + "dev": true + }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", @@ -2406,17 +3183,17 @@ "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=" }, "codelyzer": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.0.2.tgz", - "integrity": "sha512-nYwOr49+IV09e7C4aXkVALRz0+XpHqZiUUcxHuDZH4xP1FBcHINyr3qvVhv5Gfm7XRmoLx32tsIhrQhW/gBcog==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/codelyzer/-/codelyzer-4.5.0.tgz", + "integrity": "sha512-oO6vCkjqsVrEsmh58oNlnJkRXuA30hF8cdNAQV9DytEalDwyOFRvHMnlKFzmOStNerOmPGZU9GAHnBo4tGvtiQ==", "dev": true, "requires": { "app-root-path": "2.1.0", - "css-selector-tokenizer": "0.7.0", + "css-selector-tokenizer": "0.7.1", "cssauron": "1.4.0", "semver-dsl": "1.0.1", "source-map": "0.5.7", - "sprintf-js": "1.0.3" + "sprintf-js": "1.1.2" }, "dependencies": { "source-map": { @@ -2424,6 +3201,12 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", "dev": true + }, + "sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==", + "dev": true } } }, @@ -2846,13 +3629,13 @@ } }, "css-selector-tokenizer": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.0.tgz", - "integrity": "sha1-5piEdK6MlTR3v15+/s/OzNnPTIY=", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", + "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", "dev": true, "requires": { "cssesc": "0.1.0", - "fastparse": "1.1.1", + "fastparse": "1.1.2", "regexpu-core": "1.0.0" } }, @@ -2963,12 +3746,6 @@ "integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU=", "dev": true }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true - }, "deep-is": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", @@ -3111,6 +3888,12 @@ "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" }, + "dependency-graph": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/dependency-graph/-/dependency-graph-0.7.2.tgz", + "integrity": "sha512-KqtH4/EZdtdfWX0p6MGP9jljvxSY6msy/pRUD4jgNwVpv3v1QmNLlsB3LDSSUg79BRVSn7jI1QPRtArGABovAQ==", + "dev": true + }, "des.js": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.0.tgz", @@ -3373,6 +4156,15 @@ "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", "dev": true }, + "encoding": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.12.tgz", + "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", + "dev": true, + "requires": { + "iconv-lite": "0.4.23" + } + }, "end-of-stream": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz", @@ -3452,6 +4244,12 @@ "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", "dev": true }, + "err-code": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", + "integrity": "sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA=", + "dev": true + }, "errno": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", @@ -3761,54 +4559,6 @@ } } }, - "expand-range": { - "version": "1.8.2", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", - "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", - "dev": true, - "requires": { - "fill-range": "2.2.4" - }, - "dependencies": { - "fill-range": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", - "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", - "dev": true, - "requires": { - "is-number": "2.1.0", - "isobject": "2.1.0", - "randomatic": "3.0.0", - "repeat-element": "1.1.2", - "repeat-string": "1.6.1" - } - }, - "is-number": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz", - "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=", - "dev": true, - "requires": { - "kind-of": "3.2.2" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true - }, - "isobject": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz", - "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=", - "dev": true, - "requires": { - "isarray": "1.0.0" - } - } - } - }, "express": { "version": "4.16.3", "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", @@ -4010,9 +4760,9 @@ "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=" }, "fastparse": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.1.tgz", - "integrity": "sha1-0eJkOzipTXWDtHkGDmxK/8lAcfg=", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/fastparse/-/fastparse-1.1.2.tgz", + "integrity": "sha512-483XLLxTVIwWK3QTrMGRqUfUpoOs/0hbQrl2oz4J0pAcm3A3bu84wxTFqGqkJzewCLdME38xJLJAxBABfQT8sQ==", "dev": true }, "faye-websocket": { @@ -4024,6 +4774,12 @@ "websocket-driver": "0.7.0" } }, + "figgy-pudding": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.1.tgz", + "integrity": "sha512-vNKxJHTEKNThjfrdJwHc7brvM6eVevuO5nTj6ez8ZQ1qbXTvGthucRF7S4vf2cr71QVnT70V34v0S1DyQsti0w==", + "dev": true + }, "figures": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", @@ -4047,12 +4803,6 @@ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" }, - "filename-regex": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", - "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=", - "dev": true - }, "fileset": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/fileset/-/fileset-2.0.3.tgz", @@ -4241,6 +4991,15 @@ "universalify": "0.1.2" } }, + "fs-minipass": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", + "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", + "dev": true, + "requires": { + "minipass": "2.3.5" + } + }, "fs-write-stream-atomic": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz", @@ -4908,6 +5667,12 @@ "is-property": "1.0.2" } }, + "genfun": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/genfun/-/genfun-5.0.0.tgz", + "integrity": "sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA==", + "dev": true + }, "get-caller-file": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz", @@ -4977,42 +5742,6 @@ "path-is-absolute": "1.0.1" } }, - "glob-base": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz", - "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=", - "dev": true, - "requires": { - "glob-parent": "2.0.0", - "is-glob": "2.0.1" - }, - "dependencies": { - "glob-parent": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz", - "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=", - "dev": true, - "requires": { - "is-glob": "2.0.1" - } - }, - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "1.0.0" - } - } - } - }, "glob-parent": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", @@ -5473,6 +6202,12 @@ } } }, + "http-cache-semantics": { + "version": "3.8.1", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", + "integrity": "sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w==", + "dev": true + }, "http-deceiver": { "version": "1.2.7", "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz", @@ -5569,6 +6304,15 @@ "debug": "3.1.0" } }, + "humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, "iconv-lite": { "version": "0.4.23", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", @@ -5595,6 +6339,15 @@ "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", "dev": true }, + "ignore-walk": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", + "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", + "dev": true, + "requires": { + "minimatch": "3.0.4" + } + }, "image-size": { "version": "0.5.5", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", @@ -5720,6 +6473,12 @@ "meow": "3.7.0" } }, + "interpret": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", + "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", + "dev": true + }, "invariant": { "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", @@ -5829,21 +6588,6 @@ "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=", "dev": true }, - "is-dotfile": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz", - "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=", - "dev": true - }, - "is-equal-shallow": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz", - "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=", - "dev": true, - "requires": { - "is-primitive": "2.0.0" - } - }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -5945,18 +6689,6 @@ "isobject": "3.0.1" } }, - "is-posix-bracket": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz", - "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=", - "dev": true - }, - "is-primitive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz", - "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=", - "dev": true - }, "is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", @@ -6420,6 +7152,12 @@ "dev": true, "optional": true }, + "jsonparse": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", + "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", + "dev": true + }, "jsonpointer": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", @@ -7064,6 +7802,15 @@ "resolved": "https://registry.npmjs.org/macos-release/-/macos-release-1.1.0.tgz", "integrity": "sha512-mmLbumEYMi5nXReB9js3WGsB8UE6cDBWyIO62Z4DNx6GbRhDxHNjA1MlzSpJ2S2KM1wyiPRA0d19uHWYYvMHjA==" }, + "magic-string": { + "version": "0.25.2", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.2.tgz", + "integrity": "sha512-iLs9mPjh9IuTtRsqqhNGYcZXGei0Nh/A4xirrsqW7c+QhKVFL2vm7U09ru6cHRD22azaP/wMDgI+HCqbETMTtg==", + "dev": true, + "requires": { + "sourcemap-codec": "1.4.4" + } + }, "mailcomposer": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz", @@ -7165,6 +7912,176 @@ "integrity": "sha512-0Dab5btKVPhibSalc9QGXb559ED7G7iLjFXBaj9Wq8O3vorueR5K5jaE3hkG6ZQINyhA/JgG6Qk4qdFQjsYV6g==", "dev": true }, + "make-fetch-happen": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", + "integrity": "sha512-7R5ivfy9ilRJ1EMKIOziwrns9fGeAD4bAha8EB7BIiBBLHm2KeTUGCrICFt2rbHfzheTLynv50GnNTK1zDTrcQ==", + "dev": true, + "requires": { + "agentkeepalive": "3.5.2", + "cacache": "11.3.2", + "http-cache-semantics": "3.8.1", + "http-proxy-agent": "2.1.0", + "https-proxy-agent": "2.2.1", + "lru-cache": "4.1.3", + "mississippi": "3.0.0", + "node-fetch-npm": "2.0.2", + "promise-retry": "1.1.1", + "socks-proxy-agent": "4.0.2", + "ssri": "6.0.1" + }, + "dependencies": { + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "chownr": "1.1.1", + "figgy-pudding": "3.5.1", + "glob": "7.1.3", + "graceful-fs": "4.1.15", + "lru-cache": "5.1.1", + "mississippi": "3.0.0", + "mkdirp": "0.5.1", + "move-concurrently": "1.0.1", + "promise-inflight": "1.0.1", + "rimraf": "2.6.2", + "ssri": "6.0.1", + "unique-filename": "1.1.1", + "y18n": "4.0.0" + }, + "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "3.0.3" + } + } + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "duplexify": "3.6.0", + "end-of-stream": "1.4.1", + "flush-write-stream": "1.0.3", + "from2": "2.3.0", + "parallel-transform": "1.1.0", + "pump": "3.0.0", + "pumpify": "1.5.1", + "stream-each": "1.2.3", + "through2": "2.0.3" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "once": "1.4.0" + } + }, + "smart-buffer": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.2.tgz", + "integrity": "sha512-JDhEpTKzXusOqXZ0BUIdH+CjFdO/CR3tLlf5CN34IypI+xMmXW1uB16OOY8z3cICbJlDAVJzNbwBhNO0wt9OAw==", + "dev": true + }, + "socks": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.3.2.tgz", + "integrity": "sha512-pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ==", + "dev": true, + "requires": { + "ip": "1.1.5", + "smart-buffer": "4.0.2" + } + }, + "socks-proxy-agent": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz", + "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", + "dev": true, + "requires": { + "agent-base": "4.2.1", + "socks": "2.3.2" + } + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "3.5.1" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "2.0.0" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -7186,12 +8103,6 @@ "object-visit": "1.0.1" } }, - "math-random": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", - "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=", - "dev": true - }, "md5.js": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", @@ -7365,6 +8276,33 @@ "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", "dev": true }, + "minipass": { + "version": "2.3.5", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", + "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", + "dev": true, + "requires": { + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + }, + "dependencies": { + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, + "minizlib": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", + "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", + "dev": true, + "requires": { + "minipass": "2.3.5" + } + }, "mississippi": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-2.0.0.tgz", @@ -7429,11 +8367,6 @@ "minimist": "0.0.8" } }, - "moment": { - "version": "2.22.2", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.22.2.tgz", - "integrity": "sha1-PCV/mDn8DpP/UxSWMiOeuQeD/2Y=" - }, "move-concurrently": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", @@ -7571,6 +8504,17 @@ "lower-case": "1.1.4" } }, + "node-fetch-npm": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", + "integrity": "sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw==", + "dev": true, + "requires": { + "encoding": "0.1.12", + "json-parse-better-errors": "1.0.2", + "safe-buffer": "5.1.2" + } + }, "node-forge": { "version": "0.7.5", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.7.5.tgz", @@ -7957,6 +8901,12 @@ "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", "dev": true }, + "npm-bundled": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", + "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", + "dev": true + }, "npm-package-arg": { "version": "6.1.0", "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-6.1.0.tgz", @@ -7969,24 +8919,39 @@ "validate-npm-package-name": "3.0.0" } }, - "npm-registry-client": { - "version": "8.6.0", - "resolved": "https://registry.npmjs.org/npm-registry-client/-/npm-registry-client-8.6.0.tgz", - "integrity": "sha512-Qs6P6nnopig+Y8gbzpeN/dkt+n7IyVd8f45NTMotGk6Qo7GfBmzwYx6jRLoOOgKiMnaQfYxsuyQlD8Mc3guBhg==", + "npm-packlist": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", + "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "graceful-fs": "4.1.11", - "normalize-package-data": "2.4.0", + "ignore-walk": "3.0.1", + "npm-bundled": "1.0.6" + } + }, + "npm-pick-manifest": { + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-2.2.3.tgz", + "integrity": "sha512-+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA==", + "dev": true, + "requires": { + "figgy-pudding": "3.5.1", "npm-package-arg": "6.1.0", - "npmlog": "4.1.2", - "once": "1.4.0", - "request": "2.87.0", - "retry": "0.10.1", - "safe-buffer": "5.1.2", - "semver": "5.5.0", - "slide": "1.1.6", - "ssri": "5.3.0" + "semver": "5.5.0" + } + }, + "npm-registry-fetch": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-3.9.0.tgz", + "integrity": "sha512-srwmt8YhNajAoSAaDWndmZgx89lJwIZ1GWxOuckH4Coek4uHv5S+o/l9FLQe/awA+JwTnj4FJHldxhlXdZEBmw==", + "dev": true, + "requires": { + "JSONStream": "1.3.5", + "bluebird": "3.5.1", + "figgy-pudding": "3.5.1", + "lru-cache": "4.1.3", + "make-fetch-happen": "4.0.1", + "npm-package-arg": "6.1.0" } }, "npm-run-path": { @@ -8112,27 +9077,6 @@ "es-abstract": "1.12.0" } }, - "object.omit": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/object.omit/-/object.omit-2.0.1.tgz", - "integrity": "sha1-Gpx0SCnznbuFjHbKNXmuKlTr0fo=", - "dev": true, - "requires": { - "for-own": "0.1.5", - "is-extendable": "0.1.1" - }, - "dependencies": { - "for-own": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz", - "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=", - "dev": true, - "requires": { - "for-in": "1.0.2" - } - } - } - }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -8335,6 +9279,194 @@ "thunkify": "2.1.2" } }, + "pacote": { + "version": "9.4.0", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-9.4.0.tgz", + "integrity": "sha512-WQ1KL/phGMkedYEQx9ODsjj7xvwLSpdFJJdEXrLyw5SILMxcTNt5DTxT2Z93fXuLFYJBlZJdnwdalrQdB/rX5w==", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "cacache": "11.3.2", + "figgy-pudding": "3.5.1", + "get-stream": "4.1.0", + "glob": "7.1.3", + "lru-cache": "5.1.1", + "make-fetch-happen": "4.0.1", + "minimatch": "3.0.4", + "minipass": "2.3.5", + "mississippi": "3.0.0", + "mkdirp": "0.5.1", + "normalize-package-data": "2.4.0", + "npm-package-arg": "6.1.0", + "npm-packlist": "1.4.1", + "npm-pick-manifest": "2.2.3", + "npm-registry-fetch": "3.9.0", + "osenv": "0.1.5", + "promise-inflight": "1.0.1", + "promise-retry": "1.1.1", + "protoduck": "5.0.1", + "rimraf": "2.6.2", + "safe-buffer": "5.1.2", + "semver": "5.6.0", + "ssri": "6.0.1", + "tar": "4.4.8", + "unique-filename": "1.1.1", + "which": "1.3.1" + }, + "dependencies": { + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "dev": true, + "requires": { + "bluebird": "3.5.3", + "chownr": "1.1.1", + "figgy-pudding": "3.5.1", + "glob": "7.1.3", + "graceful-fs": "4.1.15", + "lru-cache": "5.1.1", + "mississippi": "3.0.0", + "mkdirp": "0.5.1", + "move-concurrently": "1.0.1", + "promise-inflight": "1.0.1", + "rimraf": "2.6.2", + "ssri": "6.0.1", + "unique-filename": "1.1.1", + "y18n": "4.0.0" + } + }, + "chownr": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", + "dev": true + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "3.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "1.0.0", + "inflight": "1.0.6", + "inherits": "2.0.3", + "minimatch": "3.0.4", + "once": "1.4.0", + "path-is-absolute": "1.0.1" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "3.0.3" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "1.6.2", + "duplexify": "3.6.0", + "end-of-stream": "1.4.1", + "flush-write-stream": "1.0.3", + "from2": "2.3.0", + "parallel-transform": "1.1.0", + "pump": "3.0.0", + "pumpify": "1.5.1", + "stream-each": "1.2.3", + "through2": "2.0.3" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "1.4.1", + "once": "1.4.0" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "3.5.1" + } + }, + "tar": { + "version": "4.4.8", + "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", + "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", + "dev": true, + "requires": { + "chownr": "1.1.1", + "fs-minipass": "1.2.5", + "minipass": "2.3.5", + "minizlib": "1.2.1", + "mkdirp": "0.5.1", + "safe-buffer": "5.1.2", + "yallist": "3.0.3" + } + }, + "unique-filename": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", + "dev": true, + "requires": { + "unique-slug": "2.0.0" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } + } + }, "pako": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.6.tgz", @@ -8374,35 +9506,6 @@ "pbkdf2": "3.0.16" } }, - "parse-glob": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/parse-glob/-/parse-glob-3.0.4.tgz", - "integrity": "sha1-ssN2z7EfNVE7rdFz7wu246OIORw=", - "dev": true, - "requires": { - "glob-base": "0.3.0", - "is-dotfile": "1.0.3", - "is-extglob": "1.0.0", - "is-glob": "2.0.1" - }, - "dependencies": { - "is-extglob": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz", - "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=", - "dev": true - }, - "is-glob": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz", - "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=", - "dev": true, - "requires": { - "is-extglob": "1.0.0" - } - } - } - }, "parse-json": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz", @@ -8688,12 +9791,6 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, - "preserve": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/preserve/-/preserve-0.2.0.tgz", - "integrity": "sha1-gV7R9uvGWSb4ZbMQwHE7yzMVzks=", - "dev": true - }, "pretty-error": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", @@ -8728,6 +9825,16 @@ "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, + "promise-retry": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-1.1.1.tgz", + "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", + "dev": true, + "requires": { + "err-code": "1.1.2", + "retry": "0.10.1" + } + }, "promisify-call": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/promisify-call/-/promisify-call-2.0.4.tgz", @@ -8738,6 +9845,15 @@ "with-callback": "1.0.2" } }, + "protoduck": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/protoduck/-/protoduck-5.0.1.tgz", + "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", + "dev": true, + "requires": { + "genfun": "5.0.0" + } + }, "protractor": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/protractor/-/protractor-5.4.1.tgz", @@ -8994,31 +10110,6 @@ "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", "dev": true }, - "randomatic": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", - "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", - "dev": true, - "requires": { - "is-number": "4.0.0", - "kind-of": "6.0.2", - "math-random": "1.0.1" - }, - "dependencies": { - "is-number": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", - "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==", - "dev": true - }, - "kind-of": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", - "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==", - "dev": true - } - } - }, "randombytes": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", @@ -9061,26 +10152,6 @@ "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", "dev": true }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dev": true, - "requires": { - "deep-extend": "0.6.0", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, "read-cache": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/read-cache/-/read-cache-1.0.0.tgz", @@ -9200,6 +10271,15 @@ "set-immediate-shim": "1.0.1" } }, + "rechoir": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz", + "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", + "dev": true, + "requires": { + "resolve": "1.8.1" + } + }, "recursive-readdir": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/recursive-readdir/-/recursive-readdir-2.2.2.tgz", @@ -9245,9 +10325,9 @@ "optional": true }, "reflect-metadata": { - "version": "0.1.12", - "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.12.tgz", - "integrity": "sha512-n+IyV+nGz3+0q3/Yf1ra12KpCyi001bi4XFxSjbiWWjfqb52iTTtpGXmCCAOWWIAn9KEuFZKGqBERHmrtScZ3A==", + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", + "integrity": "sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg==", "dev": true }, "regenerate": { @@ -9262,15 +10342,6 @@ "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", "dev": true }, - "regex-cache": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/regex-cache/-/regex-cache-0.4.4.tgz", - "integrity": "sha512-nVIZwtCjkC9YgvWkpM55B5rBhBYRZhAaJbgcFYXXsHnbZ9UZI9nnVWYZpBlCqv9ho2eZryPnWrZGsOdPwVWXWQ==", - "dev": true, - "requires": { - "is-equal-shallow": "0.1.3" - } - }, "regex-not": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", @@ -9568,11 +10639,11 @@ } }, "rxjs": { - "version": "5.5.11", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-5.5.11.tgz", - "integrity": "sha512-3bjO7UwWfA2CV7lmwYMBzj4fQ6Cq+ftHc2MvUe+WMS7wcdJ1LosDWmdjPQanYp2dBRj572p7PeU81JUxHKOcBA==", + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", + "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", "requires": { - "symbol-observable": "1.0.1" + "tslib": "1.9.3" } }, "safe-buffer": { @@ -9880,9 +10951,9 @@ } }, "semver-intersect": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.3.1.tgz", - "integrity": "sha1-j6hKnhAovSOeRTDRo+GB5pjYhLo=", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/semver-intersect/-/semver-intersect-1.4.0.tgz", + "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", "dev": true, "requires": { "semver": "5.5.0" @@ -10068,6 +11139,17 @@ "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", "dev": true }, + "shelljs": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.3.tgz", + "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", + "dev": true, + "requires": { + "glob": "7.1.2", + "interpret": "1.2.0", + "rechoir": "0.6.2" + } + }, "signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", @@ -10109,12 +11191,6 @@ "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", "dev": true }, - "slide": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/slide/-/slide-1.1.6.tgz", - "integrity": "sha1-VusCfWW00tzmyy4tMsTUr8nh1wc=", - "dev": true - }, "smart-buffer": { "version": "1.1.15", "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", @@ -10648,6 +11724,12 @@ "integrity": "sha1-PpNdfd1zYxuXZZlW1VEo6HtQhKM=", "dev": true }, + "sourcemap-codec": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.4.tgz", + "integrity": "sha512-CYAPYdBu34781kLHkaW3m6b/uUSyMOC2R61gcYMWooeuaGtjof86ZA/8T+qVPPt7np1085CR9hmMGrySwEc8Xg==", + "dev": true + }, "spdx-correct": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.0.0.tgz", @@ -10999,11 +12081,6 @@ "has-flag": "3.0.0" } }, - "symbol-observable": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/symbol-observable/-/symbol-observable-1.0.1.tgz", - "integrity": "sha1-g0D8RwLDEi310iKI+IKD9RPT/dQ=" - }, "tapable": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", @@ -11276,26 +12353,6 @@ } } }, - "tsickle": { - "version": "0.27.5", - "resolved": "https://registry.npmjs.org/tsickle/-/tsickle-0.27.5.tgz", - "integrity": "sha512-NP+CjM1EXza/M8mOXBLH3vkFEJiu1zfEAlC5WdJxHPn8l96QPz5eooP6uAgYtw1CcKfuSyIiheNUdKxtDWCNeg==", - "dev": true, - "requires": { - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "source-map": "0.6.1", - "source-map-support": "0.5.6" - }, - "dependencies": { - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true - } - } - }, "tslib": { "version": "1.9.3", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz", @@ -11380,9 +12437,9 @@ "dev": true }, "typescript": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.4.2.tgz", - "integrity": "sha1-+DlfhdRZJ2BnyYiqQYN6j4KHCEQ=", + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.2.4.tgz", + "integrity": "sha512-0RNDbSdEokBeEAkgNbxJ+BLwSManFy9TeXz8uW+48j/xhEXv1ePME60olyzw2XzUqUBNAYFeJadIqAgNqIACwg==", "dev": true }, "uglify-js": { @@ -12430,9 +13487,9 @@ } }, "zone.js": { - "version": "0.8.26", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.26.tgz", - "integrity": "sha512-W9Nj+UmBJG251wkCacIkETgra4QgBo/vgoEkb4a2uoLzpQG7qF9nzwoLXWU5xj3Fg2mxGvEDh47mg24vXccYjA==" + "version": "0.8.29", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.8.29.tgz", + "integrity": "sha512-mla2acNCMkWXBD+c+yeUrBUrzOxYMNFdQ6FGfigGGtEVBPJx07BQeJekjt9DmH1FtZek4E9rE1eRR9qQpxACOQ==" } } } diff --git a/package.json b/package.json index 33ee8e9c..e13396fb 100644 --- a/package.json +++ b/package.json @@ -16,33 +16,31 @@ }, "private": true, "dependencies": { - "@angular/animations": "^5.2.8", - "@angular/common": "^5.2.8", - "@angular/compiler": "^5.2.8", - "@angular/core": "^5.2.8", - "@angular/forms": "^5.2.8", - "@angular/http": "^5.2.8", - "@angular/platform-browser": "^5.2.8", - "@angular/platform-browser-dynamic": "^5.2.8", - "@angular/router": "^5.2.8", - "@ngx-translate/core": "^9.1.1", - "@ngx-translate/http-loader": "^2.0.1", + "@angular/animations": "^7.2.9", + "@angular/common": "^7.2.9", + "@angular/compiler": "^7.2.9", + "@angular/core": "^7.2.9", + "@angular/forms": "^7.2.9", + "@angular/platform-browser": "^7.2.9", + "@angular/platform-browser-dynamic": "^7.2.9", + "@angular/router": "^7.2.9", + "@ngx-translate/core": "^11.0.1", + "@ngx-translate/http-loader": "^4.0.0", "core-js": "^2.4.1", "disable-scroll": "^0.4.0", - "moment": "^2.21.0", - "rxjs": "^5.5.2", - "zone.js": "^0.8.14", + "rxjs": "^6.4.0", + "zone.js": "^0.8.29", "snyk": "^1.85.0", "bignumber.js": "^7.2.1" }, "devDependencies": { - "@angular/cli": "^6.0.0", - "@angular/compiler-cli": "^5.2.8", - "@angular/language-service": "^5.2.8", + "@angular/cli": "^7.3.5", + "@angular/compiler-cli": "^7.2.9", + "@angular/language-service": "^7.2.9", "@types/jasmine": "~2.5.53", "@types/jasminewd2": "~2.0.2", "@types/node": "^6.0.101", - "codelyzer": "~4.0.1", + "codelyzer": "~4.5.0", "jasmine-core": "~2.99.1", "jasmine-spec-reporter": "~4.1.0", "karma": "~2.0.0", @@ -54,7 +52,7 @@ "protractor": "~5.4.0", "ts-node": "~3.2.0", "tslint": "~5.7.0", - "typescript": "~2.4.2", + "typescript": "~3.2.4", "@angular-devkit/build-angular": "~0.6.0" }, "snyk": true diff --git a/src/app/app.translate-loader.ts b/src/app/app.translate-loader.ts index a0a773b9..4ca4e14c 100644 --- a/src/app/app.translate-loader.ts +++ b/src/app/app.translate-loader.ts @@ -1,9 +1,9 @@ +import { from as observableFrom, Observable } from 'rxjs'; import { TranslateLoader } from '@ngx-translate/core'; -import { Observable } from 'rxjs/Observable'; // Loads the translation files, with cache busting. export class AppTranslateLoader implements TranslateLoader { getTranslation(lang: string): Observable { - return Observable.fromPromise(System.import(`../assets/i18n/${lang}.json`)); + return observableFrom(System.import(`../assets/i18n/${lang}.json`)); } } diff --git a/src/app/components/layout/date-formatter/date-formatter.component.html b/src/app/components/layout/date-formatter/date-formatter.component.html index 28c27849..d13507bd 100644 --- a/src/app/components/layout/date-formatter/date-formatter.component.html +++ b/src/app/components/layout/date-formatter/date-formatter.component.html @@ -1,6 +1,6 @@
{{date * dateMultiplier | date:'yyyy-MM-dd'}} - {{date * dateMultiplier | date:'HH:mm:ss'}} +  {{date * dateMultiplier | date:'HH:mm:ss'}}
{{date * dateMultiplier | date:'OOOO'}}
diff --git a/src/app/components/pages/address-detail/address-detail.component.ts b/src/app/components/pages/address-detail/address-detail.component.ts index c4f80cd3..5890e860 100644 --- a/src/app/components/pages/address-detail/address-detail.component.ts +++ b/src/app/components/pages/address-detail/address-detail.component.ts @@ -1,9 +1,9 @@ +import { of as observableOf } from 'rxjs'; +import { switchMap } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { ApiService } from '../../../services/api/api.service'; import { ExplorerService } from '../../../services/explorer/explorer.service'; -import {Observable} from 'rxjs/Observable'; -import 'rxjs/Rx'; import { TranslateService } from '@ngx-translate/core'; import { BigNumber } from 'bignumber.js'; @@ -41,7 +41,7 @@ export class AddressDetailComponent implements OnInit { } ngOnInit() { - this.route.params.switchMap((params: Params) => { + this.route.params.pipe(switchMap((params: Params) => { // Clear the content if the address, and not just the page, changes if (this.address !== params['address']) { this.transactions = undefined; @@ -58,12 +58,12 @@ export class AddressDetailComponent implements OnInit { this.pageTransactions = undefined; if (this.transactions) { - return Observable.of(this.transactions); + return observableOf(this.transactions); } else { return this.explorer.getTransactions(this.address); } - }).subscribe( + })).subscribe( transactions => { this.transactions = transactions; @@ -91,7 +91,7 @@ export class AddressDetailComponent implements OnInit { } ); - this.route.params.switchMap((params: Params) => this.api.getBalance(params['address'])) + this.route.params.pipe(switchMap((params: Params) => this.api.getBalance(params['address']))) .subscribe(response => { this.balance = new BigNumber(response.confirmed.coins).dividedBy(1000000); this.hoursBalance = new BigNumber(response.confirmed.hours); diff --git a/src/app/components/pages/block-details/block-details.component.html b/src/app/components/pages/block-details/block-details.component.html index 3b4e3a9f..91f2f590 100644 --- a/src/app/components/pages/block-details/block-details.component.html +++ b/src/app/components/pages/block-details/block-details.component.html @@ -4,11 +4,11 @@

{{ 'blockDetails.title' | translate }}

diff --git a/src/app/components/pages/block-details/block-details.component.ts b/src/app/components/pages/block-details/block-details.component.ts index 1739556a..e77986aa 100644 --- a/src/app/components/pages/block-details/block-details.component.ts +++ b/src/app/components/pages/block-details/block-details.component.ts @@ -1,9 +1,8 @@ +import { switchMap, filter, first } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { ExplorerService } from '../../../services/explorer/explorer.service'; import { Block } from '../../../app.datatypes'; -import 'rxjs/add/operator/filter'; -import 'rxjs/add/operator/switchMap'; import { TranslateService } from '@ngx-translate/core'; import { ApiService } from 'app/services/api/api.service'; @@ -31,14 +30,14 @@ export class BlockDetailsComponent implements OnInit { ngOnInit() { - this.api.getBlockchainMetadata().first().subscribe(blockchain => this.blockCount = blockchain.blocks); + this.api.getBlockchainMetadata().pipe(first()).subscribe(blockchain => this.blockCount = blockchain.blocks); let blockID = ''; - this.route.params.filter(params => +params['id'] !== null) - .switchMap((params: Params) => { + this.route.params.pipe(filter(params => +params['id'] !== null), + switchMap((params: Params) => { blockID = params['id']; return this.explorer.getBlock(+blockID); - }).subscribe((block: Block) => { + })).subscribe((block: Block) => { if (block != null) { this.block = block; } else { diff --git a/src/app/components/pages/blocks/blocks.component.ts b/src/app/components/pages/blocks/blocks.component.ts index 9c90fcd3..31cc45d8 100644 --- a/src/app/components/pages/blocks/blocks.component.ts +++ b/src/app/components/pages/blocks/blocks.component.ts @@ -1,10 +1,9 @@ +import { first } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; import { ApiService } from '../../../services/api/api.service'; import { Block } from '../../../app.datatypes'; import { ExplorerService } from '../../../services/explorer/explorer.service'; -import 'rxjs/add/operator/first'; -import 'rxjs/Subscription'; import { TranslateService } from '@ngx-translate/core'; @Component({ @@ -43,7 +42,7 @@ export class BlocksComponent implements OnInit { } ngOnInit() { - this.api.getBlockchainMetadata().first().subscribe(blockchain => { + this.api.getBlockchainMetadata().pipe(first()).subscribe(blockchain => { this.blockCount = blockchain.blocks; this.route.paramMap .subscribe(params => { @@ -57,7 +56,7 @@ export class BlocksComponent implements OnInit { }); }); - this.api.getCoinSupply().first().subscribe(response => { + this.api.getCoinSupply().pipe(first()).subscribe(response => { this.currentSupply = response.current_supply; this.totalSupply = response.total_supply; this.currentCoinhourSupply = response.current_coinhour_supply; @@ -74,6 +73,6 @@ export class BlocksComponent implements OnInit { this.pageIndex = pageIndex; const end = this.blockCount - (this.pageIndex * this.pageSize); const begin = end - this.pageSize + 1; - this.explorer.getBlocks(begin > 0 ? begin : 0, end > 0 ? end : 0).first().subscribe(blocks => this.blocks = blocks); + this.explorer.getBlocks(begin > 0 ? begin : 0, end > 0 ? end : 0).pipe(first()).subscribe(blocks => this.blocks = blocks); } } diff --git a/src/app/components/pages/richlist/richlist.component.ts b/src/app/components/pages/richlist/richlist.component.ts index 3d7f5f3a..f6a42f33 100644 --- a/src/app/components/pages/richlist/richlist.component.ts +++ b/src/app/components/pages/richlist/richlist.component.ts @@ -1,8 +1,7 @@ +import { first } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ApiService } from '../../../services/api/api.service'; import { RichlistEntry } from '../../../app.datatypes'; -import 'rxjs/add/operator/first'; -import 'rxjs/Subscription'; import { TranslateService } from '@ngx-translate/core'; @Component({ @@ -21,7 +20,7 @@ export class RichlistComponent implements OnInit { ngOnInit() { - this.api.getRichlist().first().subscribe(entries => this.entries = entries, + this.api.getRichlist().pipe(first()).subscribe(entries => this.entries = entries, () => { this.translate.get('general.longLoadingErrorMsg').subscribe((res: string) => { this.longErrorMsg = res; diff --git a/src/app/components/pages/search/search.component.ts b/src/app/components/pages/search/search.component.ts index ba26acd0..f7652533 100644 --- a/src/app/components/pages/search/search.component.ts +++ b/src/app/components/pages/search/search.component.ts @@ -1,3 +1,4 @@ +import { first } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params, Router } from '@angular/router'; @@ -18,7 +19,7 @@ export class SearchComponent implements OnInit { ) {} ngOnInit() { - this.route.params.first() + this.route.params.pipe(first()) .subscribe((params: Params) => { if (!params['term'] || (params['term'].trim() as string).length < 1) { this.errorMsg = 'search.unableToFind'; diff --git a/src/app/components/pages/transaction-detail/transaction-detail.component.ts b/src/app/components/pages/transaction-detail/transaction-detail.component.ts index 6219448a..4046178d 100644 --- a/src/app/components/pages/transaction-detail/transaction-detail.component.ts +++ b/src/app/components/pages/transaction-detail/transaction-detail.component.ts @@ -1,6 +1,6 @@ +import { mergeMap } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; -import 'rxjs/add/operator/mergeMap'; import { Transaction } from '../../../app.datatypes'; import { ExplorerService } from '../../../services/explorer/explorer.service'; import { TranslateService } from '@ngx-translate/core'; @@ -27,7 +27,7 @@ export class TransactionDetailComponent implements OnInit { } ngOnInit() { - this.route.params.flatMap((params: Params) => this.explorer.getTransaction(params['txid'])) + this.route.params.pipe(mergeMap((params: Params) => this.explorer.getTransaction(params['txid']))) .subscribe( transaction => this.transaction = transaction, error => { diff --git a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts index 38226210..b0d3f62b 100644 --- a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts +++ b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts @@ -1,8 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { ExplorerService } from '../../../services/explorer/explorer.service'; import { Transaction } from '../../../app.datatypes'; -import 'rxjs/add/operator/filter'; -import 'rxjs/add/operator/switchMap'; import { TranslateService } from '@ngx-translate/core'; @Component({ diff --git a/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts b/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts index 4480af15..b367b705 100644 --- a/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts +++ b/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts @@ -1,9 +1,8 @@ +import { switchMap } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { ApiService } from '../../../services/api/api.service'; import { GetCurrentBalanceResponse } from '../../../app.datatypes'; -import 'rxjs/add/operator/filter'; -import 'rxjs/add/operator/switchMap'; import { TranslateService } from '@ngx-translate/core'; import { BigNumber } from 'bignumber.js'; @@ -31,10 +30,10 @@ export class UnspentOutputsComponent implements OnInit { } ngOnInit() { - this.route.params.switchMap((params: Params) => { + this.route.params.pipe(switchMap((params: Params) => { this.address = params['address']; return this.api.getCurrentBalance(params['address']); - }).subscribe(response => { + })).subscribe(response => { this.outputs = response; this.coins = new BigNumber(0); diff --git a/src/app/services/api/api.service.ts b/src/app/services/api/api.service.ts index 042137e6..c283053d 100644 --- a/src/app/services/api/api.service.ts +++ b/src/app/services/api/api.service.ts @@ -1,11 +1,9 @@ +import { throwError as observableThrowError, Observable } from 'rxjs'; +import { catchError, map } from 'rxjs/operators'; import { Injectable } from '@angular/core'; import { HttpClient } from '@angular/common/http'; -import { Observable } from 'rxjs/Observable'; import { Blockchain, GetBlocksResponse, GetBlockchainMetadataResponse, GetUnconfirmedTransactionResponse, GenericTransactionResponse, GetCurrentBalanceResponse, GenericBlockResponse, RichlistEntry, GetBalanceResponse, GetTransactionResponse, GetCoinSupplyResponse } from '../../app.datatypes'; -import 'rxjs/add/observable/throw'; -import 'rxjs/add/operator/map'; -import 'rxjs/add/operator/catch'; @Injectable() export class ApiService { @@ -37,10 +35,10 @@ export class ApiService { } getBlockchainMetadata(): Observable { - return this.get('blockchain/metadata') - .map((res: GetBlockchainMetadataResponse) => ({ + return this.get('blockchain/metadata').pipe( + map((res: GetBlockchainMetadataResponse) => ({ blocks: res.head.seq, - })); + }))); } getCoinSupply(): Observable { @@ -60,14 +58,15 @@ export class ApiService { } getRichlist(): Observable { - return this.get('richlist').map(response => response.richlist); + return this.get('richlist').pipe(map((response: any) => response.richlist)); } // Old methods get(url: string, options: object = null): any { - return this.http.get(this.getUrl(url, options)) - .catch((error: any) => Observable.throw(error || 'Server error')); + return this.http.get(this.getUrl(url, options)).pipe( + catchError((error: any) => observableThrowError(error || 'Server error')) + ); } private getQueryString(parameters: object = null): string { diff --git a/src/app/services/explorer/explorer.service.ts b/src/app/services/explorer/explorer.service.ts index c0748c4d..b113c4d4 100644 --- a/src/app/services/explorer/explorer.service.ts +++ b/src/app/services/explorer/explorer.service.ts @@ -1,11 +1,8 @@ +import { Observable } from 'rxjs'; +import { map } from 'rxjs/operators'; import { Injectable } from '@angular/core'; import { ApiService } from '../api/api.service'; -import { Observable } from 'rxjs/Observable'; -import { Block, parseGenericTransaction, parseGenericBlock, parseGetUnconfirmedTransaction, Transaction, parseGetTransaction } from '../../app.datatypes'; -import 'rxjs/add/observable/forkJoin'; -import 'rxjs/add/operator/map'; -import 'rxjs/add/operator/mergeMap'; -import 'rxjs/add/observable/of'; +import { Block, parseGenericBlock, parseGetUnconfirmedTransaction, Transaction, parseGetTransaction } from '../../app.datatypes'; import { BigNumber } from 'bignumber.js'; @Injectable() @@ -16,21 +13,21 @@ export class ExplorerService { ) { } getBlock(id: number): Observable { - return this.api.getBlockById(id).map(response => parseGenericBlock(response)); + return this.api.getBlockById(id).pipe(map(response => parseGenericBlock(response))); } getBlocks(start: number, end: number): Observable { - return this.api.getBlocks(start, end) - .map(response => response.blocks.map(block => parseGenericBlock(block)).sort((a, b) => b.id - a.id)); + return this.api.getBlocks(start, end).pipe( + map(response => response.blocks.map(block => parseGenericBlock(block)).sort((a, b) => b.id - a.id))); } getBlockByHash(hash: string): Observable { - return this.api.getBlockByHash(hash).map(response => parseGenericBlock(response)); + return this.api.getBlockByHash(hash).pipe(map(response => parseGenericBlock(response))); } getTransactions(address: string): Observable { - return this.api.getAddress(address) - .map(response => { + return this.api.getAddress(address).pipe( + map(response => { response = response.sort((a, b) => a.txn.timestamp - b.txn.timestamp); let currentBalance = new BigNumber('0'); @@ -41,16 +38,16 @@ export class ExplorerService { parsedTx.finalBalance = currentBalance; return parsedTx; }).reverse(); - }); + })); } getUnconfirmedTransactions(): Observable { - return this.api.getUnconfirmedTransactions() - .map(response => response.map(rawTx => parseGetUnconfirmedTransaction(rawTx))); + return this.api.getUnconfirmedTransactions().pipe( + map(response => response.map(rawTx => parseGetUnconfirmedTransaction(rawTx)))); } getTransaction(transactionId: string): Observable { - return this.api.getTransaction(transactionId) - .map(response => parseGetTransaction(response)); + return this.api.getTransaction(transactionId).pipe( + map(response => parseGetTransaction(response))); } } diff --git a/src/app/services/search/search.service.ts b/src/app/services/search/search.service.ts index 16a790c2..c51db34c 100644 --- a/src/app/services/search/search.service.ts +++ b/src/app/services/search/search.service.ts @@ -1,5 +1,6 @@ +import { throwError as observableThrowError, of as observableOf, Observable } from 'rxjs'; +import { catchError, map } from 'rxjs/operators'; import { Injectable } from '@angular/core'; -import { Observable } from 'rxjs/Observable'; import { ExplorerService } from '../explorer/explorer.service'; @@ -24,20 +25,20 @@ export class SearchService { searchTerm = encodeURIComponent(searchTerm); if (searchTerm.length >= 27 && searchTerm.length <= 35) { - response.resultNavCommands = Observable.of(['/app/address', searchTerm]); + response.resultNavCommands = observableOf(['/app/address', searchTerm]); } else if (searchTerm.length === 64) { - response.resultNavCommands = this.explorer.getBlockByHash(searchTerm) - .map(block => ['/app/block', block.id.toString()]) - .catch((error: any) => { + response.resultNavCommands = this.explorer.getBlockByHash(searchTerm).pipe( + map(block => ['/app/block', block.id.toString()]), + catchError((error: any) => { if (error && error.status && error.status === 404) { - return Observable.of(['/app/transaction', searchTerm]); + return observableOf(['/app/transaction', searchTerm]); } else { - return Observable.throw(error); + return observableThrowError(error); } - }); + })); } else { if (parseInt(searchTerm, 10).toString() === searchTerm && parseInt(searchTerm, 10) >= 0) { - response.resultNavCommands = Observable.of(['/app/block', searchTerm]); + response.resultNavCommands = observableOf(['/app/block', searchTerm]); } else { response.error = SearchError.InvalidSearchTerm; } diff --git a/tslint.json b/tslint.json index 27560e33..d00219e8 100644 --- a/tslint.json +++ b/tslint.json @@ -14,8 +14,7 @@ "eofline": true, "forin": true, "import-blacklist": [ - true, - "rxjs" + true ], "import-spacing": true, "indent": [ From adcae63092fd19cc17f161c5fbb439e5f875719c Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Wed, 13 Mar 2019 22:34:47 -0400 Subject: [PATCH 04/15] Update vulnerable dependencies --- .snyk | 2 +- package-lock.json | 52 +++++++++++++++++++++++------------------------ package.json | 3 ++- 3 files changed, 29 insertions(+), 28 deletions(-) diff --git a/.snyk b/.snyk index e9162b6a..8b792218 100644 --- a/.snyk +++ b/.snyk @@ -1,5 +1,5 @@ # Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities. -version: v1.12.0 +version: v1.13.1 ignore: {} # patches apply the minimum changes required to fix a vulnerability patch: diff --git a/package-lock.json b/package-lock.json index 01c233fa..84de6527 100644 --- a/package-lock.json +++ b/package-lock.json @@ -51,7 +51,7 @@ "less": "3.8.0", "less-loader": "4.1.0", "license-webpack-plugin": "1.3.1", - "lodash": "4.17.10", + "lodash": "4.17.11", "memory-fs": "0.4.1", "mini-css-extract-plugin": "0.4.1", "minimatch": "3.0.4", @@ -393,7 +393,7 @@ "cli-width": "2.2.0", "external-editor": "3.0.3", "figures": "2.0.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "mute-stream": "0.0.7", "run-async": "2.3.0", "rxjs": "6.3.3", @@ -2207,7 +2207,7 @@ "babel-types": "6.26.0", "detect-indent": "4.0.0", "jsesc": "1.3.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "source-map": "0.5.7", "trim-right": "1.0.1" }, @@ -2249,7 +2249,7 @@ "babel-traverse": "6.26.0", "babel-types": "6.26.0", "babylon": "6.18.0", - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "babel-traverse": { @@ -2266,7 +2266,7 @@ "debug": "2.6.9", "globals": "9.18.0", "invariant": "2.2.4", - "lodash": "4.17.10" + "lodash": "4.17.11" }, "dependencies": { "debug": { @@ -2288,7 +2288,7 @@ "requires": { "babel-runtime": "6.26.0", "esutils": "2.0.2", - "lodash": "4.17.10", + "lodash": "4.17.11", "to-fast-properties": "1.0.3" } }, @@ -3245,7 +3245,7 @@ "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=", "dev": true, "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "combined-stream": { @@ -5791,7 +5791,7 @@ "optional": true, "requires": { "glob": "7.1.2", - "lodash": "4.17.10", + "lodash": "4.17.11", "minimatch": "3.0.4" } }, @@ -5805,7 +5805,7 @@ "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz", "integrity": "sha512-XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==", "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "handle-thing": { @@ -6070,7 +6070,7 @@ "dev": true, "optional": true, "requires": { - "lodash": "4.17.10", + "lodash": "4.17.11", "request": "2.87.0" } }, @@ -6146,7 +6146,7 @@ "requires": { "html-minifier": "3.5.19", "loader-utils": "0.2.17", - "lodash": "4.17.10", + "lodash": "4.17.11", "pretty-error": "2.1.1", "tapable": "1.0.0", "toposort": "1.0.7", @@ -6259,7 +6259,7 @@ "requires": { "http-proxy": "1.17.0", "is-glob": "4.0.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "micromatch": "3.1.10" } }, @@ -6454,7 +6454,7 @@ "cli-width": "2.2.0", "external-editor": "2.2.0", "figures": "2.0.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "mute-stream": "0.0.7", "run-async": "2.3.0", "rx-lite": "4.0.8", @@ -6896,7 +6896,7 @@ "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", "dev": true, "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } } } @@ -7249,7 +7249,7 @@ "graceful-fs": "4.1.11", "http-proxy": "1.17.0", "isbinaryfile": "3.0.2", - "lodash": "4.17.10", + "lodash": "4.17.11", "log4js": "2.11.0", "mime": "1.6.0", "minimatch": "3.0.4", @@ -7484,9 +7484,9 @@ } }, "lodash": { - "version": "4.17.10", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz", - "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==" + "version": "4.17.11", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz", + "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==" }, "lodash.assign": { "version": "4.2.0", @@ -7847,7 +7847,7 @@ "dev": true, "optional": true, "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "proxy-agent": { @@ -10490,7 +10490,7 @@ "optional": true, "requires": { "extend": "3.0.2", - "lodash": "4.17.10", + "lodash": "4.17.11", "request": "2.87.0", "when": "3.7.8" }, @@ -10673,7 +10673,7 @@ "optional": true, "requires": { "glob": "7.1.2", - "lodash": "4.17.10", + "lodash": "4.17.11", "scss-tokenizer": "0.2.3", "yargs": "7.1.0" }, @@ -11345,7 +11345,7 @@ "debug": "3.1.0", "hasbin": "1.2.3", "inquirer": "3.3.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "needle": "2.2.1", "opn": "5.3.0", "os-name": "2.0.1", @@ -11434,7 +11434,7 @@ "requires": { "debug": "3.1.0", "es6-promise": "4.2.4", - "lodash": "4.17.10", + "lodash": "4.17.11", "xml2js": "0.4.19", "zip": "1.2.0" } @@ -11445,7 +11445,7 @@ "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", "requires": { "debug": "3.1.0", - "lodash": "4.17.10", + "lodash": "4.17.11", "path": "0.12.7" } }, @@ -11879,7 +11879,7 @@ "integrity": "sha1-LFlJtTHgf4eojm6k3PrFOqjHWis=", "dev": true, "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "statuses": { @@ -13173,7 +13173,7 @@ "integrity": "sha512-zxwAIGK7nKdu5CIZL0BjTQoq3elV0t0MfB7rUC1zj668geid52abs6hN/ACwZdK6LeMS8dC9B6WmtF978zH5mg==", "dev": true, "requires": { - "lodash": "4.17.10" + "lodash": "4.17.11" } }, "webpack-sources": { diff --git a/package.json b/package.json index e13396fb..c1176900 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,8 @@ "rxjs": "^6.4.0", "zone.js": "^0.8.29", "snyk": "^1.85.0", - "bignumber.js": "^7.2.1" + "bignumber.js": "^7.2.1", + "lodash": "^4.17.11" }, "devDependencies": { "@angular/cli": "^7.3.5", From aae837b1e07c9b14d2dd2ced9461a5f4bd49da03 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Thu, 14 Mar 2019 22:32:04 -0400 Subject: [PATCH 05/15] Update additional dependencies --- package-lock.json | 8583 ++++++++++++++++++++------------------------- package.json | 22 +- 2 files changed, 3862 insertions(+), 4743 deletions(-) diff --git a/package-lock.json b/package-lock.json index 84de6527..8b60113a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5,197 +5,235 @@ "requires": true, "dependencies": { "@angular-devkit/architect": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.6.8.tgz", - "integrity": "sha512-ZKTm/zC61iY9IBHOEAKoMSzZpvhkmv+1O/HHzpHEuR551jCzu6vSyCmMY9Z7GBcccscCV+hjeSMwgFrFRcqlkw==", + "version": "0.13.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.13.6.tgz", + "integrity": "sha512-Cg9z4lmCvjt5uD00E/0tBRz3ESjYicmqT3NL/BIsNVNb+s1GwCCoPSOIM8Ss4nyGDtrdono1XKSOmkJnlzF3Cw==", "dev": true, "requires": { - "@angular-devkit/core": "0.6.8", - "rxjs": "6.2.2" + "@angular-devkit/core": "7.3.6", + "rxjs": "6.3.3" }, "dependencies": { "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } } } }, "@angular-devkit/build-angular": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.6.8.tgz", - "integrity": "sha512-VGqYAk8jpISraz2UHfsDre270NOUmV0CTSZw2p9sm5g/XIr5m+IHetFZz3gpoAr9+If2aFTs8Rt3sGdCRzwBqA==", - "dev": true, - "requires": { - "@angular-devkit/architect": "0.6.8", - "@angular-devkit/build-optimizer": "0.6.8", - "@angular-devkit/core": "0.6.8", - "@ngtools/webpack": "6.0.8", - "ajv": "6.4.0", - "autoprefixer": "8.6.5", - "cache-loader": "1.2.2", - "chalk": "2.2.2", + "version": "0.13.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-0.13.6.tgz", + "integrity": "sha512-gdP856Z5tuQ69mJla5VPKm/uR86dcrPWYW41Jyu5oIhL2GAQ4JtDEuL2+ppwQO8i8hsXGIAbulGAbrlvU5I8OA==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.13.6", + "@angular-devkit/build-optimizer": "0.13.6", + "@angular-devkit/build-webpack": "0.13.6", + "@angular-devkit/core": "7.3.6", + "@ngtools/webpack": "7.3.6", + "ajv": "6.9.1", + "autoprefixer": "9.4.6", "circular-dependency-plugin": "5.0.2", - "clean-css": "4.1.11", - "copy-webpack-plugin": "4.5.2", - "file-loader": "1.1.11", - "glob": "7.1.2", - "html-webpack-plugin": "3.2.0", - "istanbul": "0.4.5", + "clean-css": "4.2.1", + "copy-webpack-plugin": "4.6.0", + "file-loader": "3.0.1", + "glob": "7.1.3", "istanbul-instrumenter-loader": "3.0.1", "karma-source-map-support": "1.3.0", - "less": "3.8.0", + "less": "3.9.0", "less-loader": "4.1.0", - "license-webpack-plugin": "1.3.1", - "lodash": "4.17.11", - "memory-fs": "0.4.1", - "mini-css-extract-plugin": "0.4.1", + "license-webpack-plugin": "2.1.0", + "loader-utils": "1.2.3", + "mini-css-extract-plugin": "0.5.0", "minimatch": "3.0.4", - "node-sass": "4.9.2", - "opn": "5.3.0", + "node-sass": "4.11.0", + "opn": "5.4.0", "parse5": "4.0.0", - "portfinder": "1.0.13", - "postcss": "6.0.23", - "postcss-import": "11.1.0", - "postcss-loader": "2.1.6", - "postcss-url": "7.3.2", - "raw-loader": "0.5.1", - "resolve": "1.8.1", - "rxjs": "6.2.2", - "sass-loader": "7.0.3", - "silent-error": "1.1.0", - "source-map-support": "0.5.6", - "stats-webpack-plugin": "0.6.2", - "style-loader": "0.21.0", + "postcss": "7.0.14", + "postcss-import": "12.0.1", + "postcss-loader": "3.0.0", + "raw-loader": "1.0.0", + "rxjs": "6.3.3", + "sass-loader": "7.1.0", + "semver": "5.6.0", + "source-map-loader": "0.2.4", + "source-map-support": "0.5.10", + "speed-measure-webpack-plugin": "1.3.0", + "stats-webpack-plugin": "0.7.0", + "style-loader": "0.23.1", "stylus": "0.54.5", "stylus-loader": "3.0.2", - "tree-kill": "1.2.0", - "uglifyjs-webpack-plugin": "1.2.7", - "url-loader": "1.0.1", - "webpack": "4.8.3", - "webpack-dev-middleware": "3.1.3", - "webpack-dev-server": "3.1.5", - "webpack-merge": "4.1.3", - "webpack-sources": "1.1.0", - "webpack-subresource-integrity": "1.1.0-rc.4" + "terser-webpack-plugin": "1.2.2", + "tree-kill": "1.2.1", + "webpack": "4.29.0", + "webpack-dev-middleware": "3.5.1", + "webpack-dev-server": "3.1.14", + "webpack-merge": "4.2.1", + "webpack-sources": "1.3.0", + "webpack-subresource-integrity": "1.1.0-rc.6" }, "dependencies": { "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, - "chalk": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.2.2.tgz", - "integrity": "sha512-LvixLAQ4MYhbf7hgL4o5PeK32gJKvVzDRiSNIApDofQvyhl8adgG2lJVXn4+ekQoK7HL9RF8lqxwerpe0x2pCw==", + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "4.5.0" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, - "has-flag": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", - "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=", + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "opn": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.4.0.tgz", + "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", "dev": true, "requires": { - "tslib": "1.9.3" + "is-wsl": "^1.1.0" } }, - "supports-color": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.5.0.tgz", - "integrity": "sha1-vnoN5ITexcXN34s9WRJQRJEvY1s=", + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "has-flag": "2.0.0" + "tslib": "^1.9.0" } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true } } }, "@angular-devkit/build-optimizer": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.6.8.tgz", - "integrity": "sha512-of5syQbv3uNPp4AQkfRecfnp8AE8kvffbfYi+FFPZ6OGr7e59T1fGwk6+Zgb2qQFQg8HO2tzWI/uygtLIqmbmw==", + "version": "0.13.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-optimizer/-/build-optimizer-0.13.6.tgz", + "integrity": "sha512-/EOO0wxw7FIKfove4Fv/aKiKgvH0kFhRT2GOe3pW0yV2y2e1dfQdo2AqdGCfJ4rSbwsfWSGTUUFITc+9jgXFZw==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "source-map": "0.5.7", - "typescript": "2.9.2", - "webpack-sources": "1.1.0" + "loader-utils": "1.2.3", + "source-map": "0.5.6", + "typescript": "3.2.4", + "webpack-sources": "1.3.0" }, "dependencies": { "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "typescript": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.9.2.tgz", - "integrity": "sha512-Gr4p6nFNaoufRIY4NMdpQRNmgxVIGMs4Fcu/ujdYk3nAZqk7supzBE9idmvfZIlH/Cuj//dvi+019qEue9lV0w==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.6.tgz", + "integrity": "sha1-dc449SvwczxafwwRjYEzSiu19BI=", "dev": true } } }, + "@angular-devkit/build-webpack": { + "version": "0.13.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.13.6.tgz", + "integrity": "sha512-lQmYrhOHeBn/r7uw+FfpJUq9puApYe72+mrIfg/UtLwSEYt58n5d156jnuMcfWnCyhYUgYqLTaOUfSM0RV7akw==", + "dev": true, + "requires": { + "@angular-devkit/architect": "0.13.6", + "@angular-devkit/core": "7.3.6", + "rxjs": "6.3.3" + }, + "dependencies": { + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } + } + }, "@angular-devkit/core": { - "version": "0.6.8", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-0.6.8.tgz", - "integrity": "sha512-rkIa1OSVWTt4g9leLSK/PsqOj3HZbDKHbZjqlslyfVa3AyCeiumFoOgViOVXlYgPX3HHDbE5uH24nyUWSD8uww==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-7.3.6.tgz", + "integrity": "sha512-aoarMK0DJIdwjVA0OuQIN7b8nKPcF9n5vSMF7MFmhKpTw5/uV3SynQZbm3YCgylu/2CMuiTzKuAunnWWdli//g==", "dev": true, "requires": { - "ajv": "6.4.0", + "ajv": "6.9.1", "chokidar": "2.0.4", - "rxjs": "6.2.2", - "source-map": "0.5.7" + "fast-json-stable-stringify": "2.0.0", + "rxjs": "6.3.3", + "source-map": "0.7.3" }, "dependencies": { "ajv": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.4.0.tgz", - "integrity": "sha1-06/3jpJ3VJdx2vAWTP9ISCt1T8Y=", + "version": "6.9.1", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.9.1.tgz", + "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1", - "uri-js": "3.0.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true + }, "rxjs": { - "version": "6.2.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.2.2.tgz", - "integrity": "sha512-0MI8+mkKAXZUF9vMrEoPnaoHkfzBPP4IGwUYRJhIRJF6/w3uByO1e91bEHn8zd43RdkTMKiooYKmwz7RH6zfOQ==", + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", "dev": true } } @@ -229,10 +267,10 @@ "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "fast-deep-equal": { @@ -259,7 +297,7 @@ "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "source-map": { @@ -274,7 +312,7 @@ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "punycode": "^2.1.0" } } } @@ -284,7 +322,7 @@ "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-7.2.9.tgz", "integrity": "sha512-cdIf/UWwhNlw6Ep3pRxRk12F8q/GyTbcHDF4qbgg7lZEDPYS32KS1lpHY1pgSuSOIPZUT+iLPOxAZ6cu7Am1vA==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/cli": { @@ -337,10 +375,10 @@ "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "ansi-regex": { @@ -361,9 +399,9 @@ "integrity": "sha512-bn71H9+qWoOQKyZDo25mOMVpSmXROAsTJVVVYzrrtol3d4y+AsKjf4Iwl2Q+IuT0kFSQ1qo166UuIwqYq7mGnA==", "dev": true, "requires": { - "chardet": "0.7.0", - "iconv-lite": "0.4.24", - "tmp": "0.0.33" + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" } }, "fast-deep-equal": { @@ -378,7 +416,7 @@ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", "dev": true, "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "inquirer": { @@ -387,19 +425,19 @@ "integrity": "sha512-088kl3DRT2dLU5riVMKKr1DlImd6X7smDhpXUCkJDCKvTEJeRiXh0G132HG9u5a+6Ylw9plFRY7RuTnwohYSpg==", "dev": true, "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.4.1", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "3.0.3", - "figures": "2.0.0", - "lodash": "4.17.11", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.0", + "figures": "^2.0.0", + "lodash": "^4.17.10", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rxjs": "6.3.3", - "string-width": "2.1.1", - "strip-ansi": "5.1.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rxjs": "^6.1.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.0.0", + "through": "^2.3.6" } }, "json-schema-traverse": { @@ -414,7 +452,7 @@ "integrity": "sha512-YF9MNdVy/0qvJvDtunAOzFw9iasOQHpVthTCvGzxt61Il64AYSGdK+rYwld7NAfk9qJ7dt+hymBNSc9LNYS+Sw==", "dev": true, "requires": { - "is-wsl": "1.1.0" + "is-wsl": "^1.1.0" } }, "punycode": { @@ -429,7 +467,7 @@ "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "semver": { @@ -450,7 +488,7 @@ "integrity": "sha512-TjxrkPONqO2Z8QDCpeE2j6n0M6EwxzyDgzEeGp+FbdvaJAt//ClYi6W5my+3ROlC/hZX2KACUwDfK49Ka5eDvg==", "dev": true, "requires": { - "ansi-regex": "4.1.0" + "ansi-regex": "^4.1.0" } }, "symbol-observable": { @@ -465,7 +503,7 @@ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "punycode": "^2.1.0" } } } @@ -475,7 +513,7 @@ "resolved": "https://registry.npmjs.org/@angular/common/-/common-7.2.9.tgz", "integrity": "sha512-SBIinZi/R0mKWjbKvcBhwRpAVIY/7/AnzIEkMb5JnGExersYhDD02otW3ZwPStpl7HrhgWk8ueWnxVFFXRz5gA==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/compiler": { @@ -483,7 +521,7 @@ "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-7.2.9.tgz", "integrity": "sha512-jAKV4C5BW2pnke10fiDZNbLCQOs2QK37mUJWe5jnZqCAM4Y3edXlfifOkbi0hvA4WJMDXKmUdydY6Xo/Z+cWbA==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/compiler-cli": { @@ -493,15 +531,15 @@ "dev": true, "requires": { "canonical-path": "1.0.0", - "chokidar": "2.1.2", - "convert-source-map": "1.5.1", - "dependency-graph": "0.7.2", - "magic-string": "0.25.2", - "minimist": "1.2.0", - "reflect-metadata": "0.1.13", - "shelljs": "0.8.3", - "source-map": "0.6.1", - "tslib": "1.9.3", + "chokidar": "^2.1.1", + "convert-source-map": "^1.5.1", + "dependency-graph": "^0.7.2", + "magic-string": "^0.25.0", + "minimist": "^1.2.0", + "reflect-metadata": "^0.1.2", + "shelljs": "^0.8.1", + "source-map": "^0.6.1", + "tslib": "^1.9.0", "yargs": "9.0.1" }, "dependencies": { @@ -517,18 +555,18 @@ "integrity": "sha512-IwXUx0FXc5ibYmPC2XeEj5mpXoV66sR+t3jqu2NS2GYwCktt3KF1/Qqjws/NkegajBA4RbZ5+DDwlOiJsxDHEg==", "dev": true, "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.2", - "fsevents": "1.2.7", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "normalize-path": "3.0.0", - "path-is-absolute": "1.0.1", - "readdirp": "2.2.1", - "upath": "1.1.0" + "anymatch": "^2.0.0", + "async-each": "^1.0.1", + "braces": "^2.3.2", + "fsevents": "^1.2.7", + "glob-parent": "^3.1.0", + "inherits": "^2.0.3", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "normalize-path": "^3.0.0", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.2.1", + "upath": "^1.1.0" } }, "fsevents": { @@ -538,8 +576,8 @@ "dev": true, "optional": true, "requires": { - "nan": "2.10.0", - "node-pre-gyp": "0.10.3" + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" }, "dependencies": { "abbrev": { @@ -551,7 +589,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -565,21 +604,23 @@ "dev": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -592,17 +633,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -643,7 +687,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.3.5" + "minipass": "^2.2.1" } }, "fs.realpath": { @@ -658,14 +702,14 @@ "dev": true, "optional": true, "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.3" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { @@ -674,12 +718,12 @@ "dev": true, "optional": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-unicode": { @@ -694,7 +738,7 @@ "dev": true, "optional": true, "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "ignore-walk": { @@ -703,7 +747,7 @@ "dev": true, "optional": true, "requires": { - "minimatch": "3.0.4" + "minimatch": "^3.0.4" } }, "inflight": { @@ -712,14 +756,15 @@ "dev": true, "optional": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -731,8 +776,9 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "isarray": { @@ -745,22 +791,25 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.3.5", "bundled": true, "dev": true, + "optional": true, "requires": { - "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" } }, "minizlib": { @@ -769,13 +818,14 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.3.5" + "minipass": "^2.2.1" } }, "mkdirp": { "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -792,9 +842,9 @@ "dev": true, "optional": true, "requires": { - "debug": "2.6.9", - "iconv-lite": "0.4.24", - "sax": "1.2.4" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" } }, "node-pre-gyp": { @@ -803,16 +853,16 @@ "dev": true, "optional": true, "requires": { - "detect-libc": "1.0.3", - "mkdirp": "0.5.1", - "needle": "2.2.4", - "nopt": "4.0.1", - "npm-packlist": "1.2.0", - "npmlog": "4.1.2", - "rc": "1.2.8", - "rimraf": "2.6.3", - "semver": "5.6.0", - "tar": "4.4.8" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.1", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.2.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, "nopt": { @@ -821,8 +871,8 @@ "dev": true, "optional": true, "requires": { - "abbrev": "1.1.1", - "osenv": "0.1.5" + "abbrev": "1", + "osenv": "^0.1.4" } }, "npm-bundled": { @@ -837,8 +887,8 @@ "dev": true, "optional": true, "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.5" + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npmlog": { @@ -847,16 +897,17 @@ "dev": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.5", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -868,8 +919,9 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-homedir": { @@ -890,8 +942,8 @@ "dev": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "path-is-absolute": { @@ -912,10 +964,10 @@ "dev": true, "optional": true, "requires": { - "deep-extend": "0.6.0", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -932,13 +984,13 @@ "dev": true, "optional": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.2", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "rimraf": { @@ -947,13 +999,14 @@ "dev": true, "optional": true, "requires": { - "glob": "7.1.3" + "glob": "^7.1.3" } }, "safe-buffer": { "version": "5.1.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -989,10 +1042,11 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "string_decoder": { @@ -1001,15 +1055,16 @@ "dev": true, "optional": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-json-comments": { @@ -1024,13 +1079,13 @@ "dev": true, "optional": true, "requires": { - "chownr": "1.1.1", - "fs-minipass": "1.2.5", - "minipass": "2.3.5", - "minizlib": "1.2.1", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" } }, "util-deprecate": { @@ -1045,18 +1100,20 @@ "dev": true, "optional": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2 || 2" } }, "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -1066,10 +1123,10 @@ "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "strip-bom": "3.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "strip-bom": "^3.0.0" } }, "minimist": { @@ -1090,9 +1147,9 @@ "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", "dev": true, "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "execa": "^0.7.0", + "lcid": "^1.0.0", + "mem": "^1.1.0" } }, "path-type": { @@ -1101,7 +1158,7 @@ "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", "dev": true, "requires": { - "pify": "2.3.0" + "pify": "^2.0.0" } }, "pify": { @@ -1116,9 +1173,9 @@ "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, "requires": { - "load-json-file": "2.0.0", - "normalize-package-data": "2.4.0", - "path-type": "2.0.0" + "load-json-file": "^2.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^2.0.0" } }, "read-pkg-up": { @@ -1127,8 +1184,8 @@ "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", "dev": true, "requires": { - "find-up": "2.1.0", - "read-pkg": "2.0.0" + "find-up": "^2.0.0", + "read-pkg": "^2.0.0" } }, "readdirp": { @@ -1137,9 +1194,9 @@ "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "micromatch": "3.1.10", - "readable-stream": "2.3.6" + "graceful-fs": "^4.1.11", + "micromatch": "^3.1.10", + "readable-stream": "^2.0.2" } }, "strip-bom": { @@ -1160,19 +1217,19 @@ "integrity": "sha1-UqzCP+7Kw0BCB47njAwAf1CF20w=", "dev": true, "requires": { - "camelcase": "4.1.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.3", - "os-locale": "2.1.0", - "read-pkg-up": "2.0.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "7.0.0" + "camelcase": "^4.1.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^2.0.0", + "read-pkg-up": "^2.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^7.0.0" } }, "yargs-parser": { @@ -1181,7 +1238,7 @@ "integrity": "sha1-jQrELxbqVd69MyyvTEA4s+P139k=", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } @@ -1191,7 +1248,7 @@ "resolved": "https://registry.npmjs.org/@angular/core/-/core-7.2.9.tgz", "integrity": "sha512-tW1jHjCnvtquJ3XEnmqRNMoV7MXAZ2yfnCXE25+odRZjNVMiTcKWvRLd/XjBzjCg2OvwREXcQpB7/s+Av10uAQ==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/forms": { @@ -1199,7 +1256,7 @@ "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-7.2.9.tgz", "integrity": "sha512-2hpu2Gl8suwG5FmOczk/oBBE1x7QypM58XE1ms0V6uYlL+g/JIg0AWMMOldI5KYUnxwoCikgsdGzzt8XPbvRkQ==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/language-service": { @@ -1213,7 +1270,7 @@ "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-7.2.9.tgz", "integrity": "sha512-h7RaXllauFLa1SPcje/cK7IbwCqV6ViyeHEUAAWljrM2OWRU1zRYtDk/gcphRj4tWhhHVfQsJ9+0p3NoPP5LZw==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/platform-browser-dynamic": { @@ -1221,7 +1278,7 @@ "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-7.2.9.tgz", "integrity": "sha512-QJQ1NmzaX2nAX9u6vkc/cZSBEqio/YQojaZqlbRyAn391rpzb9cGVvqYzUU9DqCeXbxKgA1xbmLiNMQ/M7xMHg==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@angular/router": { @@ -1229,18 +1286,191 @@ "resolved": "https://registry.npmjs.org/@angular/router/-/router-7.2.9.tgz", "integrity": "sha512-vNk2x6i1iLNQM1KYnRhbC2DJQvNmlu9lVGzcZzRiS7zDT5DFvbiYA1M7ixUlbehLDEGVKlJEZNIdKWErWW8xYw==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" + } + }, + "@babel/code-frame": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.0.0.tgz", + "integrity": "sha512-OfC2uemaknXr87bdLUkWog7nYuliM9Ij5HUcajsVcMCpQrcLmtxRbVFTIqmcSkSeYRBFBRxs2FiUqFJDLdiebA==", + "dev": true, + "requires": { + "@babel/highlight": "^7.0.0" + } + }, + "@babel/generator": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.3.4.tgz", + "integrity": "sha512-8EXhHRFqlVVWXPezBW5keTiQi/rJMQTg/Y9uVCEZ0CAF3PKtCCaVRnp64Ii1ujhkoDhhF1fVsImoN4yJ2uz4Wg==", + "dev": true, + "requires": { + "@babel/types": "^7.3.4", + "jsesc": "^2.5.1", + "lodash": "^4.17.11", + "source-map": "^0.5.0", + "trim-right": "^1.0.1" + }, + "dependencies": { + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", + "dev": true + }, + "source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "dev": true + } + } + }, + "@babel/helper-function-name": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.1.0.tgz", + "integrity": "sha512-A95XEoCpb3TO+KZzJ4S/5uW5fNe26DjBGqf1o9ucyLyCmi1dXq/B3c8iaWTfBk3VvetUxl16e8tIrd5teOCfGw==", + "dev": true, + "requires": { + "@babel/helper-get-function-arity": "^7.0.0", + "@babel/template": "^7.1.0", + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-get-function-arity": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.0.0.tgz", + "integrity": "sha512-r2DbJeg4svYvt3HOS74U4eWKsUAMRH01Z1ds1zx8KNTPtpTL5JAsdFv8BNyOpVqdFhHkkRDIg5B4AsxmkjAlmQ==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/helper-split-export-declaration": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.0.0.tgz", + "integrity": "sha512-MXkOJqva62dfC0w85mEf/LucPPS/1+04nmmRMPEBUB++hiiThQ2zPtX/mEWQ3mtzCEjIJvPY8nuwxXtQeQwUag==", + "dev": true, + "requires": { + "@babel/types": "^7.0.0" + } + }, + "@babel/highlight": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.0.0.tgz", + "integrity": "sha512-UFMC4ZeFC48Tpvj7C8UgLvtkaUuovQX+5xNWrsIoMG8o2z+XFKjKaN9iVmS84dPwVN00W4wPmqvYoZF3EGAsfw==", + "dev": true, + "requires": { + "chalk": "^2.0.0", + "esutils": "^2.0.2", + "js-tokens": "^4.0.0" + }, + "dependencies": { + "js-tokens": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", + "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", + "dev": true + } + } + }, + "@babel/parser": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.3.4.tgz", + "integrity": "sha512-tXZCqWtlOOP4wgCp6RjRvLmfuhnqTLy9VHwRochJBCP2nDm27JnnuFEnXFASVyQNHk36jD1tAammsCEEqgscIQ==", + "dev": true + }, + "@babel/template": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.2.2.tgz", + "integrity": "sha512-zRL0IMM02AUDwghf5LMSSDEz7sBCO2YnNmpg3uWTZj/v1rcG2BmQUvaGU8GhU8BvfMh1k2KIAYZ7Ji9KXPUg7g==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/parser": "^7.2.2", + "@babel/types": "^7.2.2" + } + }, + "@babel/traverse": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.3.4.tgz", + "integrity": "sha512-TvTHKp6471OYEcE/91uWmhR6PrrYywQntCHSaZ8CM8Vmp+pjAusal4nGB2WCCQd0rvI7nOMKn9GnbcvTUz3/ZQ==", + "dev": true, + "requires": { + "@babel/code-frame": "^7.0.0", + "@babel/generator": "^7.3.4", + "@babel/helper-function-name": "^7.1.0", + "@babel/helper-split-export-declaration": "^7.0.0", + "@babel/parser": "^7.3.4", + "@babel/types": "^7.3.4", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.11" + }, + "dependencies": { + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "globals": { + "version": "11.11.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-11.11.0.tgz", + "integrity": "sha512-WHq43gS+6ufNOEqlrDBxVEbb8ntfXrfAUU2ZOpCxrBdGKW3gyv8mCxAfIBD0DroPKGrJ2eSsXsLtY9MPntsyTw==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + } + } + }, + "@babel/types": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.3.4.tgz", + "integrity": "sha512-WEkp8MsLftM7O/ty580wAmZzN1nDmCACc5+jFzUt+GUFNNIi3LdRlueYz0YIlmJhlZx1QYDMZL5vdWCL0fNjFQ==", + "dev": true, + "requires": { + "esutils": "^2.0.2", + "lodash": "^4.17.11", + "to-fast-properties": "^2.0.0" + }, + "dependencies": { + "to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=", + "dev": true + } } }, "@ngtools/webpack": { - "version": "6.0.8", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-6.0.8.tgz", - "integrity": "sha512-jorGpTd82ILbyUwg4JQekovHFaYwSMlZan4f7x+sd3+2WgyL3Z1+ZbVSGKvXZWKS/mAVx7eLkRikzJkuC4FgHw==", + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-7.3.6.tgz", + "integrity": "sha512-gDMHybwe8B+1BSvtwM5z4qAkUnZ9b4PTyIVWWECgTLDp2x3WhJi2rMk2X8HTkpbZ52pLPue5GL1sfqlZIOcX7Q==", "dev": true, "requires": { - "@angular-devkit/core": "0.6.8", - "tree-kill": "1.2.0", - "webpack-sources": "1.1.0" + "@angular-devkit/core": "7.3.6", + "enhanced-resolve": "4.1.0", + "rxjs": "6.3.3", + "tree-kill": "1.2.1", + "webpack-sources": "1.3.0" + }, + "dependencies": { + "rxjs": { + "version": "6.3.3", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.3.3.tgz", + "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } + } } }, "@ngx-translate/core": { @@ -1248,7 +1478,7 @@ "resolved": "https://registry.npmjs.org/@ngx-translate/core/-/core-11.0.1.tgz", "integrity": "sha512-nBCa1ZD9fAUY/3eskP3Lql2fNg8OMrYIej1/5GRsfcutx9tG/5fZLCv9m6UCw1aS+u4uK/vXjv1ctG/FdMvaWg==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@ngx-translate/http-loader": { @@ -1256,7 +1486,7 @@ "resolved": "https://registry.npmjs.org/@ngx-translate/http-loader/-/http-loader-4.0.0.tgz", "integrity": "sha512-x8LumqydWD7eX9yQTAVeoCM9gFUIGVTUjZqbxdAUavAA3qVnk9wCQux7iHLPXpydl8vyQmLoPQR+fFU+DUDOMA==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "@schematics/angular": { @@ -1289,10 +1519,10 @@ "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "fast-deep-equal": { @@ -1319,7 +1549,7 @@ "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "source-map": { @@ -1340,7 +1570,7 @@ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "punycode": "^2.1.0" } } } @@ -1380,10 +1610,10 @@ "integrity": "sha512-XDN92U311aINL77ieWHmqCcNlwjoP5cHXDxIxbf2MaPYuCXOHS7gHH8jktxeK5omgd52XbSTX6a4Piwd1pQmzA==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "fast-deep-equal": { @@ -1410,7 +1640,7 @@ "integrity": "sha512-JTWmoY9tWCs7zvIk/CvRjhjGaOd+OVBM987mxFo+OW66cGpdKjZcpmc74ES1sB//7Kl/PAe8+wEakuhG4pcgOw==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "semver": { @@ -1431,15 +1661,15 @@ "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "punycode": "^2.1.0" } } } }, "@types/jasmine": { - "version": "2.5.54", - "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.5.54.tgz", - "integrity": "sha512-B9YofFbUljs19g5gBKUYeLIulsh31U5AK70F41BImQRHEZQGm4GcN922UvnYwkduMqbC/NH+9fruWa/zrqvHIg==", + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.16.tgz", + "integrity": "sha512-056oRlBBp7MDzr+HoU5su099s/s7wjZ3KcHxLfv+Byqb9MwdLUvsfLgw1VS97hsh3ddxSPyQu+olHMnoVTUY6g==", "dev": true }, "@types/jasminewd2": { @@ -1448,13 +1678,13 @@ "integrity": "sha512-hYDVmQZT5VA2kigd4H4bv7vl/OhlympwREUemqBdOqtrYTo5Ytm12a5W5/nGgGYdanGVxj0x/VhZ7J3hOg/YKg==", "dev": true, "requires": { - "@types/jasmine": "2.5.54" + "@types/jasmine": "*" } }, "@types/node": { - "version": "6.0.114", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.114.tgz", - "integrity": "sha512-5ViC9dwf1VIAtrOFTvOuN04lJgw28eKjuy0Vg2Bd/fSlxKP2feCSkIw04ZgOENL2ywdWrtbkthp1XVLEjJmouw==", + "version": "8.9.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.9.5.tgz", + "integrity": "sha512-jRHfWsvyMtXdbhnz5CVHxaBgnV6duZnPlQuRSo/dm/GnmikNcmZhxIES4E9OZjUmQ8C+HCl4KJux+cXN/ErGDQ==", "dev": true }, "@types/q": { @@ -1469,218 +1699,206 @@ "integrity": "sha512-hYn+eoOehVUIdMwp5h34ZsGAO1ydja10GDup4BwyoFCdcH5MQ35nQq+AInSaBMEMopD5hEooFCyKo2Pajbe1ag==", "dev": true }, + "@types/source-list-map": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz", + "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==", + "dev": true + }, + "@types/webpack-sources": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-0.1.5.tgz", + "integrity": "sha512-zfvjpp7jiafSmrzJ2/i3LqOyTYTuJ7u1KOXlKgDlvsj9Rr0x7ZiYu5lZbXwobL7lmsRNtPXlBfmaUD8eU2Hu8w==", + "dev": true, + "requires": { + "@types/node": "*", + "@types/source-list-map": "*", + "source-map": "^0.6.1" + } + }, "@webassemblyjs/ast": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.4.3.tgz", - "integrity": "sha512-S6npYhPcTHDYe9nlsKa9CyWByFi8Vj8HovcAgtmMAQZUOczOZbQ8CnwMYKYC5HEZzxEE+oY0jfQk4cVlI3J59Q==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.7.11.tgz", + "integrity": "sha512-ZEzy4vjvTzScC+SH8RBssQUawpaInUdMTYwYYLh54/s8TuT0gBLuyUnppKsVyZEi876VmmStKsUs28UxPgdvrA==", "dev": true, "requires": { - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "debug": "3.1.0", - "webassemblyjs": "1.4.3" + "@webassemblyjs/helper-module-context": "1.7.11", + "@webassemblyjs/helper-wasm-bytecode": "1.7.11", + "@webassemblyjs/wast-parser": "1.7.11" } }, "@webassemblyjs/floating-point-hex-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.4.3.tgz", - "integrity": "sha512-3zTkSFswwZOPNHnzkP9ONq4bjJSeKVMcuahGXubrlLmZP8fmTIJ58dW7h/zOVWiFSuG2em3/HH3BlCN7wyu9Rw==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.7.11.tgz", + "integrity": "sha512-zY8dSNyYcgzNRNT666/zOoAyImshm3ycKdoLsyDw/Bwo6+/uktb7p4xyApuef1dwEBo/U/SYQzbGBvV+nru2Xg==", + "dev": true + }, + "@webassemblyjs/helper-api-error": { + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.7.11.tgz", + "integrity": "sha512-7r1qXLmiglC+wPNkGuXCvkmalyEstKVwcueZRP2GNC2PAvxbLYwLLPr14rcdJaE4UtHxQKfFkuDFuv91ipqvXg==", "dev": true }, "@webassemblyjs/helper-buffer": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.4.3.tgz", - "integrity": "sha512-e8+KZHh+RV8MUvoSRtuT1sFXskFnWG9vbDy47Oa166xX+l0dD5sERJ21g5/tcH8Yo95e9IN3u7Jc3NbhnUcSkw==", - "dev": true, - "requires": { - "debug": "3.1.0" - } + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.7.11.tgz", + "integrity": "sha512-MynuervdylPPh3ix+mKZloTcL06P8tenNH3sx6s0qE8SLR6DdwnfgA7Hc9NSYeob2jrW5Vql6GVlsQzKQCa13w==", + "dev": true }, "@webassemblyjs/helper-code-frame": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.4.3.tgz", - "integrity": "sha512-9FgHEtNsZQYaKrGCtsjswBil48Qp1agrzRcPzCbQloCoaTbOXLJ9IRmqT+uEZbenpULLRNFugz3I4uw18hJM8w==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.7.11.tgz", + "integrity": "sha512-T8ESC9KMXFTXA5urJcyor5cn6qWeZ4/zLPyWeEXZ03hj/x9weSokGNkVCdnhSabKGYWxElSdgJ+sFa9G/RdHNw==", "dev": true, "requires": { - "@webassemblyjs/wast-printer": "1.4.3" + "@webassemblyjs/wast-printer": "1.7.11" } }, "@webassemblyjs/helper-fsm": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.4.3.tgz", - "integrity": "sha512-JINY76U+702IRf7ePukOt037RwmtH59JHvcdWbTTyHi18ixmQ+uOuNhcdCcQHTquDAH35/QgFlp3Y9KqtyJsCQ==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.7.11.tgz", + "integrity": "sha512-nsAQWNP1+8Z6tkzdYlXT0kxfa2Z1tRTARd8wYnc/e3Zv3VydVVnaeePgqUzFrpkGUyhUUxOl5ML7f1NuT+gC0A==", + "dev": true + }, + "@webassemblyjs/helper-module-context": { + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.7.11.tgz", + "integrity": "sha512-JxfD5DX8Ygq4PvXDucq0M+sbUFA7BJAv/GGl9ITovqE+idGX+J3QSzJYz+LwQmL7fC3Rs+utvWoJxDb6pmC0qg==", "dev": true }, "@webassemblyjs/helper-wasm-bytecode": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.4.3.tgz", - "integrity": "sha512-I7bS+HaO0K07Io89qhJv+z1QipTpuramGwUSDkwEaficbSvCcL92CUZEtgykfNtk5wb0CoLQwWlmXTwGbNZUeQ==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.7.11.tgz", + "integrity": "sha512-cMXeVS9rhoXsI9LLL4tJxBgVD/KMOKXuFqYb5oCJ/opScWpkCMEz9EJtkonaNcnLv2R3K5jIeS4TRj/drde1JQ==", "dev": true }, "@webassemblyjs/helper-wasm-section": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.4.3.tgz", - "integrity": "sha512-p0yeeO/h2r30PyjnJX9xXSR6EDcvJd/jC6xa/Pxg4lpfcNi7JUswOpqDToZQ55HMMVhXDih/yqkaywHWGLxqyQ==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.7.11.tgz", + "integrity": "sha512-8ZRY5iZbZdtNFE5UFunB8mmBEAbSI3guwbrsCl4fWdfRiAcvqQpeqd5KHhSWLL5wuxo53zcaGZDBU64qgn4I4Q==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "debug": "3.1.0" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-buffer": "1.7.11", + "@webassemblyjs/helper-wasm-bytecode": "1.7.11", + "@webassemblyjs/wasm-gen": "1.7.11" } }, - "@webassemblyjs/leb128": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.4.3.tgz", - "integrity": "sha512-4u0LJLSPzuRDWHwdqsrThYn+WqMFVqbI2ltNrHvZZkzFPO8XOZ0HFQ5eVc4jY/TNHgXcnwrHjONhPGYuuf//KQ==", + "@webassemblyjs/ieee754": { + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.7.11.tgz", + "integrity": "sha512-Mmqx/cS68K1tSrvRLtaV/Lp3NZWzXtOHUW2IvDvl2sihAwJh4ACE0eL6A8FvMyDG9abes3saB6dMimLOs+HMoQ==", "dev": true, "requires": { - "leb": "0.3.0" + "@xtuc/ieee754": "^1.2.0" } }, - "@webassemblyjs/validation": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/validation/-/validation-1.4.3.tgz", - "integrity": "sha512-R+rRMKfhd9mq0rj2mhU9A9NKI2l/Rw65vIYzz4lui7eTKPcCu1l7iZNi4b9Gen8D42Sqh/KGiaQNk/x5Tn/iBQ==", + "@webassemblyjs/leb128": { + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.7.11.tgz", + "integrity": "sha512-vuGmgZjjp3zjcerQg+JA+tGOncOnJLWVkt8Aze5eWQLwTQGNgVLcyOTqgSCxWTR4J42ijHbBxnuRaL1Rv7XMdw==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3" + "@xtuc/long": "4.2.1" } }, + "@webassemblyjs/utf8": { + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.7.11.tgz", + "integrity": "sha512-C6GFkc7aErQIAH+BMrIdVSmW+6HSe20wg57HEC1uqJP8E/xpMjXqQUxkQw07MhNDSDcGpxI9G5JSNOQCqJk4sA==", + "dev": true + }, "@webassemblyjs/wasm-edit": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.4.3.tgz", - "integrity": "sha512-qzuwUn771PV6/LilqkXcS0ozJYAeY/OKbXIWU3a8gexuqb6De2p4ya/baBeH5JQ2WJdfhWhSvSbu86Vienttpw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/helper-wasm-section": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "@webassemblyjs/wasm-opt": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "@webassemblyjs/wast-printer": "1.4.3", - "debug": "3.1.0" + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.7.11.tgz", + "integrity": "sha512-FUd97guNGsCZQgeTPKdgxJhBXkUbMTY6hFPf2Y4OedXd48H97J+sOY2Ltaq6WGVpIH8o/TGOVNiVz/SbpEMJGg==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-buffer": "1.7.11", + "@webassemblyjs/helper-wasm-bytecode": "1.7.11", + "@webassemblyjs/helper-wasm-section": "1.7.11", + "@webassemblyjs/wasm-gen": "1.7.11", + "@webassemblyjs/wasm-opt": "1.7.11", + "@webassemblyjs/wasm-parser": "1.7.11", + "@webassemblyjs/wast-printer": "1.7.11" } }, "@webassemblyjs/wasm-gen": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.4.3.tgz", - "integrity": "sha512-eR394T8dHZfpLJ7U/Z5pFSvxl1L63JdREebpv9gYc55zLhzzdJPAuxjBYT4XqevUdW67qU2s0nNA3kBuNJHbaQ==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.7.11.tgz", + "integrity": "sha512-U/KDYp7fgAZX5KPfq4NOupK/BmhDc5Kjy2GIqstMhvvdJRcER/kUsMThpWeRP8BMn4LXaKhSTggIJPOeYHwISA==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/leb128": "1.4.3" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-wasm-bytecode": "1.7.11", + "@webassemblyjs/ieee754": "1.7.11", + "@webassemblyjs/leb128": "1.7.11", + "@webassemblyjs/utf8": "1.7.11" } }, "@webassemblyjs/wasm-opt": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.4.3.tgz", - "integrity": "sha512-7Gp+nschuKiDuAL1xmp4Xz0rgEbxioFXw4nCFYEmy+ytynhBnTeGc9W9cB1XRu1w8pqRU2lbj2VBBA4cL5Z2Kw==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.7.11.tgz", + "integrity": "sha512-XynkOwQyiRidh0GLua7SkeHvAPXQV/RxsUeERILmAInZegApOUAIJfRuPYe2F7RcjOC9tW3Cb9juPvAC/sCqvg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-buffer": "1.4.3", - "@webassemblyjs/wasm-gen": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "debug": "3.1.0" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-buffer": "1.7.11", + "@webassemblyjs/wasm-gen": "1.7.11", + "@webassemblyjs/wasm-parser": "1.7.11" } }, "@webassemblyjs/wasm-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.4.3.tgz", - "integrity": "sha512-KXBjtlwA3BVukR/yWHC9GF+SCzBcgj0a7lm92kTOaa4cbjaTaa47bCjXw6cX4SGQpkncB9PU2hHGYVyyI7wFRg==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.7.11.tgz", + "integrity": "sha512-6lmXRTrrZjYD8Ng8xRyvyXQJYUQKYSXhJqXOBLw24rdiXsHAOlvw5PhesjdcaMadU/pyPQOJ5dHreMjBxwnQKg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/helper-wasm-bytecode": "1.4.3", - "@webassemblyjs/leb128": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "webassemblyjs": "1.4.3" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-api-error": "1.7.11", + "@webassemblyjs/helper-wasm-bytecode": "1.7.11", + "@webassemblyjs/ieee754": "1.7.11", + "@webassemblyjs/leb128": "1.7.11", + "@webassemblyjs/utf8": "1.7.11" } }, "@webassemblyjs/wast-parser": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.4.3.tgz", - "integrity": "sha512-QhCsQzqV0CpsEkRYyTzQDilCNUZ+5j92f+g35bHHNqS22FppNTywNFfHPq8ZWZfYCgbectc+PoghD+xfzVFh1Q==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.7.11.tgz", + "integrity": "sha512-lEyVCg2np15tS+dm7+JJTNhNWq9yTZvi3qEhAIIOaofcYlUp0UR5/tVqOwa/gXYr3gjwSZqw+/lS9dscyLelbQ==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/floating-point-hex-parser": "1.4.3", - "@webassemblyjs/helper-code-frame": "1.4.3", - "@webassemblyjs/helper-fsm": "1.4.3", - "long": "3.2.0", - "webassemblyjs": "1.4.3" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/floating-point-hex-parser": "1.7.11", + "@webassemblyjs/helper-api-error": "1.7.11", + "@webassemblyjs/helper-code-frame": "1.7.11", + "@webassemblyjs/helper-fsm": "1.7.11", + "@xtuc/long": "4.2.1" } }, "@webassemblyjs/wast-printer": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.4.3.tgz", - "integrity": "sha512-EgXk4anf8jKmuZJsqD8qy5bz2frEQhBvZruv+bqwNoLWUItjNSFygk8ywL3JTEz9KtxTlAmqTXNrdD1d9gNDtg==", + "version": "1.7.11", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.7.11.tgz", + "integrity": "sha512-m5vkAsuJ32QpkdkDOUPGSltrg8Cuk3KBx4YrmAGQwCZPRdUHXxG4phIOuuycLemHFr74sWL9Wthqss4fzdzSwg==", "dev": true, "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "long": "3.2.0" + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/wast-parser": "1.7.11", + "@xtuc/long": "4.2.1" } }, - "@webpack-contrib/schema-utils": { - "version": "1.0.0-beta.0", - "resolved": "https://registry.npmjs.org/@webpack-contrib/schema-utils/-/schema-utils-1.0.0-beta.0.tgz", - "integrity": "sha512-LonryJP+FxQQHsjGBi6W786TQB1Oym+agTpY0c+Kj8alnIw+DLUJb6SI8Y1GHGhLCH1yPRrucjObUmxNICQ1pg==", - "dev": true, - "requires": { - "ajv": "6.5.2", - "ajv-keywords": "3.2.0", - "chalk": "2.4.1", - "strip-ansi": "4.0.0", - "text-table": "0.2.0", - "webpack-log": "1.2.0" - }, - "dependencies": { - "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", - "dev": true, - "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" - } - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "2.1.1" - } - } - } + "@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", + "dev": true + }, + "@xtuc/long": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.1.tgz", + "integrity": "sha512-FZdkNBDqBRHKQ2MEbSC17xnPFOhZxeJ2YGSfr2BKf3sujG49Qe3bB+rGCwQfIaA7WHnGeGkSijX4FuBCdrzW/g==", + "dev": true }, "@yarnpkg/lockfile": { "version": "1.1.0", @@ -1694,8 +1912,8 @@ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", "dev": true, "requires": { - "jsonparse": "1.3.1", - "through": "2.3.8" + "jsonparse": "^1.2.0", + "through": ">=2.2.7 <3" } }, "abbrev": { @@ -1709,31 +1927,21 @@ "integrity": "sha1-63d99gEXI6OxTopywIBcjoZ0a9I=", "dev": true, "requires": { - "mime-types": "2.1.19", + "mime-types": "~2.1.18", "negotiator": "0.6.1" } }, "acorn": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.1.tgz", - "integrity": "sha512-d+nbxBUGKg7Arpsvbnlq61mc12ek3EY8EQldM3GPAhWJ1UVxC6TDGbIvUMNU6obBX3i1+ptCIzV4vq0gFPEGVQ==", + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.1.1.tgz", + "integrity": "sha512-jPTiwtOxaHNaAPg/dmrJ/beuzLRnXtB0kQPQ8JpotKJgTB6rX6c8mlf315941pyjBSaPg8NHXS9fhP4u17DpGA==", "dev": true }, "acorn-dynamic-import": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-3.0.0.tgz", - "integrity": "sha512-zVWV8Z8lislJoOKKqdNMOB+s6+XV5WERty8MnKBeFgwA+19XJjJHs2RP5dzM57FftIs+jQnRToLiWazKr6sSWg==", - "dev": true, - "requires": { - "acorn": "5.7.1" - } - }, - "addressparser": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/addressparser/-/addressparser-1.0.1.tgz", - "integrity": "sha1-R6++GiqSYhkdtoOOT9HTm0CCF0Y=", - "dev": true, - "optional": true + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz", + "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==", + "dev": true }, "adm-zip": { "version": "0.4.11", @@ -1752,7 +1960,7 @@ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-4.2.1.tgz", "integrity": "sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg==", "requires": { - "es6-promisify": "5.0.0" + "es6-promisify": "^5.0.0" } }, "agentkeepalive": { @@ -1761,7 +1969,7 @@ "integrity": "sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ==", "dev": true, "requires": { - "humanize-ms": "1.2.1" + "humanize-ms": "^1.2.1" } }, "ajv": { @@ -1769,28 +1977,23 @@ "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", "requires": { - "co": "4.6.0", - "fast-deep-equal": "1.1.0", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.3.1" + "co": "^4.6.0", + "fast-deep-equal": "^1.0.0", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.3.0" } }, - "ajv-keywords": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.2.0.tgz", - "integrity": "sha1-6GuBnGAs+IIa1jdBNpjx3sAhhHo=", + "ajv-errors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", + "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", "dev": true }, - "align-text": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz", - "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=", - "dev": true, - "requires": { - "kind-of": "3.2.2", - "longest": "1.0.1", - "repeat-string": "1.6.1" - } + "ajv-keywords": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.4.0.tgz", + "integrity": "sha512-aUjdRFISbuFOl0EIZc+9e4FfZp0bDZgAdOOf30bJmw8VM9v84SHyVyxDfbWxpGYbdZD/9XoKxfHVNmxPkhwyGw==", + "dev": true }, "amdefine": { "version": "1.0.1", @@ -1798,34 +2001,11 @@ "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=", "dev": true }, - "amqplib": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.5.2.tgz", - "integrity": "sha512-l9mCs6LbydtHqRniRwYkKdqxVa6XMz3Vw1fh+2gJaaVgTM6Jk3o8RccAKWKtlhT1US5sWrFh+KKxsVUALURSIA==", - "dev": true, - "optional": true, - "requires": { - "bitsyntax": "0.0.4", - "bluebird": "3.5.1", - "buffer-more-ints": "0.0.2", - "readable-stream": "1.1.14", - "safe-buffer": "5.1.2" - }, - "dependencies": { - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - } - } + "ansi-colors": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", + "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", + "dev": true }, "ansi-escapes": { "version": "3.1.0", @@ -1848,7 +2028,7 @@ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", "requires": { - "color-convert": "1.9.2" + "color-convert": "^1.9.0" } }, "ansicolors": { @@ -1862,8 +2042,8 @@ "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", "dev": true, "requires": { - "micromatch": "3.1.10", - "normalize-path": "2.1.1" + "micromatch": "^3.1.4", + "normalize-path": "^2.1.1" } }, "app-root-path": { @@ -1878,7 +2058,7 @@ "integrity": "sha512-P009oYkeHyU742iSZJzZZywj4QRJdnTWffaKuJQLablCZ1uz6/cW4yaRgcDaoQ+uwOxxnt0gRUcwfsNP2ri0gw==", "dev": true, "requires": { - "default-require-extensions": "2.0.0" + "default-require-extensions": "^2.0.0" } }, "aproba": { @@ -1897,9 +2077,10 @@ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.5.tgz", "integrity": "sha512-5hYdAkZlcG8tOLujVDTgCT+uPX0VnpAH28gWsLfzpXYm7wP6mp5Q/gYyR7YQ0cKVJcXJnl3j2kpBan13PtQf6w==", "dev": true, + "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "argparse": { @@ -1907,7 +2088,7 @@ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", "requires": { - "sprintf-js": "1.0.3" + "sprintf-js": "~1.0.2" } }, "arr-diff": { @@ -1932,28 +2113,13 @@ "version": "1.0.2", "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz", "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=", - "dev": true - }, - "array-flatten": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.1.tgz", - "integrity": "sha1-Qmu52oQJDBg42BLIFQryCoMx4pY=", - "dev": true - }, - "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", "dev": true, - "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.12.0" - } + "optional": true }, - "array-slice": { - "version": "0.2.3", - "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz", - "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=", + "array-flatten": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", + "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, "array-union": { @@ -1962,7 +2128,7 @@ "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", "dev": true, "requires": { - "array-uniq": "1.0.3" + "array-uniq": "^1.0.1" } }, "array-uniq": { @@ -2005,9 +2171,9 @@ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", "dev": true, "requires": { - "bn.js": "4.11.8", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "assert": { @@ -2088,17 +2254,17 @@ "dev": true }, "autoprefixer": { - "version": "8.6.5", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-8.6.5.tgz", - "integrity": "sha512-PLWJN3Xo/rycNkx+mp8iBDMTm3FeWe4VmYaZDSqL5QQB9sLsQkG5k8n+LNDFnhh9kdq2K+egL/icpctOmDHwig==", + "version": "9.4.6", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.4.6.tgz", + "integrity": "sha512-Yp51mevbOEdxDUy5WjiKtpQaecqYq9OqZSL04rSoCiry7Tc5I9FEyo3bfxiTJc1DfHeKwSFCUYbBAiOQ2VGfiw==", "dev": true, "requires": { - "browserslist": "3.2.8", - "caniuse-lite": "1.0.30000865", - "normalize-range": "0.1.2", - "num2fraction": "1.2.2", - "postcss": "6.0.23", - "postcss-value-parser": "3.3.0" + "browserslist": "^4.4.1", + "caniuse-lite": "^1.0.30000929", + "normalize-range": "^0.1.2", + "num2fraction": "^1.2.2", + "postcss": "^7.0.13", + "postcss-value-parser": "^3.3.1" } }, "aws-sign2": { @@ -2111,47 +2277,15 @@ "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz", "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==" }, - "axios": { - "version": "0.15.3", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.15.3.tgz", - "integrity": "sha1-LJ1jiy4ZGgjqHWzJiOrda6W9wFM=", - "dev": true, - "optional": true, - "requires": { - "follow-redirects": "1.0.0" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "optional": true, - "requires": { - "ms": "2.0.0" - } - }, - "follow-redirects": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.0.0.tgz", - "integrity": "sha1-jjQpjL0uF28lTv/sdaHHjMhJ/Tc=", - "dev": true, - "optional": true, - "requires": { - "debug": "2.6.9" - } - } - } - }, "babel-code-frame": { "version": "6.26.0", "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz", "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=", "dev": true, "requires": { - "chalk": "1.1.3", - "esutils": "2.0.2", - "js-tokens": "3.0.2" + "chalk": "^1.1.3", + "esutils": "^2.0.2", + "js-tokens": "^3.0.2" }, "dependencies": { "ansi-regex": { @@ -2172,11 +2306,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "strip-ansi": { @@ -2185,7 +2319,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -2202,14 +2336,14 @@ "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", "dev": true, "requires": { - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "detect-indent": "4.0.0", - "jsesc": "1.3.0", - "lodash": "4.17.11", - "source-map": "0.5.7", - "trim-right": "1.0.1" + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "detect-indent": "^4.0.0", + "jsesc": "^1.3.0", + "lodash": "^4.17.4", + "source-map": "^0.5.7", + "trim-right": "^1.0.1" }, "dependencies": { "source-map": { @@ -2226,7 +2360,7 @@ "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", "dev": true, "requires": { - "babel-runtime": "6.26.0" + "babel-runtime": "^6.22.0" } }, "babel-runtime": { @@ -2235,8 +2369,8 @@ "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", "dev": true, "requires": { - "core-js": "2.5.7", - "regenerator-runtime": "0.11.1" + "core-js": "^2.4.0", + "regenerator-runtime": "^0.11.0" } }, "babel-template": { @@ -2245,11 +2379,11 @@ "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "lodash": "4.17.11" + "babel-runtime": "^6.26.0", + "babel-traverse": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "lodash": "^4.17.4" } }, "babel-traverse": { @@ -2258,15 +2392,15 @@ "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "babel-messages": "6.23.0", - "babel-runtime": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "debug": "2.6.9", - "globals": "9.18.0", - "invariant": "2.2.4", - "lodash": "4.17.11" + "babel-code-frame": "^6.26.0", + "babel-messages": "^6.23.0", + "babel-runtime": "^6.26.0", + "babel-types": "^6.26.0", + "babylon": "^6.18.0", + "debug": "^2.6.8", + "globals": "^9.18.0", + "invariant": "^2.2.2", + "lodash": "^4.17.4" }, "dependencies": { "debug": { @@ -2286,10 +2420,10 @@ "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", "dev": true, "requires": { - "babel-runtime": "6.26.0", - "esutils": "2.0.2", - "lodash": "4.17.11", - "to-fast-properties": "1.0.3" + "babel-runtime": "^6.26.0", + "esutils": "^2.0.2", + "lodash": "^4.17.4", + "to-fast-properties": "^1.0.3" } }, "babylon": { @@ -2315,13 +2449,13 @@ "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", "dev": true, "requires": { - "cache-base": "1.0.1", - "class-utils": "0.3.6", - "component-emitter": "1.2.1", - "define-property": "1.0.0", - "isobject": "3.0.1", - "mixin-deep": "1.3.1", - "pascalcase": "0.1.1" + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" }, "dependencies": { "define-property": { @@ -2330,7 +2464,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -2339,7 +2473,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -2348,7 +2482,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -2357,9 +2491,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "kind-of": { @@ -2399,7 +2533,7 @@ "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", "optional": true, "requires": { - "tweetnacl": "0.14.5" + "tweetnacl": "^0.14.3" } }, "better-assert": { @@ -2412,9 +2546,9 @@ } }, "big.js": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz", - "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", "dev": true }, "bignumber.js": { @@ -2428,61 +2562,10 @@ "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=", "dev": true }, - "bitsyntax": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.0.4.tgz", - "integrity": "sha1-6xDMb4K4xJDj6FaY8H6D1G4MuoI=", - "dev": true, - "optional": true, - "requires": { - "buffer-more-ints": "0.0.2" - } - }, - "bl": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/bl/-/bl-1.1.2.tgz", - "integrity": "sha1-/cqHGplxOqANGeO7ukHER4emU5g=", - "dev": true, - "optional": true, - "requires": { - "readable-stream": "2.0.6" - }, - "dependencies": { - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true, - "optional": true - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dev": true, - "optional": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "0.10.31", - "util-deprecate": "1.0.2" - } - } - } - }, "blob": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz", - "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=", + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.5.tgz", + "integrity": "sha512-gaqbzQPqOoamawKg0LGVd7SzLgXS+JH61oWprSLH+P+abTczqJbhTR8CmJ2u9/bUYNmHTGJx/UEmn6doAvvuig==", "dev": true }, "block-stream": { @@ -2492,7 +2575,7 @@ "dev": true, "optional": true, "requires": { - "inherits": "2.0.3" + "inherits": "~2.0.0" } }, "blocking-proxy": { @@ -2501,7 +2584,7 @@ "integrity": "sha512-KE8NFMZr3mN2E0HcvCgRtX7DjhiIQrwle+nSVJVC/yqFb9+xznHl2ZcoBp2L9qzkI4t4cBFJ1efXF8Dwi132RA==", "dev": true, "requires": { - "minimist": "1.2.0" + "minimist": "^1.2.0" }, "dependencies": { "minimist": { @@ -2525,21 +2608,21 @@ "dev": true }, "body-parser": { - "version": "1.18.2", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz", - "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=", + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", "dev": true, "requires": { "bytes": "3.0.0", - "content-type": "1.0.4", + "content-type": "~1.0.4", "debug": "2.6.9", - "depd": "1.1.2", - "http-errors": "1.6.3", - "iconv-lite": "0.4.19", - "on-finished": "2.3.0", - "qs": "6.5.1", - "raw-body": "2.3.2", - "type-is": "1.6.16" + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" }, "dependencies": { "debug": { @@ -2550,56 +2633,6 @@ "requires": { "ms": "2.0.0" } - }, - "iconv-lite": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz", - "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==", - "dev": true - }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "raw-body": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.3.2.tgz", - "integrity": "sha1-vNYMd9Prk83gBQKVw/N5OJvIj4k=", - "dev": true, - "requires": { - "bytes": "3.0.0", - "http-errors": "1.6.2", - "iconv-lite": "0.4.19", - "unpipe": "1.0.0" - }, - "dependencies": { - "depd": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.1.tgz", - "integrity": "sha1-V4O04cRZ8G+lyif5kfPQbnoxA1k=", - "dev": true - }, - "http-errors": { - "version": "1.6.2", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.2.tgz", - "integrity": "sha1-CgAsyFcHGSp+eUbO7cERVfYOxzY=", - "dev": true, - "requires": { - "depd": "1.1.1", - "inherits": "2.0.3", - "setprototypeof": "1.0.3", - "statuses": "1.5.0" - } - } - } - }, - "setprototypeof": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.0.3.tgz", - "integrity": "sha1-ZlZ+NwQ+608E2RvWWMDL77VbjgQ=", - "dev": true } } }, @@ -2609,27 +2642,12 @@ "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", "dev": true, "requires": { - "array-flatten": "2.1.1", - "deep-equal": "1.0.1", - "dns-equal": "1.0.0", - "dns-txt": "2.0.2", - "multicast-dns": "6.2.3", - "multicast-dns-service-types": "1.1.0" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=", - "dev": true - }, - "boom": { - "version": "2.10.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-2.10.1.tgz", - "integrity": "sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8=", - "dev": true, - "requires": { - "hoek": "2.16.3" + "array-flatten": "^2.1.0", + "deep-equal": "^1.0.1", + "dns-equal": "^1.0.0", + "dns-txt": "^2.0.2", + "multicast-dns": "^6.0.1", + "multicast-dns-service-types": "^1.1.0" } }, "bops": { @@ -2646,7 +2664,7 @@ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", "requires": { - "balanced-match": "1.0.0", + "balanced-match": "^1.0.0", "concat-map": "0.0.1" } }, @@ -2656,16 +2674,16 @@ "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", "dev": true, "requires": { - "arr-flatten": "1.1.0", - "array-unique": "0.3.2", - "extend-shallow": "2.0.1", - "fill-range": "4.0.0", - "isobject": "3.0.1", - "repeat-element": "1.1.2", - "snapdragon": "0.8.2", - "snapdragon-node": "2.1.1", - "split-string": "3.1.0", - "to-regex": "3.0.2" + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -2674,7 +2692,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -2691,12 +2709,12 @@ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==", "dev": true, "requires": { - "buffer-xor": "1.0.3", - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "inherits": "2.0.3", - "safe-buffer": "5.1.2" + "buffer-xor": "^1.0.3", + "cipher-base": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.3", + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "browserify-cipher": { @@ -2705,9 +2723,9 @@ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==", "dev": true, "requires": { - "browserify-aes": "1.2.0", - "browserify-des": "1.0.2", - "evp_bytestokey": "1.0.3" + "browserify-aes": "^1.0.4", + "browserify-des": "^1.0.0", + "evp_bytestokey": "^1.0.0" } }, "browserify-des": { @@ -2716,10 +2734,10 @@ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "des.js": "1.0.0", - "inherits": "2.0.3", - "safe-buffer": "5.1.2" + "cipher-base": "^1.0.1", + "des.js": "^1.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "browserify-rsa": { @@ -2728,8 +2746,8 @@ "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", "dev": true, "requires": { - "bn.js": "4.11.8", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "randombytes": "^2.0.1" } }, "browserify-sign": { @@ -2738,13 +2756,13 @@ "integrity": "sha1-qk62jl17ZYuqa/alfmMMvXqT0pg=", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "elliptic": "6.4.0", - "inherits": "2.0.3", - "parse-asn1": "5.1.1" + "bn.js": "^4.1.1", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.2", + "elliptic": "^6.0.0", + "inherits": "^2.0.1", + "parse-asn1": "^5.0.0" } }, "browserify-zlib": { @@ -2753,17 +2771,18 @@ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==", "dev": true, "requires": { - "pako": "1.0.6" + "pako": "~1.0.5" } }, "browserslist": { - "version": "3.2.8", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-3.2.8.tgz", - "integrity": "sha512-WHVocJYavUwVgVViC0ORikPHQquXwVh939TaelZ4WDqpWgTX/FsGhl/+P4qBUAGcRvtOgDgC+xftNWWp2RUTAQ==", + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.4.2.tgz", + "integrity": "sha512-ISS/AIAiHERJ3d45Fz0AVYKkgcy+F/eJHzKEvv1j0wwKGKD9T3BrwKr/5g45L+Y4XIK5PlTqefHciRFcfE1Jxg==", "dev": true, "requires": { - "caniuse-lite": "1.0.30000865", - "electron-to-chromium": "1.3.52" + "caniuse-lite": "^1.0.30000939", + "electron-to-chromium": "^1.3.113", + "node-releases": "^1.1.8" } }, "browserstack": { @@ -2772,7 +2791,7 @@ "integrity": "sha512-O8VMT64P9NOLhuIoD4YngyxBURefaSdR4QdhG8l6HZ9VxtU7jc3m6jLufFwKA5gaf7fetfB2TnRJnMxyob+heg==", "dev": true, "requires": { - "https-proxy-agent": "2.2.1" + "https-proxy-agent": "^2.2.1" } }, "buffer": { @@ -2781,9 +2800,9 @@ "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", "dev": true, "requires": { - "base64-js": "1.3.0", - "ieee754": "1.1.12", - "isarray": "1.0.0" + "base64-js": "^1.0.2", + "ieee754": "^1.1.4", + "isarray": "^1.0.0" }, "dependencies": { "base64-js": { @@ -2800,6 +2819,28 @@ } } }, + "buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dev": true, + "requires": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==", + "dev": true + }, + "buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=", + "dev": true + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -2812,34 +2853,12 @@ "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==", "dev": true }, - "buffer-more-ints": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/buffer-more-ints/-/buffer-more-ints-0.0.2.tgz", - "integrity": "sha1-JrOIXRD6E9t/wBquOquHAZngEkw=", - "dev": true - }, "buffer-xor": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz", "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=", "dev": true }, - "buildmail": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/buildmail/-/buildmail-4.0.1.tgz", - "integrity": "sha1-h393OLeHKYccmhBeO4N9K+EaenI=", - "dev": true, - "optional": true, - "requires": { - "addressparser": "1.0.1", - "libbase64": "0.1.0", - "libmime": "3.0.0", - "libqp": "1.1.0", - "nodemailer-fetch": "1.6.0", - "nodemailer-shared": "1.1.0", - "punycode": "1.4.1" - } - }, "builtin-modules": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz", @@ -2869,19 +2888,19 @@ "integrity": "sha512-Dph0MzuH+rTQzGPNT9fAnrPmMmjKfST6trxJeK7NQuHRaVw24VzPRWTmg9MpcwOVQZO0E1FBICUlFeNaKPIfHA==", "dev": true, "requires": { - "bluebird": "3.5.1", - "chownr": "1.0.1", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "lru-cache": "4.1.3", - "mississippi": "2.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "5.3.0", - "unique-filename": "1.1.0", - "y18n": "4.0.0" + "bluebird": "^3.5.1", + "chownr": "^1.0.1", + "glob": "^7.1.2", + "graceful-fs": "^4.1.11", + "lru-cache": "^4.1.1", + "mississippi": "^2.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^5.2.4", + "unique-filename": "^1.1.0", + "y18n": "^4.0.0" }, "dependencies": { "y18n": { @@ -2898,27 +2917,15 @@ "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", "dev": true, "requires": { - "collection-visit": "1.0.0", - "component-emitter": "1.2.1", - "get-value": "2.0.6", - "has-value": "1.0.0", - "isobject": "3.0.1", - "set-value": "2.0.0", - "to-object-path": "0.3.0", - "union-value": "1.0.0", - "unset-value": "1.0.0" - } - }, - "cache-loader": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/cache-loader/-/cache-loader-1.2.2.tgz", - "integrity": "sha512-rsGh4SIYyB9glU+d0OcHwiXHXBoUgDhHZaQ1KAbiXqfz1CDPxtTboh1gPbJ0q2qdO8a9lfcjgC5CJ2Ms32y5bw==", - "dev": true, - "requires": { - "loader-utils": "1.1.0", - "mkdirp": "0.5.1", - "neo-async": "2.5.1", - "schema-utils": "0.4.5" + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" } }, "callsite": { @@ -2927,16 +2934,6 @@ "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=", "dev": true }, - "camel-case": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz", - "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=", - "dev": true, - "requires": { - "no-case": "2.3.2", - "upper-case": "1.1.3" - } - }, "camelcase": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz", @@ -2947,15 +2944,16 @@ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz", "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=", "dev": true, + "optional": true, "requires": { - "camelcase": "2.1.1", - "map-obj": "1.0.1" + "camelcase": "^2.0.0", + "map-obj": "^1.0.0" } }, "caniuse-lite": { - "version": "1.0.30000865", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000865.tgz", - "integrity": "sha512-vs79o1mOSKRGv/1pSkp4EXgl4ZviWeYReXw60XfacPU64uQWZwJT6vZNmxRF9O+6zu71sJwMxLK5JXxbzuVrLw==", + "version": "1.0.30000947", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30000947.tgz", + "integrity": "sha512-ubgBUfufe5Oi3W1+EHyh2C3lfBIEcZ6bTuvl5wNOpIuRB978GF/Z+pQ7pGGUpeYRB0P+8C7i/3lt6xkeu2hwnA==", "dev": true }, "canonical-path": { @@ -2969,34 +2967,14 @@ "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, - "center-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz", - "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=", - "dev": true, - "optional": true, - "requires": { - "align-text": "0.1.4", - "lazy-cache": "1.0.4" - }, - "dependencies": { - "lazy-cache": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/lazy-cache/-/lazy-cache-1.0.4.tgz", - "integrity": "sha1-odePw6UEdMuAhF07O24dpJpEbo4=", - "dev": true, - "optional": true - } - } - }, "chalk": { "version": "2.4.1", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.1.tgz", "integrity": "sha512-ObN6h1v2fTJSmUXoS3nMQ92LbDK9be4TV+6G+omQlGJFdcUX5heKi1LZ1YnRMIgwTLEj3E24bT6tYni50rlCfQ==", "requires": { - "ansi-styles": "3.2.1", - "escape-string-regexp": "1.0.5", - "supports-color": "5.4.0" + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" } }, "chardet": { @@ -3010,32 +2988,35 @@ "integrity": "sha512-z9n7yt9rOvIJrMhvDtDictKrkFHeihkNl6uWMmZlmL6tJtX9Cs+87oK+teBx+JIgzvbX3yZHT3eF8vpbDxHJXQ==", "dev": true, "requires": { - "anymatch": "2.0.0", - "async-each": "1.0.1", - "braces": "2.3.2", - "fsevents": "1.2.4", - "glob-parent": "3.1.0", - "inherits": "2.0.3", - "is-binary-path": "1.0.1", - "is-glob": "4.0.0", - "lodash.debounce": "4.0.8", - "normalize-path": "2.1.1", - "path-is-absolute": "1.0.1", - "readdirp": "2.1.0", - "upath": "1.1.0" + "anymatch": "^2.0.0", + "async-each": "^1.0.0", + "braces": "^2.3.0", + "fsevents": "^1.2.2", + "glob-parent": "^3.1.0", + "inherits": "^2.0.1", + "is-binary-path": "^1.0.0", + "is-glob": "^4.0.0", + "lodash.debounce": "^4.0.8", + "normalize-path": "^2.1.1", + "path-is-absolute": "^1.0.0", + "readdirp": "^2.0.0", + "upath": "^1.0.5" } }, "chownr": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz", - "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", + "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", "dev": true }, "chrome-trace-event": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-0.1.3.tgz", - "integrity": "sha512-sjndyZHrrWiu4RY7AkHgjn80GfAM2ZSzUkZLV/Js59Ldmh6JDThf0SUmOHU53rFu2rVxxfCzJ30Ukcfch3Gb/A==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.0.tgz", + "integrity": "sha512-xDbVgyfDTT2piup/h8dK/y4QZfJRSa73bw1WZ8b4XM1o7fsFubUVGYcE+1ANtOzJJELGpYoG2961z0Z6OAld9A==", + "dev": true, + "requires": { + "tslib": "^1.9.0" + } }, "cipher-base": { "version": "1.0.4", @@ -3043,8 +3024,8 @@ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.2" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "circular-dependency-plugin": { @@ -3053,22 +3034,16 @@ "integrity": "sha512-oC7/DVAyfcY3UWKm0sN/oVoDedQDQiw/vIiAnuTWTpE5s0zWf7l3WY417Xw/Fbi/QbAjctAkxgMiS9P0s3zkmA==", "dev": true }, - "circular-json": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.5.5.tgz", - "integrity": "sha512-13YaR6kiz0kBNmIVM87Io8Hp7bWOo4r61vkEANy8iH9R9bc6avud/1FT0SBpqR1RpIQADOh/Q+yHZDA1iL6ysA==", - "dev": true - }, "class-utils": { "version": "0.3.6", "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz", "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", "dev": true, "requires": { - "arr-union": "3.1.0", - "define-property": "0.2.5", - "isobject": "3.0.1", - "static-extend": "0.1.2" + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" }, "dependencies": { "define-property": { @@ -3077,26 +3052,18 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } }, "clean-css": { - "version": "4.1.11", - "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.1.11.tgz", - "integrity": "sha1-Ls3xRaujj1R0DybO/Q/z4D4SXWo=", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.1.tgz", + "integrity": "sha512-4ZxI6dy4lrY6FHzfiy1aEOXgu4LIsW2MhwG0VBKdcoGoH/XLFgaHSdLTGr4O8Be6A8r3MOphEiI8Gc1n0ecf3g==", "dev": true, "requires": { - "source-map": "0.5.7" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - } + "source-map": "~0.6.0" } }, "cli-cursor": { @@ -3104,7 +3071,7 @@ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", "requires": { - "restore-cursor": "2.0.0" + "restore-cursor": "^2.0.0" } }, "cli-width": { @@ -3117,9 +3084,9 @@ "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz", "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wrap-ansi": "2.1.0" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wrap-ansi": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -3132,7 +3099,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -3140,9 +3107,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -3150,15 +3117,15 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } }, "clone": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.1.tgz", - "integrity": "sha1-0hfR6WERjjrJpLi7oyhVU79kfNs=", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz", + "integrity": "sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18=", "dev": true }, "clone-deep": { @@ -3166,10 +3133,10 @@ "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-0.3.0.tgz", "integrity": "sha1-NIxhrpzb4O3+BT2R/0zFIdeQ7eg=", "requires": { - "for-own": "1.0.0", - "is-plain-object": "2.0.4", - "kind-of": "3.2.2", - "shallow-clone": "0.1.2" + "for-own": "^1.0.0", + "is-plain-object": "^2.0.1", + "kind-of": "^3.2.2", + "shallow-clone": "^0.1.2" } }, "co": { @@ -3188,12 +3155,12 @@ "integrity": "sha512-oO6vCkjqsVrEsmh58oNlnJkRXuA30hF8cdNAQV9DytEalDwyOFRvHMnlKFzmOStNerOmPGZU9GAHnBo4tGvtiQ==", "dev": true, "requires": { - "app-root-path": "2.1.0", - "css-selector-tokenizer": "0.7.1", - "cssauron": "1.4.0", - "semver-dsl": "1.0.1", - "source-map": "0.5.7", - "sprintf-js": "1.1.2" + "app-root-path": "^2.1.0", + "css-selector-tokenizer": "^0.7.0", + "cssauron": "^1.4.0", + "semver-dsl": "^1.0.1", + "source-map": "^0.5.7", + "sprintf-js": "^1.1.1" }, "dependencies": { "source-map": { @@ -3216,8 +3183,8 @@ "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", "dev": true, "requires": { - "map-visit": "1.0.0", - "object-visit": "1.0.1" + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" } }, "color-convert": { @@ -3239,21 +3206,12 @@ "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", "dev": true }, - "combine-lists": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz", - "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=", - "dev": true, - "requires": { - "lodash": "4.17.11" - } - }, "combined-stream": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=", "requires": { - "delayed-stream": "1.0.0" + "delayed-stream": "~1.0.0" } }, "commander": { @@ -3269,9 +3227,9 @@ "dev": true }, "compare-versions": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.3.0.tgz", - "integrity": "sha512-MAAAIOdi2s4Gl6rZ76PNcUa9IOYB+5ICdT41o5uMRf09aEu/F9RK+qhe8RjXNPwcTjGV7KU7h2P/fljThFVqyQ==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.4.0.tgz", + "integrity": "sha512-tK69D7oNXXqUW3ZNo/z7NXTEz22TCF0pTE+YF9cxvaAM9XnkLo1fV621xCLrRR6aevJlKxExkss0vWqUCUpqdg==", "dev": true }, "component-bind": { @@ -3293,12 +3251,20 @@ "dev": true }, "compressible": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.14.tgz", - "integrity": "sha1-MmxfUH+7BV9UEWeCuWmoG2einac=", + "version": "2.0.16", + "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.16.tgz", + "integrity": "sha512-JQfEOdnI7dASwCuSPWIeVYwc/zMsu/+tRhoUvEfXz2gxOA2DNjmG5vhtFdBlhWPPGo+RdT9S3tgc/uH5qgDiiA==", "dev": true, "requires": { - "mime-db": "1.35.0" + "mime-db": ">= 1.38.0 < 2" + }, + "dependencies": { + "mime-db": { + "version": "1.38.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.38.0.tgz", + "integrity": "sha512-bqVioMFFzc2awcdJZIzR3HjZFX20QhilVS7hytkKrv7xFAn8bM1gzc/FOX2awLISvWe0PV8ptFKcon+wZ5qYkg==", + "dev": true + } } }, "compression": { @@ -3307,13 +3273,13 @@ "integrity": "sha512-HSjyBG5N1Nnz7tF2+O7A9XUhyjru71/fwgNb7oIsEVHR0WShfs2tIS/EySLgiTe98aOK18YDlMXpzjCXY/n9mg==", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.5", "bytes": "3.0.0", - "compressible": "2.0.14", + "compressible": "~2.0.14", "debug": "2.6.9", - "on-headers": "1.0.1", + "on-headers": "~1.0.1", "safe-buffer": "5.1.2", - "vary": "1.1.2" + "vary": "~1.1.2" }, "dependencies": { "debug": { @@ -3338,10 +3304,10 @@ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==", "dev": true, "requires": { - "buffer-from": "1.1.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "typedarray": "0.0.6" + "buffer-from": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^2.2.2", + "typedarray": "^0.0.6" } }, "configstore": { @@ -3349,12 +3315,12 @@ "resolved": "https://registry.npmjs.org/configstore/-/configstore-3.1.2.tgz", "integrity": "sha512-vtv5HtGjcYUgFrXc6Kx747B83MRRVS5R1VTEQoXvuP+kMI+if6uywV0nDGoiydJRy4yk7h9od5Og0kxx4zUXmw==", "requires": { - "dot-prop": "4.2.0", - "graceful-fs": "4.1.11", - "make-dir": "1.3.0", - "unique-string": "1.0.0", - "write-file-atomic": "2.3.0", - "xdg-basedir": "3.0.0" + "dot-prop": "^4.1.0", + "graceful-fs": "^4.1.2", + "make-dir": "^1.0.0", + "unique-string": "^1.0.0", + "write-file-atomic": "^2.0.0", + "xdg-basedir": "^3.0.0" } }, "connect": { @@ -3365,7 +3331,7 @@ "requires": { "debug": "2.6.9", "finalhandler": "1.1.0", - "parseurl": "1.3.2", + "parseurl": "~1.3.2", "utils-merge": "1.0.1" }, "dependencies": { @@ -3385,12 +3351,12 @@ "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.3.1", - "unpipe": "1.0.0" + "encodeurl": "~1.0.1", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", + "unpipe": "~1.0.0" } }, "statuses": { @@ -3402,9 +3368,9 @@ } }, "connect-history-api-fallback": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.5.0.tgz", - "integrity": "sha1-sGhzk0vF40T+9hGhlqb6rgruAVo=", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", "dev": true }, "console-browserify": { @@ -3413,14 +3379,15 @@ "integrity": "sha1-8CQcRXMKn8YyOyBtvzjtx0HQuxA=", "dev": true, "requires": { - "date-now": "0.1.4" + "date-now": "^0.1.4" } }, "console-control-strings": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=", - "dev": true + "dev": true, + "optional": true }, "constants-browserify": { "version": "1.0.0", @@ -3464,12 +3431,12 @@ "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==", "dev": true, "requires": { - "aproba": "1.2.0", - "fs-write-stream-atomic": "1.0.10", - "iferr": "0.1.5", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "fs-write-stream-atomic": "^1.0.8", + "iferr": "^0.1.5", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.0" } }, "copy-descriptor": { @@ -3479,19 +3446,19 @@ "dev": true }, "copy-webpack-plugin": { - "version": "4.5.2", - "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.5.2.tgz", - "integrity": "sha512-zmC33E8FFSq3AbflTvqvPvBo621H36Afsxlui91d+QyZxPIuXghfnTsa1CuqiAaCPgJoSUWfTFbKJnadZpKEbQ==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-4.6.0.tgz", + "integrity": "sha512-Y+SQCF+0NoWQryez2zXn5J5knmr9z/9qSQt7fbL78u83rxmigOy8X5+BFn8CFSuX+nKT8gpYwJX68ekqtQt6ZA==", "dev": true, "requires": { - "cacache": "10.0.4", - "find-cache-dir": "1.0.0", - "globby": "7.1.1", - "is-glob": "4.0.0", - "loader-utils": "1.1.0", - "minimatch": "3.0.4", - "p-limit": "1.3.0", - "serialize-javascript": "1.5.0" + "cacache": "^10.0.4", + "find-cache-dir": "^1.0.0", + "globby": "^7.1.1", + "is-glob": "^4.0.0", + "loader-utils": "^1.1.0", + "minimatch": "^3.0.4", + "p-limit": "^1.0.0", + "serialize-javascript": "^1.4.0" } }, "core-js": { @@ -3510,10 +3477,10 @@ "integrity": "sha512-6e5vDdrXZD+t5v0L8CrurPeybg4Fmf+FCSYxXKYVAqLUtyCSbuyqE059d0kDthTNRzKVjL7QMgNpEUlsoYH3iQ==", "dev": true, "requires": { - "is-directory": "0.3.1", - "js-yaml": "3.12.0", - "parse-json": "4.0.0", - "require-from-string": "2.0.2" + "is-directory": "^0.3.1", + "js-yaml": "^3.9.0", + "parse-json": "^4.0.0", + "require-from-string": "^2.0.1" }, "dependencies": { "parse-json": { @@ -3522,8 +3489,8 @@ "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=", "dev": true, "requires": { - "error-ex": "1.3.2", - "json-parse-better-errors": "1.0.2" + "error-ex": "^1.3.1", + "json-parse-better-errors": "^1.0.1" } } } @@ -3534,8 +3501,8 @@ "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", "dev": true, "requires": { - "bn.js": "4.11.8", - "elliptic": "6.4.0" + "bn.js": "^4.1.0", + "elliptic": "^6.0.0" } }, "create-hash": { @@ -3544,11 +3511,11 @@ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "inherits": "2.0.3", - "md5.js": "1.3.4", - "ripemd160": "2.0.2", - "sha.js": "2.4.11" + "cipher-base": "^1.0.1", + "inherits": "^2.0.1", + "md5.js": "^1.3.4", + "ripemd160": "^2.0.1", + "sha.js": "^2.4.0" } }, "create-hmac": { @@ -3557,12 +3524,12 @@ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==", "dev": true, "requires": { - "cipher-base": "1.0.4", - "create-hash": "1.2.0", - "inherits": "2.0.3", - "ripemd160": "2.0.2", - "safe-buffer": "5.1.2", - "sha.js": "2.4.11" + "cipher-base": "^1.0.3", + "create-hash": "^1.1.0", + "inherits": "^2.0.1", + "ripemd160": "^2.0.0", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "cross-spawn": { @@ -3572,18 +3539,8 @@ "dev": true, "optional": true, "requires": { - "lru-cache": "4.1.3", - "which": "1.3.1" - } - }, - "cryptiles": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-2.0.5.tgz", - "integrity": "sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g=", - "dev": true, - "optional": true, - "requires": { - "boom": "2.10.1" + "lru-cache": "^4.0.1", + "which": "^1.2.9" } }, "crypto-browserify": { @@ -3592,17 +3549,17 @@ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==", "dev": true, "requires": { - "browserify-cipher": "1.0.1", - "browserify-sign": "4.0.4", - "create-ecdh": "4.0.3", - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "diffie-hellman": "5.0.3", - "inherits": "2.0.3", - "pbkdf2": "3.0.16", - "public-encrypt": "4.0.2", - "randombytes": "2.0.6", - "randomfill": "1.0.4" + "browserify-cipher": "^1.0.0", + "browserify-sign": "^4.0.0", + "create-ecdh": "^4.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.0", + "diffie-hellman": "^5.0.0", + "inherits": "^2.0.1", + "pbkdf2": "^3.0.3", + "public-encrypt": "^4.0.0", + "randombytes": "^2.0.0", + "randomfill": "^1.0.3" } }, "crypto-random-string": { @@ -3616,42 +3573,24 @@ "integrity": "sha1-Mh9s9zeCpv91ERE5D8BeLGV9jJs=", "dev": true }, - "css-select": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", - "integrity": "sha1-KzoRBTnFNV8c2NMUYj6HCxIeyFg=", - "dev": true, - "requires": { - "boolbase": "1.0.0", - "css-what": "2.1.0", - "domutils": "1.5.1", - "nth-check": "1.0.1" - } - }, "css-selector-tokenizer": { "version": "0.7.1", "resolved": "https://registry.npmjs.org/css-selector-tokenizer/-/css-selector-tokenizer-0.7.1.tgz", "integrity": "sha512-xYL0AMZJ4gFzJQsHUKa5jiWWi2vH77WVNg7JYRyewwj6oPh4yb/y6Y9ZCw9dsj/9UauMhtuxR+ogQd//EdEVNA==", "dev": true, "requires": { - "cssesc": "0.1.0", - "fastparse": "1.1.2", - "regexpu-core": "1.0.0" + "cssesc": "^0.1.0", + "fastparse": "^1.1.1", + "regexpu-core": "^1.0.0" } }, - "css-what": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.0.tgz", - "integrity": "sha1-lGfQMsOM+u+58teVASUwYvh/ob0=", - "dev": true - }, "cssauron": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz", "integrity": "sha1-pmAt/34EqDBtwNuaVR6S6LVmKtg=", "dev": true, "requires": { - "through": "2.3.8" + "through": "X.X.X" } }, "cssesc": { @@ -3660,19 +3599,14 @@ "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", "dev": true }, - "cuint": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cuint/-/cuint-0.2.2.tgz", - "integrity": "sha1-QICG1AlVDCYxFVYZ6fp7ytw7mRs=", - "dev": true - }, "currently-unhandled": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz", "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=", "dev": true, + "optional": true, "requires": { - "array-find-index": "1.0.2" + "array-find-index": "^1.0.1" } }, "custom-event": { @@ -3687,21 +3621,12 @@ "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", "dev": true }, - "d": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz", - "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=", - "dev": true, - "requires": { - "es5-ext": "0.10.45" - } - }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "data-uri-to-buffer": { @@ -3710,9 +3635,9 @@ "integrity": "sha512-vKQ9DTQPN1FLYiiEEOQ6IBGFqvjCa5rSK3cWMy/Nespm5d/x3dGFT9UBZnkLxCwua/IXBi2TYnwTEpsOvhC4UQ==" }, "date-format": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/date-format/-/date-format-1.2.0.tgz", - "integrity": "sha1-YV6CjiM90aubua4JUODOzPpuytg=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/date-format/-/date-format-2.0.0.tgz", + "integrity": "sha512-M6UqVvZVgFYqZL1SfHsRGIQSz3ZL+qgbsV5Lp1Vj61LZVYuEwcMXYay7DRDtYs2HQQBK5hQtQ0fD9aEJ89V0LA==", "dev": true }, "date-now": { @@ -3751,13 +3676,53 @@ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz", "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=" }, + "default-gateway": { + "version": "2.7.2", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-2.7.2.tgz", + "integrity": "sha512-lAc4i9QJR0YHSDFdzeBQKfZ1SRDG3hsJNEkrpcZa8QhBfidLAilT60BDEIVUUGqosFp425KOgB3uYqcnQrWafQ==", + "dev": true, + "requires": { + "execa": "^0.10.0", + "ip-regex": "^2.1.0" + }, + "dependencies": { + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "execa": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-0.10.0.tgz", + "integrity": "sha512-7XOMnz8Ynx1gGo/3hyV9loYNPWM94jG3+3T3Y8tsfSstFmETmENCMU/A/zj8Lyaj1lkgEepKepvd6240tBRvlw==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + } + } + }, "default-require-extensions": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-2.0.0.tgz", "integrity": "sha1-9fj7sYp9bVCyH2QfZJ67Uiz+JPc=", "dev": true, "requires": { - "strip-bom": "3.0.0" + "strip-bom": "^3.0.0" }, "dependencies": { "strip-bom": { @@ -3768,24 +3733,14 @@ } } }, - "define-properties": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.2.tgz", - "integrity": "sha1-g6c/L+pWmJj7c3GTyPhzyvbUXJQ=", - "dev": true, - "requires": { - "foreach": "2.0.5", - "object-keys": "1.0.12" - } - }, "define-property": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", "dev": true, "requires": { - "is-descriptor": "1.0.2", - "isobject": "3.0.1" + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" }, "dependencies": { "is-accessor-descriptor": { @@ -3794,7 +3749,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -3803,7 +3758,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -3812,9 +3767,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "kind-of": { @@ -3830,9 +3785,9 @@ "resolved": "https://registry.npmjs.org/degenerator/-/degenerator-1.0.4.tgz", "integrity": "sha1-/PSQo37OJmRk2cxDGrmMWBnO0JU=", "requires": { - "ast-types": "0.11.5", - "escodegen": "1.11.0", - "esprima": "3.1.3" + "ast-types": "0.x.x", + "escodegen": "1.x.x", + "esprima": "3.x.x" } }, "del": { @@ -3841,12 +3796,12 @@ "integrity": "sha1-U+z2mf/LyzljdpGrE7rxYIGXZuU=", "dev": true, "requires": { - "globby": "6.1.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.1", - "p-map": "1.2.0", - "pify": "3.0.0", - "rimraf": "2.6.2" + "globby": "^6.1.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "p-map": "^1.1.1", + "pify": "^3.0.0", + "rimraf": "^2.2.8" }, "dependencies": { "globby": { @@ -3855,11 +3810,11 @@ "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", "dev": true, "requires": { - "array-union": "1.0.2", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" }, "dependencies": { "pify": { @@ -3881,7 +3836,8 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true + "dev": true, + "optional": true }, "depd": { "version": "1.1.2", @@ -3900,8 +3856,8 @@ "integrity": "sha1-wHTS4qpqipoH29YfmhXCzYPsjsw=", "dev": true, "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0" } }, "destroy": { @@ -3916,13 +3872,13 @@ "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", "dev": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "detect-node": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.3.tgz", - "integrity": "sha1-ogM8CcyOFY03dI+951B4Mr1s4Sc=", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", + "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "dev": true }, "di": { @@ -3943,19 +3899,18 @@ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==", "dev": true, "requires": { - "bn.js": "4.11.8", - "miller-rabin": "4.0.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "miller-rabin": "^4.0.0", + "randombytes": "^2.0.0" } }, "dir-glob": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.0.0.tgz", - "integrity": "sha512-37qirFDz8cA5fimp9feo43fSuRo2gHwaIn6dXL8Ber1dGwUosDrGZeCCXq57WnIqE4aQ+u3eQZzsk1yOzhdwag==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz", + "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==", "dev": true, "requires": { - "arrify": "1.0.1", - "path-type": "3.0.0" + "path-type": "^3.0.0" } }, "disable-scroll": { @@ -3963,7 +3918,7 @@ "resolved": "https://registry.npmjs.org/disable-scroll/-/disable-scroll-0.4.0.tgz", "integrity": "sha512-11XMsJbgKz/YdZ1dnZBjMvXRLF0uozY2c2hzgrmpIv1U3Ool2yvpRAMyJRjrKAAW3yILxC5d33XI7mkcXfSDeg==", "requires": { - "scrollingelement": "1.5.2" + "scrollingelement": "^1.5.2" } }, "dns-equal": { @@ -3978,8 +3933,8 @@ "integrity": "sha512-0UxfQkMhYAUaZI+xrNZOz/as5KgDU0M/fQ9b6SpkyLbk3GEswDi6PADJVaYJradtRVsRIlF1zLyOodbcTCDzUg==", "dev": true, "requires": { - "ip": "1.1.5", - "safe-buffer": "5.1.2" + "ip": "^1.1.0", + "safe-buffer": "^5.0.1" } }, "dns-txt": { @@ -3988,24 +3943,7 @@ "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=", "dev": true, "requires": { - "buffer-indexof": "1.1.1" - } - }, - "dom-converter": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.1.4.tgz", - "integrity": "sha1-pF71cnuJDJv/5tfIduexnLDhfzs=", - "dev": true, - "requires": { - "utila": "0.3.3" - }, - "dependencies": { - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } + "buffer-indexof": "^1.0.0" } }, "dom-serialize": { @@ -4014,28 +3952,10 @@ "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=", "dev": true, "requires": { - "custom-event": "1.0.1", - "ent": "2.2.0", - "extend": "3.0.2", - "void-elements": "2.0.1" - } - }, - "dom-serializer": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.0.tgz", - "integrity": "sha1-BzxpdUbOB4DOI75KKOKT5AvDDII=", - "dev": true, - "requires": { - "domelementtype": "1.1.3", - "entities": "1.1.1" - }, - "dependencies": { - "domelementtype": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.1.3.tgz", - "integrity": "sha1-vSh3PiZCiBrsUVRJJCmcXNgiGFs=", - "dev": true - } + "custom-event": "~1.0.0", + "ent": "~2.2.0", + "extend": "^3.0.0", + "void-elements": "^2.0.0" } }, "domain-browser": { @@ -4044,56 +3964,24 @@ "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==", "dev": true }, - "domelementtype": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.0.tgz", - "integrity": "sha1-sXrtguirWeUt2cGbF1bg/BhyBMI=", - "dev": true - }, - "domhandler": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.1.0.tgz", - "integrity": "sha1-0mRvXlf2w7qxHPbLBdPArPdBJZQ=", - "dev": true, - "requires": { - "domelementtype": "1.3.0" - } - }, - "domutils": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", - "integrity": "sha1-3NhIiib1Y9YQeeSMn3t+Mjc2gs8=", - "dev": true, - "requires": { - "dom-serializer": "0.1.0", - "domelementtype": "1.3.0" - } - }, "dot-prop": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-4.2.0.tgz", "integrity": "sha512-tUMXrxlExSW6U2EXiiKGSBVdYgtV8qlHL+C10TsW4PURY/ic+eaysnSkwB4kA/mBlCyy/IKDJ+Lc3wbWeaXtuQ==", "requires": { - "is-obj": "1.0.1" + "is-obj": "^1.0.0" } }, - "double-ended-queue": { - "version": "2.1.0-0", - "resolved": "https://registry.npmjs.org/double-ended-queue/-/double-ended-queue-2.1.0-0.tgz", - "integrity": "sha1-ED01J/0xUo9AGIEwyEHv3XgmTlw=", - "dev": true, - "optional": true - }, "duplexify": { "version": "3.6.0", "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "stream-shift": "1.0.0" + "end-of-stream": "^1.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.0.0", + "stream-shift": "^1.0.0" } }, "ecc-jsbn": { @@ -4102,8 +3990,8 @@ "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", "optional": true, "requires": { - "jsbn": "0.1.1", - "safer-buffer": "2.1.2" + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" } }, "ee-first": { @@ -4112,31 +4000,25 @@ "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, - "ejs": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.6.1.tgz", - "integrity": "sha512-0xy4A/twfrRCnkhfk8ErDi5DqdAsAqeGxht4xkCUrsvhhbQNs7E+4jV0CN7+NKIY0aHE72+XvqtBIXzD31ZbXQ==", - "dev": true - }, "electron-to-chromium": { - "version": "1.3.52", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.52.tgz", - "integrity": "sha1-0tnxJwuko7lnuDHEDvcftNmrXOA=", + "version": "1.3.116", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.116.tgz", + "integrity": "sha512-NKwKAXzur5vFCZYBHpdWjTMO8QptNLNP80nItkSIgUOapPAo9Uia+RvkCaZJtO7fhQaVElSvBPWEc2ku6cKsPA==", "dev": true }, "elliptic": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz", - "integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=", + "version": "6.4.1", + "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.1.tgz", + "integrity": "sha512-BsXLz5sqX8OHcsh7CqBMztyXARmGQ3LWPtGjJi6DiJHq5C/qvi9P3OqgswKSDftbu8+IoI/QDTAm2fFnQ9SZSQ==", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0", - "hash.js": "1.1.5", - "hmac-drbg": "1.0.1", - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" + "bn.js": "^4.4.0", + "brorand": "^1.0.1", + "hash.js": "^1.0.0", + "hmac-drbg": "^1.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.0" } }, "email-validator": { @@ -4162,7 +4044,7 @@ "integrity": "sha1-U4tm8+5izRq1HsMjgp0flIDHS+s=", "dev": true, "requires": { - "iconv-lite": "0.4.23" + "iconv-lite": "~0.4.13" } }, "end-of-stream": { @@ -4171,54 +4053,53 @@ "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==", "dev": true, "requires": { - "once": "1.4.0" + "once": "^1.4.0" } }, "engine.io": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.1.5.tgz", - "integrity": "sha512-D06ivJkYxyRrcEe0bTpNnBQNgP9d3xog+qZlLbui8EsMr/DouQpf5o9FzJnWYHEYE0YsFHllUv2R1dkgYZXHcA==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-3.2.1.tgz", + "integrity": "sha512-+VlKzHzMhaU+GsCIg4AoXF1UdDFjHHwMmMKqMJNDNLlUlejz58FCy4LBqB2YVJskHGYl06BatYWKP2TVdVXE5w==", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "base64id": "1.0.0", "cookie": "0.3.1", - "debug": "3.1.0", - "engine.io-parser": "2.1.2", - "uws": "9.14.0", - "ws": "3.3.3" + "debug": "~3.1.0", + "engine.io-parser": "~2.1.0", + "ws": "~3.3.1" } }, "engine.io-client": { - "version": "3.1.6", - "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.1.6.tgz", - "integrity": "sha512-hnuHsFluXnsKOndS4Hv6SvUrgdYx1pk2NqfaDMW+GWdgfU3+/V25Cj7I8a0x92idSpa5PIhJRKxPvp9mnoLsfg==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-3.2.1.tgz", + "integrity": "sha512-y5AbkytWeM4jQr7m/koQLc5AxpRKC1hEVUb/s1FUAWEJq5AzJJ4NLvzuKPuxtDi5Mq755WuDvZ6Iv2rXj4PTzw==", "dev": true, "requires": { "component-emitter": "1.2.1", "component-inherit": "0.0.3", - "debug": "3.1.0", - "engine.io-parser": "2.1.2", + "debug": "~3.1.0", + "engine.io-parser": "~2.1.1", "has-cors": "1.1.0", "indexof": "0.0.1", "parseqs": "0.0.5", "parseuri": "0.0.5", - "ws": "3.3.3", - "xmlhttprequest-ssl": "1.5.5", + "ws": "~3.3.1", + "xmlhttprequest-ssl": "~1.5.4", "yeast": "0.1.2" } }, "engine.io-parser": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.2.tgz", - "integrity": "sha512-dInLFzr80RijZ1rGpx1+56/uFoH7/7InhH3kZt+Ms6hT8tNx3NGW/WNSA/f8As1WkOfkuyb3tnRyuXGxusclMw==", + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-2.1.3.tgz", + "integrity": "sha512-6HXPre2O4Houl7c4g7Ic/XzPnHBvaEmN90vtRO9uLmwtRqQmTOw0QMevL1TOfL2Cpu1VzsaTmMotQgMdkzGkVA==", "dev": true, "requires": { "after": "0.8.2", - "arraybuffer.slice": "0.0.7", + "arraybuffer.slice": "~0.0.7", "base64-arraybuffer": "0.1.5", - "blob": "0.0.4", - "has-binary2": "1.0.3" + "blob": "0.0.5", + "has-binary2": "~1.0.2" } }, "enhanced-resolve": { @@ -4227,9 +4108,9 @@ "integrity": "sha512-F/7vkyTtyc/llOIn8oWclcB25KdRaiPBpZYDgJHgh/UHtpgT2p2eldQgtQnLtUvfMKPKxbRaQM/hHkvLHt1Vng==", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "memory-fs": "0.4.1", - "tapable": "1.0.0" + "graceful-fs": "^4.1.2", + "memory-fs": "^0.4.0", + "tapable": "^1.0.0" } }, "ent": { @@ -4238,12 +4119,6 @@ "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=", "dev": true }, - "entities": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.1.tgz", - "integrity": "sha1-blwtClYhtdra7O+AuQ7ftc13cvA=", - "dev": true - }, "err-code": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/err-code/-/err-code-1.1.2.tgz", @@ -4256,7 +4131,7 @@ "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", "dev": true, "requires": { - "prr": "1.0.1" + "prr": "~1.0.1" } }, "error-ex": { @@ -4265,53 +4140,7 @@ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, "requires": { - "is-arrayish": "0.2.1" - } - }, - "es-abstract": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.12.0.tgz", - "integrity": "sha512-C8Fx/0jFmV5IPoMOFPA9P9G5NtqW+4cOPit3MIuvR2t7Ag2K15EJTpxnHAYTzL+aYQJIESYeXZmDBfOBE1HcpA==", - "dev": true, - "requires": { - "es-to-primitive": "1.1.1", - "function-bind": "1.1.1", - "has": "1.0.3", - "is-callable": "1.1.4", - "is-regex": "1.0.4" - } - }, - "es-to-primitive": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.1.1.tgz", - "integrity": "sha1-RTVSSKiJeQNLZ5Lhm7gfK3l13Q0=", - "dev": true, - "requires": { - "is-callable": "1.1.4", - "is-date-object": "1.0.1", - "is-symbol": "1.0.1" - } - }, - "es5-ext": { - "version": "0.10.45", - "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.45.tgz", - "integrity": "sha512-FkfM6Vxxfmztilbxxz5UKSD4ICMf5tSpRFtDNtkAhOxZ0EKtX6qwmXNyH/sFyIbX2P/nU5AMiA9jilWsUGJzCQ==", - "dev": true, - "requires": { - "es6-iterator": "2.0.3", - "es6-symbol": "3.1.1", - "next-tick": "1.0.0" - } - }, - "es6-iterator": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", - "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", - "dev": true, - "requires": { - "d": "1.0.0", - "es5-ext": "0.10.45", - "es6-symbol": "3.1.1" + "is-arrayish": "^0.2.1" } }, "es6-promise": { @@ -4324,17 +4153,7 @@ "resolved": "https://registry.npmjs.org/es6-promisify/-/es6-promisify-5.0.0.tgz", "integrity": "sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM=", "requires": { - "es6-promise": "4.2.4" - } - }, - "es6-symbol": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz", - "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=", - "dev": true, - "requires": { - "d": "1.0.0", - "es5-ext": "0.10.45" + "es6-promise": "^4.0.3" } }, "escape-html": { @@ -4353,21 +4172,21 @@ "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.11.0.tgz", "integrity": "sha512-IeMV45ReixHS53K/OmfKAIztN/igDHzTJUhZM3k1jMhIZWjk45SMwAtBsEXiJp3vSPmTcu6CXn7mDvFHRN66fw==", "requires": { - "esprima": "3.1.3", - "estraverse": "4.2.0", - "esutils": "2.0.2", - "optionator": "0.8.2", - "source-map": "0.6.1" + "esprima": "^3.1.3", + "estraverse": "^4.2.0", + "esutils": "^2.0.2", + "optionator": "^0.8.1", + "source-map": "~0.6.1" } }, "eslint-scope": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", - "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.2.tgz", + "integrity": "sha512-5q1+B/ogmHl8+paxtOKx38Z8LtWkVGuNt3+GQNErqwLl6ViNp/gdJGMCjZNxZ8j/VYjDNZ2Fo+eQc1TAVPIzbg==", "dev": true, "requires": { - "esrecurse": "4.2.1", - "estraverse": "4.2.0" + "esrecurse": "^4.1.0", + "estraverse": "^4.1.1" } }, "esprima": { @@ -4381,7 +4200,7 @@ "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", "dev": true, "requires": { - "estraverse": "4.2.0" + "estraverse": "^4.1.0" } }, "estraverse": { @@ -4407,18 +4226,18 @@ "dev": true }, "events": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/events/-/events-1.1.1.tgz", - "integrity": "sha1-nr23Y1rQmccNzEwqH1AEKI6L2SQ=", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.0.0.tgz", + "integrity": "sha512-Dc381HFWJzEOhQ+d8pkNon++bk9h6cdAoAj4iE6Q4y6xgTzySWXlKn05/TVNpjnfRqi/X0EpJEJohPjNI3zpVA==", "dev": true }, "eventsource": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-0.1.6.tgz", - "integrity": "sha1-Cs7ehJ7X3RzMMsgRuxG5RNTykjI=", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.0.7.tgz", + "integrity": "sha512-4Ln17+vVT0k8aWq+t/bF5arcS3EpT9gYtW66EPacdj/mAFevznsnyoHLPy2BA8gbIQeIHoPsvwmfBftfcG//BQ==", "dev": true, "requires": { - "original": "1.0.1" + "original": "^1.0.0" } }, "evp_bytestokey": { @@ -4427,8 +4246,8 @@ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==", "dev": true, "requires": { - "md5.js": "1.3.4", - "safe-buffer": "5.1.2" + "md5.js": "^1.3.4", + "safe-buffer": "^5.1.1" } }, "execa": { @@ -4437,13 +4256,13 @@ "integrity": "sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c=", "dev": true, "requires": { - "cross-spawn": "5.1.0", - "get-stream": "3.0.0", - "is-stream": "1.1.0", - "npm-run-path": "2.0.2", - "p-finally": "1.0.0", - "signal-exit": "3.0.2", - "strip-eof": "1.0.0" + "cross-spawn": "^5.0.1", + "get-stream": "^3.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" }, "dependencies": { "cross-spawn": { @@ -4452,9 +4271,9 @@ "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=", "dev": true, "requires": { - "lru-cache": "4.1.3", - "shebang-command": "1.2.0", - "which": "1.3.1" + "lru-cache": "^4.0.1", + "shebang-command": "^1.2.0", + "which": "^1.2.9" } } } @@ -4465,69 +4284,19 @@ "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=", "dev": true }, - "expand-braces": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz", - "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=", - "dev": true, - "requires": { - "array-slice": "0.2.3", - "array-unique": "0.2.1", - "braces": "0.1.5" - }, - "dependencies": { - "array-unique": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz", - "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=", - "dev": true - }, - "braces": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz", - "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=", - "dev": true, - "requires": { - "expand-range": "0.1.1" - } - }, - "expand-range": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz", - "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=", - "dev": true, - "requires": { - "is-number": "0.1.1", - "repeat-string": "0.2.2" - } - }, - "is-number": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz", - "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=", - "dev": true - }, - "repeat-string": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz", - "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=", - "dev": true - } - } - }, "expand-brackets": { "version": "2.1.4", "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz", "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=", "dev": true, "requires": { - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "posix-character-classes": "0.1.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "debug": { @@ -4545,7 +4314,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -4554,47 +4323,47 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } }, "express": { - "version": "4.16.3", - "resolved": "https://registry.npmjs.org/express/-/express-4.16.3.tgz", - "integrity": "sha1-avilAjUNsyRuzEvs9rWjTSL37VM=", + "version": "4.16.4", + "resolved": "https://registry.npmjs.org/express/-/express-4.16.4.tgz", + "integrity": "sha512-j12Uuyb4FMrd/qQAm6uCHAkPtO8FDTRJZBDd5D2KOL2eLaz1yUNdUB/NOIyq0iU4q4cFarsUCrnFDPBcnksuOg==", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.5", "array-flatten": "1.1.1", - "body-parser": "1.18.2", + "body-parser": "1.18.3", "content-disposition": "0.5.2", - "content-type": "1.0.4", + "content-type": "~1.0.4", "cookie": "0.3.1", "cookie-signature": "1.0.6", "debug": "2.6.9", - "depd": "1.1.2", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "finalhandler": "1.1.1", "fresh": "0.5.2", "merge-descriptors": "1.0.1", - "methods": "1.1.2", - "on-finished": "2.3.0", - "parseurl": "1.3.2", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", "path-to-regexp": "0.1.7", - "proxy-addr": "2.0.4", - "qs": "6.5.1", - "range-parser": "1.2.0", - "safe-buffer": "5.1.1", + "proxy-addr": "~2.0.4", + "qs": "6.5.2", + "range-parser": "~1.2.0", + "safe-buffer": "5.1.2", "send": "0.16.2", "serve-static": "1.13.2", "setprototypeof": "1.1.0", - "statuses": "1.4.0", - "type-is": "1.6.16", + "statuses": "~1.4.0", + "type-is": "~1.6.16", "utils-merge": "1.0.1", - "vary": "1.1.2" + "vary": "~1.1.2" }, "dependencies": { "array-flatten": { @@ -4603,6 +4372,24 @@ "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "dev": true }, + "body-parser": { + "version": "1.18.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.3.tgz", + "integrity": "sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=", + "dev": true, + "requires": { + "bytes": "3.0.0", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "~1.6.3", + "iconv-lite": "0.4.23", + "on-finished": "~2.3.0", + "qs": "6.5.2", + "raw-body": "2.3.3", + "type-is": "~1.6.16" + } + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -4612,18 +4399,6 @@ "ms": "2.0.0" } }, - "qs": { - "version": "6.5.1", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.1.tgz", - "integrity": "sha512-eRzhrN1WSINYCDCbrz796z37LOe3m5tmW7RQf6oBntukAG1nmovJvhnwHHRMAfeoItc1m2Hk02WER2aQ/iqs+A==", - "dev": true - }, - "safe-buffer": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz", - "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==", - "dev": true - }, "statuses": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", @@ -4643,8 +4418,8 @@ "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=", "dev": true, "requires": { - "assign-symbols": "1.0.0", - "is-extendable": "1.0.1" + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -4653,7 +4428,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -4663,9 +4438,9 @@ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", "requires": { - "chardet": "0.4.2", - "iconv-lite": "0.4.23", - "tmp": "0.0.33" + "chardet": "^0.4.0", + "iconv-lite": "^0.4.17", + "tmp": "^0.0.33" } }, "extglob": { @@ -4674,14 +4449,14 @@ "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", "dev": true, "requires": { - "array-unique": "0.3.2", - "define-property": "1.0.0", - "expand-brackets": "2.1.4", - "extend-shallow": "2.0.1", - "fragment-cache": "0.2.1", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "define-property": { @@ -4690,7 +4465,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "extend-shallow": { @@ -4699,7 +4474,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "is-accessor-descriptor": { @@ -4708,7 +4483,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -4717,7 +4492,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -4726,9 +4501,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "kind-of": { @@ -4771,7 +4546,7 @@ "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } }, "figgy-pudding": { @@ -4785,17 +4560,17 @@ "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", "requires": { - "escape-string-regexp": "1.0.5" + "escape-string-regexp": "^1.0.5" } }, "file-loader": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-1.1.11.tgz", - "integrity": "sha512-TGR4HU7HUsGg6GCOPJnFk06RhWgEWFLAGWiT6rcD+GRC2keU3s9RGJ+b3Z6/U73jwwNb2gKLJ7YCrp+jvU4ALg==", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-3.0.1.tgz", + "integrity": "sha512-4sNIOXgtH/9WZq4NvlfU3Opn5ynUsqBwSLyM+I7UOwdGigTBYfVVQEwe/msZNX/j4pCJTIM14Fsw66Svo1oVrw==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "schema-utils": "0.4.5" + "loader-utils": "^1.0.2", + "schema-utils": "^1.0.0" } }, "file-uri-to-path": { @@ -4809,8 +4584,8 @@ "integrity": "sha1-jnVIqW08wjJ+5eZ0FocjozO7oqA=", "dev": true, "requires": { - "glob": "7.1.2", - "minimatch": "3.0.4" + "glob": "^7.0.3", + "minimatch": "^3.0.3" } }, "fill-range": { @@ -4819,10 +4594,10 @@ "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-number": "3.0.0", - "repeat-string": "1.6.1", - "to-regex-range": "2.1.1" + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" }, "dependencies": { "extend-shallow": { @@ -4831,7 +4606,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -4843,12 +4618,12 @@ "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "on-finished": "2.3.0", - "parseurl": "1.3.2", - "statuses": "1.4.0", - "unpipe": "1.0.0" + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.4.0", + "unpipe": "~1.0.0" }, "dependencies": { "debug": { @@ -4874,9 +4649,9 @@ "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", "dev": true, "requires": { - "commondir": "1.0.1", - "make-dir": "1.3.0", - "pkg-dir": "2.0.0" + "commondir": "^1.0.1", + "make-dir": "^1.0.0", + "pkg-dir": "^2.0.0" } }, "find-up": { @@ -4885,17 +4660,23 @@ "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "dev": true, "requires": { - "locate-path": "2.0.0" + "locate-path": "^2.0.0" } }, + "flatted": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.0.tgz", + "integrity": "sha512-R+H8IZclI8AAkSBRQJLVOsxwAoHd6WC40b4QTNWIjzAa6BXOBfQcM587MXDTVPeYaopFNWHUFLx7eNmHDSxMWg==", + "dev": true + }, "flush-write-stream": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.0.3.tgz", "integrity": "sha512-calZMC10u0FMUqoiunI2AiGIIUtUIvifNwkHhNupZH4cbNnW1Itkoh/Nf5HFYmDrwWPjrUxpkZT0KhuCq0jmGw==", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.4" } }, "follow-redirects": { @@ -4904,7 +4685,7 @@ "integrity": "sha512-v9GI1hpaqq1ZZR6pBD1+kI7O24PhDvNGNodjS3MdcEqyrahCp8zbtpv+2B/krUnSmUH80lbAS7MrdeK5IylgKg==", "dev": true, "requires": { - "debug": "3.1.0" + "debug": "^3.1.0" } }, "for-in": { @@ -4917,15 +4698,9 @@ "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz", "integrity": "sha1-xjMy9BXO3EsE2/5wz4NklMU8tEs=", "requires": { - "for-in": "1.0.2" + "for-in": "^1.0.1" } }, - "foreach": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", - "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", - "dev": true - }, "forever-agent": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", @@ -4936,9 +4711,9 @@ "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz", "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=", "requires": { - "asynckit": "0.4.0", + "asynckit": "^0.4.0", "combined-stream": "1.0.6", - "mime-types": "2.1.19" + "mime-types": "^2.1.12" } }, "forwarded": { @@ -4953,7 +4728,7 @@ "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=", "dev": true, "requires": { - "map-cache": "0.2.2" + "map-cache": "^0.2.2" } }, "fresh": { @@ -4968,8 +4743,8 @@ "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "^2.0.1", + "readable-stream": "^2.0.0" } }, "fs-access": { @@ -4978,7 +4753,7 @@ "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=", "dev": true, "requires": { - "null-check": "1.0.0" + "null-check": "^1.0.0" } }, "fs-extra": { @@ -4986,9 +4761,9 @@ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-5.0.0.tgz", "integrity": "sha512-66Pm4RYbjzdyeuqudYqhFiNBbCIuI9kgRqLPSHIlXHidW8NIQtVdkM1yeZ4lXwuhbTETv3EUGMNHAAw6hiundQ==", "requires": { - "graceful-fs": "4.1.11", - "jsonfile": "4.0.0", - "universalify": "0.1.2" + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" } }, "fs-minipass": { @@ -4997,7 +4772,7 @@ "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", "dev": true, "requires": { - "minipass": "2.3.5" + "minipass": "^2.2.1" } }, "fs-write-stream-atomic": { @@ -5006,10 +4781,10 @@ "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "iferr": "0.1.5", - "imurmurhash": "0.1.4", - "readable-stream": "2.3.6" + "graceful-fs": "^4.1.2", + "iferr": "^0.1.5", + "imurmurhash": "^0.1.4", + "readable-stream": "1 || 2" } }, "fs.realpath": { @@ -5025,8 +4800,8 @@ "dev": true, "optional": true, "requires": { - "nan": "2.10.0", - "node-pre-gyp": "0.10.0" + "nan": "^2.9.2", + "node-pre-gyp": "^0.10.0" }, "dependencies": { "abbrev": { @@ -5038,7 +4813,8 @@ "ansi-regex": { "version": "2.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "aproba": { "version": "1.2.0", @@ -5052,19 +4828,21 @@ "dev": true, "optional": true, "requires": { - "delegates": "1.0.0", - "readable-stream": "2.3.6" + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" } }, "balanced-match": { "version": "1.0.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "brace-expansion": { "version": "1.1.11", "bundled": true, "dev": true, + "optional": true, "requires": { "balanced-match": "1.0.0", "concat-map": "0.0.1" @@ -5079,17 +4857,20 @@ "code-point-at": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "concat-map": { "version": "0.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "console-control-strings": { "version": "1.1.0", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "core-util-is": { "version": "1.0.2", @@ -5130,7 +4911,7 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.2.4" + "minipass": "^2.2.1" } }, "fs.realpath": { @@ -5145,14 +4926,14 @@ "dev": true, "optional": true, "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.2" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" } }, "glob": { @@ -5161,12 +4942,12 @@ "dev": true, "optional": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "has-unicode": { @@ -5181,7 +4962,7 @@ "dev": true, "optional": true, "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": "^2.1.0" } }, "ignore-walk": { @@ -5199,14 +4980,15 @@ "dev": true, "optional": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { "version": "2.0.3", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "ini": { "version": "1.3.5", @@ -5218,8 +5000,9 @@ "version": "1.0.0", "bundled": true, "dev": true, + "optional": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "isarray": { @@ -5232,6 +5015,7 @@ "version": "3.0.4", "bundled": true, "dev": true, + "optional": true, "requires": { "brace-expansion": "1.1.11" } @@ -5239,15 +5023,17 @@ "minimist": { "version": "0.0.8", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "minipass": { "version": "2.2.4", "bundled": true, "dev": true, + "optional": true, "requires": { - "safe-buffer": "5.1.1", - "yallist": "3.0.2" + "safe-buffer": "^5.1.1", + "yallist": "^3.0.0" } }, "minizlib": { @@ -5256,13 +5042,14 @@ "dev": true, "optional": true, "requires": { - "minipass": "2.2.4" + "minipass": "^2.2.1" } }, "mkdirp": { "version": "0.5.1", "bundled": true, "dev": true, + "optional": true, "requires": { "minimist": "0.0.8" } @@ -5279,9 +5066,9 @@ "dev": true, "optional": true, "requires": { - "debug": "2.6.9", - "iconv-lite": "0.4.21", - "sax": "1.2.4" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" } }, "node-pre-gyp": { @@ -5290,16 +5077,16 @@ "dev": true, "optional": true, "requires": { - "detect-libc": "1.0.3", - "mkdirp": "0.5.1", - "needle": "2.2.0", - "nopt": "4.0.1", - "npm-packlist": "1.1.10", - "npmlog": "4.1.2", - "rc": "1.2.7", - "rimraf": "2.6.2", - "semver": "5.5.0", - "tar": "4.4.1" + "detect-libc": "^1.0.2", + "mkdirp": "^0.5.1", + "needle": "^2.2.0", + "nopt": "^4.0.1", + "npm-packlist": "^1.1.6", + "npmlog": "^4.0.2", + "rc": "^1.1.7", + "rimraf": "^2.6.1", + "semver": "^5.3.0", + "tar": "^4" } }, "nopt": { @@ -5308,8 +5095,8 @@ "dev": true, "optional": true, "requires": { - "abbrev": "1.1.1", - "osenv": "0.1.5" + "abbrev": "1", + "osenv": "^0.1.4" } }, "npm-bundled": { @@ -5324,8 +5111,8 @@ "dev": true, "optional": true, "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.3" + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npmlog": { @@ -5334,16 +5121,17 @@ "dev": true, "optional": true, "requires": { - "are-we-there-yet": "1.1.4", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "number-is-nan": { "version": "1.0.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "object-assign": { "version": "4.1.1", @@ -5355,8 +5143,9 @@ "version": "1.4.0", "bundled": true, "dev": true, + "optional": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "os-homedir": { @@ -5377,8 +5166,8 @@ "dev": true, "optional": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, "path-is-absolute": { @@ -5399,10 +5188,10 @@ "dev": true, "optional": true, "requires": { - "deep-extend": "0.5.1", - "ini": "1.3.5", - "minimist": "1.2.0", - "strip-json-comments": "2.0.1" + "deep-extend": "^0.5.1", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" }, "dependencies": { "minimist": { @@ -5419,13 +5208,13 @@ "dev": true, "optional": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.1", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" } }, "rimraf": { @@ -5434,13 +5223,14 @@ "dev": true, "optional": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "safe-buffer": { "version": "5.1.1", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "safer-buffer": { "version": "2.1.2", @@ -5476,10 +5266,11 @@ "version": "1.0.2", "bundled": true, "dev": true, + "optional": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "string_decoder": { @@ -5488,15 +5279,16 @@ "dev": true, "optional": true, "requires": { - "safe-buffer": "5.1.1" + "safe-buffer": "~5.1.0" } }, "strip-ansi": { "version": "3.0.1", "bundled": true, "dev": true, + "optional": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "strip-json-comments": { @@ -5511,13 +5303,13 @@ "dev": true, "optional": true, "requires": { - "chownr": "1.0.1", - "fs-minipass": "1.2.5", - "minipass": "2.2.4", - "minizlib": "1.1.0", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.1", - "yallist": "3.0.2" + "chownr": "^1.0.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.2.4", + "minizlib": "^1.1.0", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.1", + "yallist": "^3.0.2" } }, "util-deprecate": { @@ -5532,18 +5324,20 @@ "dev": true, "optional": true, "requires": { - "string-width": "1.0.2" + "string-width": "^1.0.2" } }, "wrappy": { "version": "1.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true }, "yallist": { "version": "3.0.2", "bundled": true, - "dev": true + "dev": true, + "optional": true } } }, @@ -5552,11 +5346,12 @@ "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz", "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=", "dev": true, + "optional": true, "requires": { - "graceful-fs": "4.1.11", - "inherits": "2.0.3", - "mkdirp": "0.5.1", - "rimraf": "2.6.2" + "graceful-fs": "^4.1.2", + "inherits": "~2.0.0", + "mkdirp": ">=0.5 0", + "rimraf": "2" } }, "ftp": { @@ -5564,7 +5359,7 @@ "resolved": "https://registry.npmjs.org/ftp/-/ftp-0.3.10.tgz", "integrity": "sha1-kZfYYa2BQvPmPVqDv+TFn3MwiF0=", "requires": { - "readable-stream": "1.1.14", + "readable-stream": "1.1.x", "xregexp": "2.0.0" }, "dependencies": { @@ -5573,49 +5368,46 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", "isarray": "0.0.1", - "string_decoder": "0.10.31" + "string_decoder": "~0.10.x" } } } }, - "function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", - "dev": true - }, "gauge": { "version": "2.7.4", "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", "dev": true, + "optional": true, "requires": { - "aproba": "1.2.0", - "console-control-strings": "1.1.0", - "has-unicode": "2.0.1", - "object-assign": "4.1.1", - "signal-exit": "3.0.2", - "string-width": "1.0.2", - "strip-ansi": "3.0.1", - "wide-align": "1.1.3" + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" }, "dependencies": { "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true + "dev": true, + "optional": true }, "is-fullwidth-code-point": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "dev": true, + "optional": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -5623,10 +5415,11 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "dev": true, + "optional": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -5634,8 +5427,9 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, + "optional": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -5647,24 +5441,7 @@ "dev": true, "optional": true, "requires": { - "globule": "1.2.1" - } - }, - "generate-function": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz", - "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=", - "dev": true, - "optional": true - }, - "generate-object-property": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz", - "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=", - "dev": true, - "optional": true, - "requires": { - "is-property": "1.0.2" + "globule": "^1.0.0" } }, "genfun": { @@ -5683,7 +5460,8 @@ "version": "4.0.1", "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz", "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=", - "dev": true + "dev": true, + "optional": true }, "get-stream": { "version": "3.0.0", @@ -5696,12 +5474,12 @@ "resolved": "https://registry.npmjs.org/get-uri/-/get-uri-2.0.2.tgz", "integrity": "sha512-ZD325dMZOgerGqF/rF6vZXyFGTAay62svjQIT+X/oU2PtxYpFxvSkbsdi+oxIrsNxlZVd4y8wUDqkaExWTI/Cw==", "requires": { - "data-uri-to-buffer": "1.2.0", - "debug": "2.6.9", - "extend": "3.0.2", - "file-uri-to-path": "1.0.0", - "ftp": "0.3.10", - "readable-stream": "2.3.6" + "data-uri-to-buffer": "1", + "debug": "2", + "extend": "3", + "file-uri-to-path": "1", + "ftp": "~0.3.10", + "readable-stream": "2" }, "dependencies": { "debug": { @@ -5725,7 +5503,7 @@ "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", "requires": { - "assert-plus": "1.0.0" + "assert-plus": "^1.0.0" } }, "glob": { @@ -5734,12 +5512,12 @@ "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "glob-parent": { @@ -5748,8 +5526,8 @@ "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", "dev": true, "requires": { - "is-glob": "3.1.0", - "path-dirname": "1.0.2" + "is-glob": "^3.1.0", + "path-dirname": "^1.0.0" }, "dependencies": { "is-glob": { @@ -5758,7 +5536,7 @@ "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", "dev": true, "requires": { - "is-extglob": "2.1.1" + "is-extglob": "^2.1.0" } } } @@ -5775,12 +5553,12 @@ "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=", "dev": true, "requires": { - "array-union": "1.0.2", - "dir-glob": "2.0.0", - "glob": "7.1.2", - "ignore": "3.3.10", - "pify": "3.0.0", - "slash": "1.0.0" + "array-union": "^1.0.1", + "dir-glob": "^2.0.0", + "glob": "^7.1.2", + "ignore": "^3.3.5", + "pify": "^3.0.0", + "slash": "^1.0.0" } }, "globule": { @@ -5790,9 +5568,9 @@ "dev": true, "optional": true, "requires": { - "glob": "7.1.2", - "lodash": "4.17.11", - "minimatch": "3.0.4" + "glob": "~7.1.1", + "lodash": "~4.17.10", + "minimatch": "~3.0.2" } }, "graceful-fs": { @@ -5805,101 +5583,34 @@ "resolved": "https://registry.npmjs.org/graphlib/-/graphlib-2.1.5.tgz", "integrity": "sha512-XvtbqCcw+EM5SqQrIetIKKD+uZVNQtDPD1goIg7K73RuRZtVI5rYMdcCVSHm/AS1sCBZ7vt0p5WgXouucHQaOA==", "requires": { - "lodash": "4.17.11" + "lodash": "^4.11.1" } }, "handle-thing": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-1.2.5.tgz", - "integrity": "sha1-/Xqtcmvxpf0W38KbL3pmAdJxOcQ=", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.0.tgz", + "integrity": "sha512-d4sze1JNC454Wdo2fkuyzCr6aHcbL6PGGuFAz0Li/NcOm1tCHGnWDRmJP85dh9IhQErTc2svWFEX5xHIOo//kQ==", "dev": true }, "handlebars": { - "version": "4.0.11", - "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz", - "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.1.0.tgz", + "integrity": "sha512-l2jRuU1NAWK6AW5qqcTATWQJvNPEwkM7NEKSiv/gqOsoSQbVoWyqVEY5GS+XPQ88zLNmqASRpzfdm8d79hJS+w==", "dev": true, "requires": { - "async": "1.5.2", - "optimist": "0.6.1", - "source-map": "0.4.4", - "uglify-js": "2.8.29" + "async": "^2.5.0", + "optimist": "^0.6.1", + "source-map": "^0.6.1", + "uglify-js": "^3.1.4" }, "dependencies": { - "camelcase": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-1.2.1.tgz", - "integrity": "sha1-m7UwTS4LVmmLLHWLCKPqqdqlijk=", - "dev": true, - "optional": true - }, - "cliui": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-2.1.0.tgz", - "integrity": "sha1-S0dXYP+AJkx2LDoXGQMukcf+oNE=", - "dev": true, - "optional": true, - "requires": { - "center-align": "0.1.3", - "right-align": "0.1.3", - "wordwrap": "0.0.2" - } - }, - "source-map": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz", - "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", - "dev": true, - "requires": { - "amdefine": "1.0.1" - } - }, - "uglify-js": { - "version": "2.8.29", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-2.8.29.tgz", - "integrity": "sha1-KcVzMUgFe7Th913zW3qcty5qWd0=", - "dev": true, - "optional": true, - "requires": { - "source-map": "0.5.7", - "uglify-to-browserify": "1.0.2", - "yargs": "3.10.0" - }, - "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true, - "optional": true - } - } - }, - "window-size": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.0.tgz", - "integrity": "sha1-VDjNLqk7IC76Ohn+iIeu58lPnJ0=", - "dev": true, - "optional": true - }, - "wordwrap": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-0.0.2.tgz", - "integrity": "sha1-t5Zpu0LstAn4PVg8rVLKF+qhZD8=", - "dev": true, - "optional": true - }, - "yargs": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.10.0.tgz", - "integrity": "sha1-9+572FfdfB0tOMDnTvvWgdFDH9E=", + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", "dev": true, - "optional": true, "requires": { - "camelcase": "1.2.1", - "cliui": "2.1.0", - "decamelize": "1.2.0", - "window-size": "0.1.0" + "lodash": "^4.17.11" } } } @@ -5914,17 +5625,8 @@ "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz", "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=", "requires": { - "ajv": "5.5.2", - "har-schema": "2.0.0" - } - }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "1.1.1" + "ajv": "^5.1.0", + "har-schema": "^2.0.0" } }, "has-ansi": { @@ -5933,7 +5635,7 @@ "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -5972,17 +5674,12 @@ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=" }, - "has-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.0.tgz", - "integrity": "sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=", - "dev": true - }, "has-unicode": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true + "dev": true, + "optional": true }, "has-value": { "version": "1.0.0", @@ -5990,9 +5687,9 @@ "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "1.0.0", - "isobject": "3.0.1" + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" } }, "has-values": { @@ -6001,8 +5698,8 @@ "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=", "dev": true, "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "^3.0.0", + "kind-of": "^4.0.0" }, "dependencies": { "kind-of": { @@ -6011,7 +5708,7 @@ "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", "dev": true, "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } } } @@ -6021,7 +5718,7 @@ "resolved": "https://registry.npmjs.org/hasbin/-/hasbin-1.2.3.tgz", "integrity": "sha1-eMWSaJPIAhXCtWiuH9P8q3omlrA=", "requires": { - "async": "1.5.2" + "async": "~1.5" } }, "hash-base": { @@ -6030,48 +5727,18 @@ "integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.2" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "hash.js": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.5.tgz", - "integrity": "sha512-eWI5HG9Np+eHV1KQhisXWwM+4EPPYe5dFX1UZZH7k/E3JzDEazVH+VGlZi6R94ZqImq+A3D1mCEtrFIfg/E7sA==", - "dev": true, - "requires": { - "inherits": "2.0.3", - "minimalistic-assert": "1.0.1" - } - }, - "hawk": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-3.1.3.tgz", - "integrity": "sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ=", - "dev": true, - "optional": true, - "requires": { - "boom": "2.10.1", - "cryptiles": "2.0.5", - "hoek": "2.16.3", - "sntp": "1.0.9" - } - }, - "he": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", - "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=", - "dev": true - }, - "hipchat-notifier": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/hipchat-notifier/-/hipchat-notifier-1.1.0.tgz", - "integrity": "sha1-ttJJdVQ3wZEII2d5nTupoPI7Ix4=", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz", + "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==", "dev": true, - "optional": true, "requires": { - "lodash": "4.17.11", - "request": "2.87.0" + "inherits": "^2.0.3", + "minimalistic-assert": "^1.0.1" } }, "hmac-drbg": { @@ -6080,24 +5747,9 @@ "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=", "dev": true, "requires": { - "hash.js": "1.1.5", - "minimalistic-assert": "1.0.1", - "minimalistic-crypto-utils": "1.0.1" - } - }, - "hoek": { - "version": "2.16.3", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-2.16.3.tgz", - "integrity": "sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0=", - "dev": true - }, - "homedir-polyfill": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.1.tgz", - "integrity": "sha1-TCu8inWJmP7r9e1oWA921GdotLw=", - "dev": true, - "requires": { - "parse-passwd": "1.0.0" + "hash.js": "^1.0.3", + "minimalistic-assert": "^1.0.0", + "minimalistic-crypto-utils": "^1.0.1" } }, "hosted-git-info": { @@ -6111,10 +5763,10 @@ "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=", "dev": true, "requires": { - "inherits": "2.0.3", - "obuf": "1.1.2", - "readable-stream": "2.3.6", - "wbuf": "1.7.3" + "inherits": "^2.0.1", + "obuf": "^1.0.0", + "readable-stream": "^2.0.1", + "wbuf": "^1.1.0" } }, "html-entities": { @@ -6123,85 +5775,6 @@ "integrity": "sha1-DfKTUfByEWNRXfueVUPl9u7VFi8=", "dev": true }, - "html-minifier": { - "version": "3.5.19", - "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.19.tgz", - "integrity": "sha512-Qr2JC9nsjK8oCrEmuB430ZIA8YWbF3D5LSjywD75FTuXmeqacwHgIM8wp3vHYzzPbklSjp53RdmDuzR4ub2HzA==", - "dev": true, - "requires": { - "camel-case": "3.0.0", - "clean-css": "4.1.11", - "commander": "2.16.0", - "he": "1.1.1", - "param-case": "2.1.1", - "relateurl": "0.2.7", - "uglify-js": "3.4.6" - } - }, - "html-webpack-plugin": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz", - "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=", - "dev": true, - "requires": { - "html-minifier": "3.5.19", - "loader-utils": "0.2.17", - "lodash": "4.17.11", - "pretty-error": "2.1.1", - "tapable": "1.0.0", - "toposort": "1.0.7", - "util.promisify": "1.0.0" - }, - "dependencies": { - "loader-utils": { - "version": "0.2.17", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz", - "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=", - "dev": true, - "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1", - "object-assign": "4.1.1" - } - } - } - }, - "htmlparser2": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.3.0.tgz", - "integrity": "sha1-zHDQWln2VC5D8OaFyYLhTJJKnv4=", - "dev": true, - "requires": { - "domelementtype": "1.3.0", - "domhandler": "2.1.0", - "domutils": "1.1.6", - "readable-stream": "1.0.34" - }, - "dependencies": { - "domutils": { - "version": "1.1.6", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.1.6.tgz", - "integrity": "sha1-vdw94Jm5ou+sxRxiPyj0FuzFdIU=", - "dev": true, - "requires": { - "domelementtype": "1.3.0" - } - }, - "readable-stream": { - "version": "1.0.34", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz", - "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=", - "dev": true, - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - } - } - }, "http-cache-semantics": { "version": "3.8.1", "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz", @@ -6219,16 +5792,16 @@ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=", "requires": { - "depd": "1.1.2", + "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.0", - "statuses": "1.5.0" + "statuses": ">= 1.4.0 < 2" } }, "http-parser-js": { - "version": "0.4.13", - "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.4.13.tgz", - "integrity": "sha1-O9bW/ebjFyyTNMOzO2wZPYD+ETc=", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.0.tgz", + "integrity": "sha512-cZdEF7r4gfRIq7ezX9J0T+kQmJNOub71dWbgAXVHDct80TKP4MCETtZQ31xyv38UwgzkWPYF/Xc0ge55dW9Z9w==", "dev": true }, "http-proxy": { @@ -6237,9 +5810,9 @@ "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==", "dev": true, "requires": { - "eventemitter3": "3.1.0", - "follow-redirects": "1.5.1", - "requires-port": "1.0.0" + "eventemitter3": "^3.0.0", + "follow-redirects": "^1.0.0", + "requires-port": "^1.0.0" } }, "http-proxy-agent": { @@ -6247,7 +5820,7 @@ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz", "integrity": "sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg==", "requires": { - "agent-base": "4.2.1", + "agent-base": "4", "debug": "3.1.0" } }, @@ -6257,10 +5830,10 @@ "integrity": "sha512-Fs25KVMPAIIcgjMZkVHJoKg9VcXcC1C8yb9JUgeDvVXY0S/zgVIhMb+qVswDIgtJe2DfckMSY2d6TuTEutlk6Q==", "dev": true, "requires": { - "http-proxy": "1.17.0", - "is-glob": "4.0.0", - "lodash": "4.17.11", - "micromatch": "3.1.10" + "http-proxy": "^1.16.2", + "is-glob": "^4.0.0", + "lodash": "^4.17.5", + "micromatch": "^3.1.9" } }, "http-signature": { @@ -6268,27 +5841,11 @@ "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", "requires": { - "assert-plus": "1.0.0", - "jsprim": "1.4.1", - "sshpk": "1.14.2" - } - }, - "httpntlm": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/httpntlm/-/httpntlm-1.6.1.tgz", - "integrity": "sha1-rQFScUOi6Hc8+uapb1hla7UqNLI=", - "dev": true, - "requires": { - "httpreq": "0.4.24", - "underscore": "1.7.0" + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" } }, - "httpreq": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/httpreq/-/httpreq-0.4.24.tgz", - "integrity": "sha1-QzX/2CzZaWaKOUZckprGHWOTYn8=", - "dev": true - }, "https-browserify": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz", @@ -6300,8 +5857,8 @@ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-2.2.1.tgz", "integrity": "sha512-HPCTS1LW51bcyMYbxUIOO4HEOlQ1/1qRaFWcyxvwaqUS9TY88aoEuHUY33kuAh1YhVVaDQhLZsnPd+XNARWZlQ==", "requires": { - "agent-base": "4.2.1", - "debug": "3.1.0" + "agent-base": "^4.1.0", + "debug": "^3.1.0" } }, "humanize-ms": { @@ -6310,7 +5867,7 @@ "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.0.0" } }, "iconv-lite": { @@ -6318,7 +5875,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.23.tgz", "integrity": "sha512-neyTUVFtahjf0mB3dZT77u+8O0QB89jFdnBkd5P1JgYPbPaia3gXXOVL2fq8VyU2gMMD7SaN7QukTB/pmXYvDA==", "requires": { - "safer-buffer": "2.1.2" + "safer-buffer": ">= 2.1.2 < 3" } }, "ieee754": { @@ -6345,7 +5902,7 @@ "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", "dev": true, "requires": { - "minimatch": "3.0.4" + "minimatch": "^3.0.4" } }, "image-size": { @@ -6367,7 +5924,7 @@ "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=", "dev": true, "requires": { - "import-from": "2.1.0" + "import-from": "^2.1.0" } }, "import-from": { @@ -6376,17 +5933,71 @@ "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=", "dev": true, "requires": { - "resolve-from": "3.0.0" + "resolve-from": "^3.0.0" } }, "import-local": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/import-local/-/import-local-1.0.0.tgz", - "integrity": "sha512-vAaZHieK9qjGo58agRBg+bhHX3hoTZU/Oa3GESWLz7t1U62fk63aHuDJJEteXoDeTCcPmUT+z38gkHPZkkmpmQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz", + "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==", "dev": true, "requires": { - "pkg-dir": "2.0.0", - "resolve-cwd": "2.0.0" + "pkg-dir": "^3.0.0", + "resolve-cwd": "^2.0.0" + }, + "dependencies": { + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + } } }, "imurmurhash": { @@ -6406,8 +6017,9 @@ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz", "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=", "dev": true, + "optional": true, "requires": { - "repeating": "2.0.1" + "repeating": "^2.0.0" } }, "indexof": { @@ -6416,21 +6028,14 @@ "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=", "dev": true }, - "inflection": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.12.0.tgz", - "integrity": "sha1-ogCTVlbW9fa8TcdQLhrstwMihBY=", - "dev": true, - "optional": true - }, "inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, "requires": { - "once": "1.4.0", - "wrappy": "1.0.2" + "once": "^1.3.0", + "wrappy": "1" } }, "inherits": { @@ -6448,29 +6053,30 @@ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", "requires": { - "ansi-escapes": "3.1.0", - "chalk": "2.4.1", - "cli-cursor": "2.1.0", - "cli-width": "2.2.0", - "external-editor": "2.2.0", - "figures": "2.0.0", - "lodash": "4.17.11", + "ansi-escapes": "^3.0.0", + "chalk": "^2.0.0", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^2.0.4", + "figures": "^2.0.0", + "lodash": "^4.3.0", "mute-stream": "0.0.7", - "run-async": "2.3.0", - "rx-lite": "4.0.8", - "rx-lite-aggregates": "4.0.8", - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "through": "2.3.8" + "run-async": "^2.2.0", + "rx-lite": "^4.0.8", + "rx-lite-aggregates": "^4.0.8", + "string-width": "^2.1.0", + "strip-ansi": "^4.0.0", + "through": "^2.3.6" } }, "internal-ip": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-1.2.0.tgz", - "integrity": "sha1-rp+/k7mEh4eF1QqN4bNWlWBYz1w=", + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-3.0.1.tgz", + "integrity": "sha512-NXXgESC2nNVtU+pqmC9e6R8B1GpKxzsAQhffvh5AL79qKnodd+L7tnEQmTiUAVngqLalPbSqRA7XGIEL5nCd0Q==", "dev": true, "requires": { - "meow": "3.7.0" + "default-gateway": "^2.6.0", + "ipaddr.js": "^1.5.2" } }, "interpret": { @@ -6485,7 +6091,7 @@ "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", "dev": true, "requires": { - "loose-envify": "1.4.0" + "loose-envify": "^1.0.0" } }, "invert-kv": { @@ -6498,6 +6104,12 @@ "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz", "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=" }, + "ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "dev": true + }, "ipaddr.js": { "version": "1.8.0", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.8.0.tgz", @@ -6510,7 +6122,7 @@ "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-arrayish": { @@ -6525,7 +6137,7 @@ "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", "dev": true, "requires": { - "binary-extensions": "1.11.0" + "binary-extensions": "^1.0.0" } }, "is-buffer": { @@ -6539,39 +6151,27 @@ "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=", "dev": true, "requires": { - "builtin-modules": "1.1.1" + "builtin-modules": "^1.0.0" } }, - "is-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true - }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, - "is-date-object": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.1.tgz", - "integrity": "sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=", - "dev": true - }, "is-descriptor": { "version": "0.1.6", "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", "dev": true, "requires": { - "is-accessor-descriptor": "0.1.6", - "is-data-descriptor": "0.1.4", - "kind-of": "5.1.0" + "is-accessor-descriptor": "^0.1.6", + "is-data-descriptor": "^0.1.4", + "kind-of": "^5.0.0" }, "dependencies": { "kind-of": { @@ -6605,7 +6205,7 @@ "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "dev": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "is-fullwidth-code-point": { @@ -6619,28 +6219,7 @@ "integrity": "sha1-lSHHaEXMJhCoUgPd8ICpWML/q8A=", "dev": true, "requires": { - "is-extglob": "2.1.1" - } - }, - "is-my-ip-valid": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz", - "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==", - "dev": true, - "optional": true - }, - "is-my-json-valid": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz", - "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==", - "dev": true, - "optional": true, - "requires": { - "generate-function": "2.0.0", - "generate-object-property": "1.2.0", - "is-my-ip-valid": "1.0.0", - "jsonpointer": "4.0.1", - "xtend": "4.0.1" + "is-extglob": "^2.1.1" } }, "is-number": { @@ -6649,7 +6228,7 @@ "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "is-obj": { @@ -6669,7 +6248,7 @@ "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==", "dev": true, "requires": { - "is-path-inside": "1.0.1" + "is-path-inside": "^1.0.0" } }, "is-path-inside": { @@ -6678,7 +6257,7 @@ "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=", "dev": true, "requires": { - "path-is-inside": "1.0.2" + "path-is-inside": "^1.0.1" } }, "is-plain-object": { @@ -6686,7 +6265,7 @@ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" } }, "is-promise": { @@ -6694,34 +6273,12 @@ "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=", - "dev": true, - "optional": true - }, - "is-regex": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", - "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", - "dev": true, - "requires": { - "has": "1.0.3" - } - }, "is-stream": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", "dev": true }, - "is-symbol": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.1.tgz", - "integrity": "sha1-PMWfAAJRlLarLjjbrmaJJWtmBXI=", - "dev": true - }, "is-typedarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", @@ -6731,7 +6288,8 @@ "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz", "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=", - "dev": true + "dev": true, + "optional": true }, "is-windows": { "version": "1.0.2", @@ -6750,10 +6308,13 @@ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" }, "isbinaryfile": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz", - "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=", - "dev": true + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.3.tgz", + "integrity": "sha512-8cJBL5tTd2OS0dM4jz07wQd5g0dCCqIhUxPIGtZfa5L6hWlvV5MHTITy/DBAsF+Oe2LS1X3krBUhNwaGUWpWxw==", + "dev": true, + "requires": { + "buffer-alloc": "^1.2.0" + } }, "isexe": { "version": "2.0.0", @@ -6771,132 +6332,55 @@ "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" }, - "istanbul": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz", - "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=", - "dev": true, - "requires": { - "abbrev": "1.0.9", - "async": "1.5.2", - "escodegen": "1.8.1", - "esprima": "2.7.3", - "glob": "5.0.15", - "handlebars": "4.0.11", - "js-yaml": "3.12.0", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "once": "1.4.0", - "resolve": "1.1.7", - "supports-color": "3.2.3", - "which": "1.3.1", - "wordwrap": "1.0.0" + "istanbul-api": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-2.1.1.tgz", + "integrity": "sha512-kVmYrehiwyeBAk/wE71tW6emzLiHGjYIiDrc8sfyty4F8M02/lrgXSm+R1kXysmF20zArvmZXjlE/mg24TVPJw==", + "dev": true, + "requires": { + "async": "^2.6.1", + "compare-versions": "^3.2.1", + "fileset": "^2.0.3", + "istanbul-lib-coverage": "^2.0.3", + "istanbul-lib-hook": "^2.0.3", + "istanbul-lib-instrument": "^3.1.0", + "istanbul-lib-report": "^2.0.4", + "istanbul-lib-source-maps": "^3.0.2", + "istanbul-reports": "^2.1.1", + "js-yaml": "^3.12.0", + "make-dir": "^1.3.0", + "minimatch": "^3.0.4", + "once": "^1.4.0" }, "dependencies": { - "abbrev": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz", - "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=", - "dev": true - }, - "escodegen": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz", - "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=", - "dev": true, - "requires": { - "esprima": "2.7.3", - "estraverse": "1.9.3", - "esutils": "2.0.2", - "optionator": "0.8.2", - "source-map": "0.2.0" - } - }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", - "dev": true - }, - "estraverse": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz", - "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=", - "dev": true - }, - "glob": { - "version": "5.0.15", - "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz", - "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=", + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", "dev": true, "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "lodash": "^4.17.11" } }, - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", - "dev": true - }, - "resolve": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.1.7.tgz", - "integrity": "sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=", + "istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", "dev": true }, - "source-map": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz", - "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=", + "istanbul-lib-instrument": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-3.1.0.tgz", + "integrity": "sha512-ooVllVGT38HIk8MxDj/OIHXSYvH+1tq/Vb38s8ixt9GoJadXska4WkGY+0wkmtYCZNYtaARniH/DixUGGLZ0uA==", "dev": true, - "optional": true, "requires": { - "amdefine": "1.0.1" - } - }, - "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", - "dev": true, - "requires": { - "has-flag": "1.0.0" - } - } - } - }, - "istanbul-api": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/istanbul-api/-/istanbul-api-1.3.1.tgz", - "integrity": "sha512-duj6AlLcsWNwUpfyfHt0nWIeRiZpuShnP40YTxOGQgtaN8fd6JYSxsvxUphTDy8V5MfDXo4s/xVCIIvVCO808g==", - "dev": true, - "requires": { - "async": "2.6.1", - "compare-versions": "3.3.0", - "fileset": "2.0.3", - "istanbul-lib-coverage": "1.2.0", - "istanbul-lib-hook": "1.2.1", - "istanbul-lib-instrument": "1.10.1", - "istanbul-lib-report": "1.1.4", - "istanbul-lib-source-maps": "1.2.5", - "istanbul-reports": "1.3.0", - "js-yaml": "3.12.0", - "mkdirp": "0.5.1", - "once": "1.4.0" - }, - "dependencies": { - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", - "dev": true, - "requires": { - "lodash": "4.17.11" + "@babel/generator": "^7.0.0", + "@babel/parser": "^7.0.0", + "@babel/template": "^7.0.0", + "@babel/traverse": "^7.0.0", + "@babel/types": "^7.0.0", + "istanbul-lib-coverage": "^2.0.3", + "semver": "^5.5.0" } } } @@ -6907,10 +6391,10 @@ "integrity": "sha512-a5SPObZgS0jB/ixaKSMdn6n/gXSrK2S6q/UfRJBT3e6gQmVjwZROTODQsYW5ZNwOu78hG62Y3fWlebaVOL0C+w==", "dev": true, "requires": { - "convert-source-map": "1.5.1", - "istanbul-lib-instrument": "1.10.1", - "loader-utils": "1.1.0", - "schema-utils": "0.3.0" + "convert-source-map": "^1.5.0", + "istanbul-lib-instrument": "^1.7.3", + "loader-utils": "^1.1.0", + "schema-utils": "^0.3.0" }, "dependencies": { "schema-utils": { @@ -6919,7 +6403,7 @@ "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", "dev": true, "requires": { - "ajv": "5.5.2" + "ajv": "^5.0.0" } } } @@ -6931,12 +6415,12 @@ "dev": true }, "istanbul-lib-hook": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-1.2.1.tgz", - "integrity": "sha512-eLAMkPG9FU0v5L02lIkcj/2/Zlz9OuluaXikdr5iStk8FDbSwAixTK9TkYxbF0eNnzAJTwM2fkV2A1tpsIp4Jg==", + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-2.0.3.tgz", + "integrity": "sha512-CLmEqwEhuCYtGcpNVJjLV1DQyVnIqavMLFHV/DP+np/g3qvdxu3gsPqYoJMXm15sN84xOlckFB3VNvRbf5yEgA==", "dev": true, "requires": { - "append-transform": "1.0.0" + "append-transform": "^1.0.0" } }, "istanbul-lib-instrument": { @@ -6945,72 +6429,86 @@ "integrity": "sha512-1dYuzkOCbuR5GRJqySuZdsmsNKPL3PTuyPevQfoCXJePT9C8y1ga75neU+Tuy9+yS3G/dgx8wgOmp2KLpgdoeQ==", "dev": true, "requires": { - "babel-generator": "6.26.1", - "babel-template": "6.26.0", - "babel-traverse": "6.26.0", - "babel-types": "6.26.0", - "babylon": "6.18.0", - "istanbul-lib-coverage": "1.2.0", - "semver": "5.5.0" + "babel-generator": "^6.18.0", + "babel-template": "^6.16.0", + "babel-traverse": "^6.18.0", + "babel-types": "^6.18.0", + "babylon": "^6.18.0", + "istanbul-lib-coverage": "^1.2.0", + "semver": "^5.3.0" } }, "istanbul-lib-report": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-1.1.4.tgz", - "integrity": "sha512-Azqvq5tT0U09nrncK3q82e/Zjkxa4tkFZv7E6VcqP0QCPn6oNljDPfrZEC/umNXds2t7b8sRJfs6Kmpzt8m2kA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-2.0.4.tgz", + "integrity": "sha512-sOiLZLAWpA0+3b5w5/dq0cjm2rrNdAfHWaGhmn7XEFW6X++IV9Ohn+pnELAl9K3rfpaeBfbmH9JU5sejacdLeA==", "dev": true, "requires": { - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "path-parse": "1.0.5", - "supports-color": "3.2.3" + "istanbul-lib-coverage": "^2.0.3", + "make-dir": "^1.3.0", + "supports-color": "^6.0.0" }, "dependencies": { - "has-flag": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz", - "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=", + "istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", "dev": true }, "supports-color": { - "version": "3.2.3", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-3.2.3.tgz", - "integrity": "sha1-ZawFBLOVQXHYpklGsq48u4pfVPY=", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", "dev": true, "requires": { - "has-flag": "1.0.0" + "has-flag": "^3.0.0" } } } }, "istanbul-lib-source-maps": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-1.2.5.tgz", - "integrity": "sha512-8O2T/3VhrQHn0XcJbP1/GN7kXMiRAlPi+fj3uEHrjBD8Oz7Py0prSC25C09NuAZS6bgW1NNKAvCSHZXB0irSGA==", + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-3.0.2.tgz", + "integrity": "sha512-JX4v0CiKTGp9fZPmoxpu9YEkPbEqCqBbO3403VabKjH+NRXo72HafD5UgnjTEqHL2SAjaZK1XDuDOkn6I5QVfQ==", "dev": true, "requires": { - "debug": "3.1.0", - "istanbul-lib-coverage": "1.2.0", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "source-map": "0.5.7" + "debug": "^4.1.1", + "istanbul-lib-coverage": "^2.0.3", + "make-dir": "^1.3.0", + "rimraf": "^2.6.2", + "source-map": "^0.6.1" }, "dependencies": { - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", + "debug": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", + "dev": true, + "requires": { + "ms": "^2.1.1" + } + }, + "istanbul-lib-coverage": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz", + "integrity": "sha512-dKWuzRGCs4G+67VfW9pBFFz2Jpi4vSp/k7zBcJ888ofV5Mi1g5CUML5GvMvV6u9Cjybftu+E8Cgp+k0dI1E5lw==", + "dev": true + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", "dev": true } } }, "istanbul-reports": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-1.3.0.tgz", - "integrity": "sha512-y2Z2IMqE1gefWUaVjrBm0mSKvUkaBy9Vqz8iwr/r40Y9hBbIteH5wqHG/9DLTfJ9xUnUT2j7A3+VVJ6EaYBllA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-2.1.1.tgz", + "integrity": "sha512-FzNahnidyEPBCI0HcufJoSEoKykesRlFcSzQqjH9x0+LC8tnnE/p/90PBLu8iZTxr8yYZNyTtiAujUqyN+CIxw==", "dev": true, "requires": { - "handlebars": "4.0.11" + "handlebars": "^4.1.0" } }, "jasmine": { @@ -7019,9 +6517,9 @@ "integrity": "sha1-awicChFXax8W3xG4AUbZHU6Lij4=", "dev": true, "requires": { - "exit": "0.1.2", - "glob": "7.1.2", - "jasmine-core": "2.8.0" + "exit": "^0.1.2", + "glob": "^7.0.6", + "jasmine-core": "~2.8.0" }, "dependencies": { "jasmine-core": { @@ -7039,9 +6537,9 @@ "dev": true }, "jasmine-spec-reporter": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.1.1.tgz", - "integrity": "sha1-Wm1Yq11hvqcwn7wnkjlRF1axtYg=", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/jasmine-spec-reporter/-/jasmine-spec-reporter-4.2.1.tgz", + "integrity": "sha512-FZBoZu7VE5nR7Nilzy+Np8KuVIOxF4oXDPDknehCYBDE080EnlPu0afdZNmpGDBRCUBv3mj5qgqCRmk6W/K8vg==", "dev": true, "requires": { "colors": "1.1.2" @@ -7054,9 +6552,9 @@ "dev": true }, "js-base64": { - "version": "2.4.8", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.4.8.tgz", - "integrity": "sha512-hm2nYpDrwoO/OzBhdcqs/XGT6XjSuSSCVEpia+Kl2J6x4CYt5hISlVL/AYU1khoDXv0AQVgxtdJySb9gjAn56Q==", + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", + "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", "dev": true, "optional": true }, @@ -7071,8 +6569,8 @@ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz", "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==", "requires": { - "argparse": "1.0.10", - "esprima": "4.0.1" + "argparse": "^1.0.7", + "esprima": "^4.0.0" }, "dependencies": { "esprima": { @@ -7110,16 +6608,6 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.3.1.tgz", "integrity": "sha1-NJptRMU6Ud6JtAgFxdXlm0F9M0A=" }, - "json-stable-stringify": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz", - "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=", - "dev": true, - "optional": true, - "requires": { - "jsonify": "0.0.0" - } - }, "json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", @@ -7132,39 +6620,36 @@ "dev": true }, "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", + "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", + "dev": true, + "requires": { + "minimist": "^1.2.0" + }, + "dependencies": { + "minimist": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", + "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", + "dev": true + } + } }, "jsonfile": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "requires": { - "graceful-fs": "4.1.11" + "graceful-fs": "^4.1.6" } }, - "jsonify": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz", - "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=", - "dev": true, - "optional": true - }, "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", "integrity": "sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA=", "dev": true }, - "jsonpointer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz", - "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=", - "dev": true, - "optional": true - }, "jsprim": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", @@ -7182,11 +6667,11 @@ "integrity": "sha512-5W8NUaFRFRqTOL7ZDDrx5qWHJyBXy6velVudIzQUSoqAAYqzSh2Z7/m0Rf1QbmQJccegD0r+YZxBjzqoBiEeJQ==", "dev": true, "requires": { - "core-js": "2.3.0", - "es6-promise": "3.0.2", - "lie": "3.1.1", - "pako": "1.0.6", - "readable-stream": "2.0.6" + "core-js": "~2.3.0", + "es6-promise": "~3.0.2", + "lie": "~3.1.0", + "pako": "~1.0.2", + "readable-stream": "~2.0.6" }, "dependencies": { "core-js": { @@ -7219,59 +6704,67 @@ "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", "dev": true, "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "1.0.7", - "string_decoder": "0.10.31", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "~1.0.0", + "process-nextick-args": "~1.0.6", + "string_decoder": "~0.10.x", + "util-deprecate": "~1.0.1" } } } }, "karma": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/karma/-/karma-2.0.5.tgz", - "integrity": "sha512-rECezBeY7mjzGUWhFlB7CvPHgkHJLXyUmWg+6vHCEsdWNUTnmiS6jRrIMcJEWgU2DUGZzGWG0bTRVky8fsDTOA==", - "dev": true, - "requires": { - "bluebird": "3.5.1", - "body-parser": "1.18.2", - "chokidar": "2.0.4", - "colors": "1.1.2", - "combine-lists": "1.0.1", - "connect": "3.6.6", - "core-js": "2.5.7", - "di": "0.0.1", - "dom-serialize": "2.2.1", - "expand-braces": "0.1.2", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "http-proxy": "1.17.0", - "isbinaryfile": "3.0.2", - "lodash": "4.17.11", - "log4js": "2.11.0", - "mime": "1.6.0", - "minimatch": "3.0.4", - "optimist": "0.6.1", - "qjobs": "1.2.0", - "range-parser": "1.2.0", - "rimraf": "2.6.2", - "safe-buffer": "5.1.2", - "socket.io": "2.0.4", - "source-map": "0.6.1", + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/karma/-/karma-4.0.1.tgz", + "integrity": "sha512-ind+4s03BqIXas7ZmraV3/kc5+mnqwCd+VDX1FndS6jxbt03kQKX2vXrWxNLuCjVYmhMwOZosAEKMM0a2q7w7A==", + "dev": true, + "requires": { + "bluebird": "^3.3.0", + "body-parser": "^1.16.1", + "braces": "^2.3.2", + "chokidar": "^2.0.3", + "colors": "^1.1.0", + "connect": "^3.6.0", + "core-js": "^2.2.0", + "di": "^0.0.1", + "dom-serialize": "^2.2.0", + "flatted": "^2.0.0", + "glob": "^7.1.1", + "graceful-fs": "^4.1.2", + "http-proxy": "^1.13.0", + "isbinaryfile": "^3.0.0", + "lodash": "^4.17.11", + "log4js": "^4.0.0", + "mime": "^2.3.1", + "minimatch": "^3.0.2", + "optimist": "^0.6.1", + "qjobs": "^1.1.4", + "range-parser": "^1.2.0", + "rimraf": "^2.6.0", + "safe-buffer": "^5.0.1", + "socket.io": "2.1.1", + "source-map": "^0.6.1", "tmp": "0.0.33", - "useragent": "2.2.1" + "useragent": "2.3.0" + }, + "dependencies": { + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + } } }, "karma-chrome-launcher": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.1.1.tgz", - "integrity": "sha1-IWh5xorATY1RQOmWGboEtZr9Rs8=", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/karma-chrome-launcher/-/karma-chrome-launcher-2.2.0.tgz", + "integrity": "sha512-uf/ZVpAabDBPvdPdveyk1EPgbnloPvFFGgmRhYLTDH7gEB4nZdSBk8yTU47w1g/drLSx5uMOkjKk7IWKfWg/+w==", "dev": true, "requires": { - "fs-access": "1.0.1", - "which": "1.3.1" + "fs-access": "^1.0.0", + "which": "^1.2.1" } }, "karma-cli": { @@ -7280,17 +6773,17 @@ "integrity": "sha1-rmw8WKMTodALRRZMRVubhs4X+WA=", "dev": true, "requires": { - "resolve": "1.8.1" + "resolve": "^1.1.6" } }, "karma-coverage-istanbul-reporter": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-1.4.3.tgz", - "integrity": "sha1-O13/RmT6W41RlrmInj9hwforgNk=", + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/karma-coverage-istanbul-reporter/-/karma-coverage-istanbul-reporter-2.0.5.tgz", + "integrity": "sha512-yPvAlKtY3y+rKKWbOo0CzBMVTvJEeMOgbMXuVv3yWvS8YtYKC98AU9vFF0mVBZ2RP1E9SgS90+PT6Kf14P3S4w==", "dev": true, "requires": { - "istanbul-api": "1.3.1", - "minimatch": "3.0.4" + "istanbul-api": "^2.1.1", + "minimatch": "^3.0.4" } }, "karma-jasmine": { @@ -7305,7 +6798,7 @@ "integrity": "sha1-SKjl7xiAdhfuK14zwRlMNbQ5Ukw=", "dev": true, "requires": { - "karma-jasmine": "1.1.2" + "karma-jasmine": "^1.0.2" } }, "karma-source-map-support": { @@ -7314,13 +6807,13 @@ "integrity": "sha512-HcPqdAusNez/ywa+biN4EphGz62MmQyPggUsDfsHqa7tSe4jdsxgvTKuDfIazjL+IOxpVWyT7Pr4dhAV+sxX5Q==", "dev": true, "requires": { - "source-map-support": "0.5.6" + "source-map-support": "^0.5.5" } }, "killable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.0.tgz", - "integrity": "sha1-2ouEvUfeU5WHj5XWTQLyRJ/gXms=", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz", + "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==", "dev": true }, "kind-of": { @@ -7328,7 +6821,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.1.5" } }, "lazy-cache": { @@ -7341,29 +6834,24 @@ "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz", "integrity": "sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU=", "requires": { - "invert-kv": "1.0.0" + "invert-kv": "^1.0.0" } }, - "leb": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/leb/-/leb-0.3.0.tgz", - "integrity": "sha1-Mr7p+tFoMo1q6oUi2DP0GA7tHaM=", - "dev": true - }, "less": { - "version": "3.8.0", - "resolved": "https://registry.npmjs.org/less/-/less-3.8.0.tgz", - "integrity": "sha512-746DPDyL+Wsjo7h/Z3t+A3Mg/mpDTaxW4puZyLhCQJjWJJvHggN735orjuCLIYgo7jKqv1zWLiQrxkuUOg5oGA==", + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/less/-/less-3.9.0.tgz", + "integrity": "sha512-31CmtPEZraNUtuUREYjSqRkeETFdyEHSEPAGq4erDlUXtda7pzNmctdljdIagSb589d/qXGWiiP31R5JVf+v0w==", "dev": true, "requires": { - "errno": "0.1.7", - "graceful-fs": "4.1.11", - "image-size": "0.5.5", - "mime": "1.6.0", - "mkdirp": "0.5.1", - "promise": "7.3.1", - "request": "2.87.0", - "source-map": "0.6.1" + "clone": "^2.1.2", + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "mime": "^1.4.1", + "mkdirp": "^0.5.0", + "promise": "^7.1.1", + "request": "^2.83.0", + "source-map": "~0.6.0" } }, "less-loader": { @@ -7372,9 +6860,9 @@ "integrity": "sha512-KNTsgCE9tMOM70+ddxp9yyt9iHqgmSs0yTZc5XH5Wo+g80RWRIYNqE58QJKm/yMud5wZEvz50ugRDuzVIkyahg==", "dev": true, "requires": { - "clone": "2.1.1", - "loader-utils": "1.1.0", - "pify": "3.0.0" + "clone": "^2.1.1", + "loader-utils": "^1.1.0", + "pify": "^3.0.0" } }, "levn": { @@ -7382,48 +6870,18 @@ "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "requires": { - "prelude-ls": "1.1.2", - "type-check": "0.3.2" - } - }, - "libbase64": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/libbase64/-/libbase64-0.1.0.tgz", - "integrity": "sha1-YjUag5VjrF/1vSbxL2Dpgwu3UeY=", - "dev": true - }, - "libmime": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/libmime/-/libmime-3.0.0.tgz", - "integrity": "sha1-UaGp50SOy9Ms2lRCFnW7IbwJPaY=", - "dev": true, - "requires": { - "iconv-lite": "0.4.15", - "libbase64": "0.1.0", - "libqp": "1.1.0" - }, - "dependencies": { - "iconv-lite": { - "version": "0.4.15", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.15.tgz", - "integrity": "sha1-/iZaIYrGpXz+hUkn6dBMGYJe3es=", - "dev": true - } + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2" } }, - "libqp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/libqp/-/libqp-1.1.0.tgz", - "integrity": "sha1-9ebgatdLeU+1tbZpiL9yjvHe2+g=", - "dev": true - }, "license-webpack-plugin": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-1.3.1.tgz", - "integrity": "sha512-NqAFodJdpBUuf1iD+Ij8hQvF0rCFKlO2KaieoQzAPhFgzLCtJnC7Z7x5gQbGNjoe++wOKAtAmwVEIBLqq2Yp1A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/license-webpack-plugin/-/license-webpack-plugin-2.1.0.tgz", + "integrity": "sha512-vDiBeMWxjE9n6TabQ9J4FH8urFdsRK0Nvxn1cit9biCiR9aq1zBR0X2BlAkEiIG6qPamLeU0GzvIgLkrFc398A==", "dev": true, "requires": { - "ejs": "2.6.1" + "@types/webpack-sources": "^0.1.5", + "webpack-sources": "^1.2.0" } }, "lie": { @@ -7432,7 +6890,7 @@ "integrity": "sha1-mkNrLMd0bKWd56QfpGmz77dr2H4=", "dev": true, "requires": { - "immediate": "3.0.6" + "immediate": "~3.0.5" } }, "load-json-file": { @@ -7440,37 +6898,39 @@ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=", "dev": true, + "optional": true, "requires": { - "graceful-fs": "4.1.11", - "parse-json": "2.2.0", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "strip-bom": "2.0.0" + "graceful-fs": "^4.1.2", + "parse-json": "^2.2.0", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "strip-bom": "^2.0.0" }, "dependencies": { "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "dev": true, + "optional": true } } }, "loader-runner": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.3.0.tgz", - "integrity": "sha1-9IKuqC1UPgeSFwDVpG7yb9rGuKI=", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz", + "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true }, "loader-utils": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.1.0.tgz", - "integrity": "sha1-yYrvSIvM7aL/teLeZG1qdUQp9c0=", + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.2.3.tgz", + "integrity": "sha512-fkpz8ejdnEMG3s37wGL07iSBDg99O9D5yflE9RGNH3hRdx9SOwYfnGYdZOUIZitN8E+E2vkq3MUMYMvPYl5ZZA==", "dev": true, "requires": { - "big.js": "3.2.0", - "emojis-list": "2.1.0", - "json5": "0.5.1" + "big.js": "^5.2.2", + "emojis-list": "^2.0.0", + "json5": "^1.0.1" } }, "locate-path": { @@ -7479,8 +6939,8 @@ "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, "requires": { - "p-locate": "2.0.0", - "path-exists": "3.0.0" + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" } }, "lodash": { @@ -7537,202 +6997,17 @@ "integrity": "sha1-0jM6NtnncXyK0vfKyv7HwytERmQ=", "dev": true }, - "log-symbols": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz", - "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==", - "dev": true, - "requires": { - "chalk": "2.4.1" - } - }, "log4js": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/log4js/-/log4js-2.11.0.tgz", - "integrity": "sha512-z1XdwyGFg8/WGkOyF6DPJjivCWNLKrklGdViywdYnSKOvgtEBo2UyEMZS5sD2mZrQlU3TvO8wDWLc8mzE1ncBQ==", - "dev": true, - "requires": { - "amqplib": "0.5.2", - "axios": "0.15.3", - "circular-json": "0.5.5", - "date-format": "1.2.0", - "debug": "3.1.0", - "hipchat-notifier": "1.1.0", - "loggly": "1.1.1", - "mailgun-js": "0.18.1", - "nodemailer": "2.7.2", - "redis": "2.8.0", - "semver": "5.5.0", - "slack-node": "0.2.0", - "streamroller": "0.7.0" - } - }, - "loggly": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/loggly/-/loggly-1.1.1.tgz", - "integrity": "sha1-Cg/B0/o6XsRP3HuJe+uipGlc6+4=", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/log4js/-/log4js-4.0.2.tgz", + "integrity": "sha512-KE7HjiieVDPPdveA3bJZSuu0n8chMkFl8mIoisBFxwEJ9FmXe4YzNuiqSwYUiR1K8q8/5/8Yd6AClENY1RA9ww==", "dev": true, - "optional": true, "requires": { - "json-stringify-safe": "5.0.1", - "request": "2.75.0", - "timespan": "2.3.0" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true, - "optional": true - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=", - "dev": true, - "optional": true - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true, - "optional": true - }, - "caseless": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.11.0.tgz", - "integrity": "sha1-cVuW6phBWTzDMGeSP17GDr2k99c=", - "dev": true, - "optional": true - }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "dev": true, - "optional": true, - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, - "form-data": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.0.0.tgz", - "integrity": "sha1-bwrrrcxdoWwT4ezBETfYX5uIOyU=", - "dev": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.6", - "mime-types": "2.1.19" - } - }, - "har-validator": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-2.0.6.tgz", - "integrity": "sha1-zcvAgYgmWtEZtqWnyKtw7s+10n0=", - "dev": true, - "optional": true, - "requires": { - "chalk": "1.1.3", - "commander": "2.16.0", - "is-my-json-valid": "2.17.2", - "pinkie-promise": "2.0.1" - } - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.14.2" - } - }, - "node-uuid": { - "version": "1.4.8", - "resolved": "https://registry.npmjs.org/node-uuid/-/node-uuid-1.4.8.tgz", - "integrity": "sha1-sEDrCSOWivq/jTL7HxfxFn/auQc=", - "dev": true, - "optional": true - }, - "qs": { - "version": "6.2.3", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.2.3.tgz", - "integrity": "sha1-HPyyXBCpsrSDBT/zn138kjOQjP4=", - "dev": true, - "optional": true - }, - "request": { - "version": "2.75.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.75.0.tgz", - "integrity": "sha1-0rgmiihtoT6qXQGt9dGMyQ9lfZM=", - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.7.0", - "bl": "1.1.2", - "caseless": "0.11.0", - "combined-stream": "1.0.6", - "extend": "3.0.2", - "forever-agent": "0.6.1", - "form-data": "2.0.0", - "har-validator": "2.0.6", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.19", - "node-uuid": "1.4.8", - "oauth-sign": "0.8.2", - "qs": "6.2.3", - "stringstream": "0.0.6", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.4.3" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", - "dev": true, - "optional": true - }, - "tunnel-agent": { - "version": "0.4.3", - "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.4.3.tgz", - "integrity": "sha1-Y3PbdpCf5XDgjXNYM2Xtgop07us=", - "dev": true, - "optional": true - } + "date-format": "^2.0.0", + "debug": "^3.1.0", + "flatted": "^2.0.0", + "rfdc": "^1.1.2", + "streamroller": "^1.0.1" } }, "loglevel": { @@ -7741,35 +7016,13 @@ "integrity": "sha1-4PyVEztu8nbNyIh82vJKpvFW+Po=", "dev": true }, - "loglevelnext": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/loglevelnext/-/loglevelnext-1.0.5.tgz", - "integrity": "sha512-V/73qkPuJmx4BcBF19xPBr+0ZRVBhc4POxvZTZdMeXpJ4NItXSJ/MSwuFT0kQJlCbXvdlZoQQ/418bS1y9Jh6A==", - "dev": true, - "requires": { - "es6-symbol": "3.1.1", - "object.assign": "4.1.0" - } - }, - "long": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/long/-/long-3.2.0.tgz", - "integrity": "sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s=", - "dev": true - }, - "longest": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/longest/-/longest-1.0.1.tgz", - "integrity": "sha1-MKCy2jj3N3DoKUoNIuZiXtd9AJc=", - "dev": true - }, "loose-envify": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", "dev": true, "requires": { - "js-tokens": "3.0.2" + "js-tokens": "^3.0.0 || ^4.0.0" } }, "loud-rejection": { @@ -7777,24 +7030,19 @@ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz", "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=", "dev": true, + "optional": true, "requires": { - "currently-unhandled": "0.4.1", - "signal-exit": "3.0.2" + "currently-unhandled": "^0.4.1", + "signal-exit": "^3.0.0" } }, - "lower-case": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz", - "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=", - "dev": true - }, "lru-cache": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.3.tgz", "integrity": "sha512-fFEhvcgzuIoJVUF8fYr5KR0YqxD238zgObTps31YdADwPPAp82a4M8TrckkWyx7ekNlf9aBcVn81cFwwXngrJA==", "requires": { - "pseudomap": "1.0.2", - "yallist": "2.1.2" + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, "macos-release": { @@ -7808,155 +7056,68 @@ "integrity": "sha512-iLs9mPjh9IuTtRsqqhNGYcZXGei0Nh/A4xirrsqW7c+QhKVFL2vm7U09ru6cHRD22azaP/wMDgI+HCqbETMTtg==", "dev": true, "requires": { - "sourcemap-codec": "1.4.4" + "sourcemap-codec": "^1.4.4" } }, - "mailcomposer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/mailcomposer/-/mailcomposer-4.0.1.tgz", - "integrity": "sha1-DhxEsqB890DuF9wUm6AJ8Zyt/rQ=", - "dev": true, - "optional": true, + "make-dir": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", + "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", "requires": { - "buildmail": "4.0.1", - "libmime": "3.0.0" + "pify": "^3.0.0" } }, - "mailgun-js": { - "version": "0.18.1", - "resolved": "https://registry.npmjs.org/mailgun-js/-/mailgun-js-0.18.1.tgz", - "integrity": "sha512-lvuMP14u24HS2uBsJEnzSyPMxzU2b99tQsIx1o6QNjqxjk8b3WvR+vq5oG1mjqz/IBYo+5gF+uSoDS0RkMVHmg==", + "make-error": { + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.5.tgz", + "integrity": "sha512-c3sIjNUow0+8swNwVpqoH4YCShKNFkMaw6oH1mNS2haDZQqkeZFlHS3dhoeEbKKmJB4vXpJucU6oH75aDYeE9g==", + "dev": true + }, + "make-fetch-happen": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", + "integrity": "sha512-7R5ivfy9ilRJ1EMKIOziwrns9fGeAD4bAha8EB7BIiBBLHm2KeTUGCrICFt2rbHfzheTLynv50GnNTK1zDTrcQ==", "dev": true, - "optional": true, "requires": { - "async": "2.6.1", - "debug": "3.1.0", - "form-data": "2.3.2", - "inflection": "1.12.0", - "is-stream": "1.1.0", - "path-proxy": "1.0.0", - "promisify-call": "2.0.4", - "proxy-agent": "3.0.1", - "tsscmp": "1.0.6" + "agentkeepalive": "^3.4.1", + "cacache": "^11.0.1", + "http-cache-semantics": "^3.8.1", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "mississippi": "^3.0.0", + "node-fetch-npm": "^2.0.2", + "promise-retry": "^1.1.1", + "socks-proxy-agent": "^4.0.0", + "ssri": "^6.0.0" }, "dependencies": { - "async": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.1.tgz", - "integrity": "sha512-fNEiL2+AZt6AlAw/29Cr0UDe4sRAHCpEHh54WMz+Bb7QfNcFw4h3loofyJpLeQs4Yx7yuqu/2dLgM5hKOs6HlQ==", + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", "dev": true, - "optional": true, "requires": { - "lodash": "4.17.11" - } - }, - "proxy-agent": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-3.0.1.tgz", - "integrity": "sha512-mAZexaz9ZxQhYPWfAjzlrloEjW+JHiBFryE4AJXFDTnaXfmH/FKqC1swTRKuEPbHWz02flQNXFOyDUF7zfEG6A==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "4.2.1", - "debug": "3.1.0", - "http-proxy-agent": "2.1.0", - "https-proxy-agent": "2.2.1", - "lru-cache": "4.1.3", - "pac-proxy-agent": "2.0.2", - "proxy-from-env": "1.0.0", - "socks-proxy-agent": "4.0.1" - } - }, - "smart-buffer": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.0.1.tgz", - "integrity": "sha512-RFqinRVJVcCAL9Uh1oVqE6FZkqsyLiVOYEZ20TqIOjuX7iFVJ+zsbs4RIghnw/pTs7mZvt8ZHhvm1ZUrR4fykg==", - "dev": true, - "optional": true - }, - "socks": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.2.1.tgz", - "integrity": "sha512-0GabKw7n9mI46vcNrVfs0o6XzWzjVa3h6GaSo2UPxtWAROXUWavfJWh1M4PR5tnE0dcnQXZIDFP4yrAysLze/w==", - "dev": true, - "optional": true, - "requires": { - "ip": "1.1.5", - "smart-buffer": "4.0.1" - } - }, - "socks-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-4.0.1.tgz", - "integrity": "sha512-Kezx6/VBguXOsEe5oU3lXYyKMi4+gva72TwJ7pQY5JfqUx2nMk7NXA6z/mpNqIlfQjWYVfeuNvQjexiTaTn6Nw==", - "dev": true, - "optional": true, - "requires": { - "agent-base": "4.2.1", - "socks": "2.2.1" - } - } - } - }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", - "requires": { - "pify": "3.0.0" - } - }, - "make-error": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.4.tgz", - "integrity": "sha512-0Dab5btKVPhibSalc9QGXb559ED7G7iLjFXBaj9Wq8O3vorueR5K5jaE3hkG6ZQINyhA/JgG6Qk4qdFQjsYV6g==", - "dev": true - }, - "make-fetch-happen": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-4.0.1.tgz", - "integrity": "sha512-7R5ivfy9ilRJ1EMKIOziwrns9fGeAD4bAha8EB7BIiBBLHm2KeTUGCrICFt2rbHfzheTLynv50GnNTK1zDTrcQ==", - "dev": true, - "requires": { - "agentkeepalive": "3.5.2", - "cacache": "11.3.2", - "http-cache-semantics": "3.8.1", - "http-proxy-agent": "2.1.0", - "https-proxy-agent": "2.2.1", - "lru-cache": "4.1.3", - "mississippi": "3.0.0", - "node-fetch-npm": "2.0.2", - "promise-retry": "1.1.1", - "socks-proxy-agent": "4.0.2", - "ssri": "6.0.1" - }, - "dependencies": { - "bluebird": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", - "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", - "dev": true - }, - "cacache": { - "version": "11.3.2", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", - "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", - "dev": true, - "requires": { - "bluebird": "3.5.3", - "chownr": "1.1.1", - "figgy-pudding": "3.5.1", - "glob": "7.1.3", - "graceful-fs": "4.1.15", - "lru-cache": "5.1.1", - "mississippi": "3.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "6.0.1", - "unique-filename": "1.1.1", - "y18n": "4.0.0" + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" }, "dependencies": { "lru-cache": { @@ -7965,7 +7126,7 @@ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { - "yallist": "3.0.3" + "yallist": "^3.0.2" } } } @@ -7982,12 +7143,12 @@ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "graceful-fs": { @@ -8002,16 +7163,16 @@ "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "duplexify": "3.6.0", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.3", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "3.0.0", - "pumpify": "1.5.1", - "stream-each": "1.2.3", - "through2": "2.0.3" + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "pump": { @@ -8020,8 +7181,8 @@ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "smart-buffer": { @@ -8036,7 +7197,7 @@ "integrity": "sha512-pCpjxQgOByDHLlNqlnh/mNSAxIUkyBBuwwhTcV+enZGbDaClPvHdvm6uvOwZfFJkam7cGhBNbb4JxiP8UZkRvQ==", "dev": true, "requires": { - "ip": "1.1.5", + "ip": "^1.1.5", "smart-buffer": "4.0.2" } }, @@ -8046,8 +7207,8 @@ "integrity": "sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg==", "dev": true, "requires": { - "agent-base": "4.2.1", - "socks": "2.3.2" + "agent-base": "~4.2.1", + "socks": "~2.3.2" } }, "ssri": { @@ -8056,7 +7217,7 @@ "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { - "figgy-pudding": "3.5.1" + "figgy-pudding": "^3.5.1" } }, "unique-filename": { @@ -8065,7 +7226,7 @@ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "y18n": { @@ -8082,6 +7243,15 @@ } } }, + "map-age-cleaner": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", + "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", + "dev": true, + "requires": { + "p-defer": "^1.0.0" + } + }, "map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -8092,7 +7262,8 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=", - "dev": true + "dev": true, + "optional": true }, "map-visit": { "version": "1.0.0", @@ -8100,17 +7271,18 @@ "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", "dev": true, "requires": { - "object-visit": "1.0.1" + "object-visit": "^1.0.0" } }, "md5.js": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz", - "integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz", + "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==", "dev": true, "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "hash-base": "^3.0.0", + "inherits": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "media-typer": { @@ -8125,7 +7297,7 @@ "integrity": "sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y=", "dev": true, "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "memory-fs": { @@ -8134,8 +7306,8 @@ "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=", "dev": true, "requires": { - "errno": "0.1.7", - "readable-stream": "2.3.6" + "errno": "^0.1.3", + "readable-stream": "^2.0.1" } }, "meow": { @@ -8143,24 +7315,26 @@ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz", "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=", "dev": true, + "optional": true, "requires": { - "camelcase-keys": "2.1.0", - "decamelize": "1.2.0", - "loud-rejection": "1.6.0", - "map-obj": "1.0.1", - "minimist": "1.2.0", - "normalize-package-data": "2.4.0", - "object-assign": "4.1.1", - "read-pkg-up": "1.0.1", - "redent": "1.0.0", - "trim-newlines": "1.0.0" + "camelcase-keys": "^2.0.0", + "decamelize": "^1.1.2", + "loud-rejection": "^1.0.0", + "map-obj": "^1.0.1", + "minimist": "^1.1.3", + "normalize-package-data": "^2.3.4", + "object-assign": "^4.0.1", + "read-pkg-up": "^1.0.1", + "redent": "^1.0.0", + "trim-newlines": "^1.0.0" }, "dependencies": { "minimist": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "dev": true, + "optional": true } } }, @@ -8182,19 +7356,19 @@ "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "braces": "2.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "extglob": "2.0.4", - "fragment-cache": "0.2.1", - "kind-of": "6.0.2", - "nanomatch": "1.2.13", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.3.1", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "extglob": "^2.0.4", + "fragment-cache": "^0.2.1", + "kind-of": "^6.0.2", + "nanomatch": "^1.2.9", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.2" }, "dependencies": { "kind-of": { @@ -8211,15 +7385,16 @@ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==", "dev": true, "requires": { - "bn.js": "4.11.8", - "brorand": "1.1.0" + "bn.js": "^4.0.0", + "brorand": "^1.0.1" } }, "mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "dev": true + "dev": true, + "optional": true }, "mime-db": { "version": "1.35.0", @@ -8231,7 +7406,7 @@ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.19.tgz", "integrity": "sha512-P1tKYHVSZ6uFo26mtnve4HQFE3koh1UWVkp8YUC+ESBHe945xWSoXuHHiGarDqcEZ+whpCDnlNw5LON0kLo+sw==", "requires": { - "mime-db": "1.35.0" + "mime-db": "~1.35.0" } }, "mimic-fn": { @@ -8240,14 +7415,14 @@ "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==" }, "mini-css-extract-plugin": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.4.1.tgz", - "integrity": "sha512-XWuB3G61Rtasq/gLe7cp5cuozehE6hN+E4sxCamRR/WDiHTg+f7ZIAS024r8UJQffY+e2gGELXQZgQoFDfNDCg==", + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.5.0.tgz", + "integrity": "sha512-IuaLjruM0vMKhUUT51fQdQzBYTX49dLj8w68ALEAe2A4iYNpIC4eMac67mt3NzycvjOlf07/kYxJDc0RTl1Wqw==", "dev": true, "requires": { - "@webpack-contrib/schema-utils": "1.0.0-beta.0", - "loader-utils": "1.1.0", - "webpack-sources": "1.1.0" + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0", + "webpack-sources": "^1.1.0" } }, "minimalistic-assert": { @@ -8267,7 +7442,7 @@ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "requires": { - "brace-expansion": "1.1.11" + "brace-expansion": "^1.1.7" } }, "minimist": { @@ -8282,8 +7457,8 @@ "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", "dev": true, "requires": { - "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "safe-buffer": "^5.1.2", + "yallist": "^3.0.0" }, "dependencies": { "yallist": { @@ -8300,7 +7475,7 @@ "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", "dev": true, "requires": { - "minipass": "2.3.5" + "minipass": "^2.2.1" } }, "mississippi": { @@ -8309,16 +7484,16 @@ "integrity": "sha512-zHo8v+otD1J10j/tC+VNoGK9keCuByhKovAvdn74dmxJl9+mWHnx6EMsDN4lgRoMI/eYo2nchAxniIbUPb5onw==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "duplexify": "3.6.0", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.3", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "2.0.1", - "pumpify": "1.5.1", - "stream-each": "1.2.3", - "through2": "2.0.3" + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^2.0.1", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "mixin-deep": { @@ -8327,8 +7502,8 @@ "integrity": "sha512-8ZItLHeEgaqEvd5lYBXfm4EZSFCX29Jb9K+lAHhDKzReKBQKj3R+7NOF6tjqYi9t4oI8VUfaWITJQm86wnXGNQ==", "dev": true, "requires": { - "for-in": "1.0.2", - "is-extendable": "1.0.1" + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" }, "dependencies": { "is-extendable": { @@ -8337,7 +7512,7 @@ "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", "dev": true, "requires": { - "is-plain-object": "2.0.4" + "is-plain-object": "^2.0.4" } } } @@ -8347,8 +7522,8 @@ "resolved": "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz", "integrity": "sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4=", "requires": { - "for-in": "0.1.8", - "is-extendable": "0.1.1" + "for-in": "^0.1.3", + "is-extendable": "^0.1.1" }, "dependencies": { "for-in": { @@ -8373,12 +7548,12 @@ "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", "dev": true, "requires": { - "aproba": "1.2.0", - "copy-concurrently": "1.0.5", - "fs-write-stream-atomic": "1.0.10", - "mkdirp": "0.5.1", - "rimraf": "2.6.2", - "run-queue": "1.0.3" + "aproba": "^1.1.1", + "copy-concurrently": "^1.0.0", + "fs-write-stream-atomic": "^1.0.8", + "mkdirp": "^0.5.1", + "rimraf": "^2.5.4", + "run-queue": "^1.0.3" } }, "ms": { @@ -8392,8 +7567,8 @@ "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==", "dev": true, "requires": { - "dns-packet": "1.3.1", - "thunky": "1.0.2" + "dns-packet": "^1.3.1", + "thunky": "^1.0.2" } }, "multicast-dns-service-types": { @@ -8420,17 +7595,17 @@ "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", "dev": true, "requires": { - "arr-diff": "4.0.0", - "array-unique": "0.3.2", - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "fragment-cache": "0.2.1", - "is-windows": "1.0.2", - "kind-of": "6.0.2", - "object.pick": "1.3.0", - "regex-not": "1.0.2", - "snapdragon": "0.8.2", - "to-regex": "3.0.2" + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" }, "dependencies": { "kind-of": { @@ -8446,10 +7621,10 @@ "resolved": "https://registry.npmjs.org/nconf/-/nconf-0.10.0.tgz", "integrity": "sha512-fKiXMQrpP7CYWJQzKkPPx9hPgmq+YLDyxcG9N8RpiE9FoCkCbzD0NyW0YhE3xn3Aupe7nnDeIx4PFzYehpHT9Q==", "requires": { - "async": "1.5.2", - "ini": "1.3.5", - "secure-keys": "1.0.0", - "yargs": "3.32.0" + "async": "^1.4.0", + "ini": "^1.3.0", + "secure-keys": "^1.0.0", + "yargs": "^3.19.0" } }, "needle": { @@ -8457,9 +7632,9 @@ "resolved": "https://registry.npmjs.org/needle/-/needle-2.2.1.tgz", "integrity": "sha512-t/ZswCM9JTWjAdXS9VpvqhI2Ct2sL2MdY4fUXqGJaGBk13ge99ObqRksRTbBE56K+wxUXwwfZYOuZHifFW9q+Q==", "requires": { - "debug": "2.6.9", - "iconv-lite": "0.4.23", - "sax": "1.2.4" + "debug": "^2.1.2", + "iconv-lite": "^0.4.4", + "sax": "^1.2.4" }, "dependencies": { "debug": { @@ -8479,9 +7654,9 @@ "dev": true }, "neo-async": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.5.1.tgz", - "integrity": "sha512-3KL3fvuRkZ7s4IFOMfztb7zJp3QaVWnBeGoJlgB38XnCRPj/0tLzzLG5IB8NYOHbJ8g8UGrgZv44GLDk6CxTxA==", + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.0.tgz", + "integrity": "sha512-MFh0d/Wa7vkKO3Y3LlacqAEeHK0mckVqzDieUKTT+KGxi+zIpeVsFxymkIiRpbpDziHc290Xr9A1O4Om7otoRA==", "dev": true }, "netmask": { @@ -8489,30 +7664,21 @@ "resolved": "https://registry.npmjs.org/netmask/-/netmask-1.0.6.tgz", "integrity": "sha1-ICl+idhvb2QA8lDZ9Pa0wZRfzTU=" }, - "next-tick": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", - "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=", + "nice-try": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", + "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, - "no-case": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz", - "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==", - "dev": true, - "requires": { - "lower-case": "1.1.4" - } - }, "node-fetch-npm": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/node-fetch-npm/-/node-fetch-npm-2.0.2.tgz", "integrity": "sha512-nJIxm1QmAj4v3nfCvEeCrYSoVwXyxLnaPBK5W1W5DGEJwjlKuC2VEUycGw5oxk+4zZahRrB84PUJJgEmhFTDFw==", "dev": true, "requires": { - "encoding": "0.1.12", - "json-parse-better-errors": "1.0.2", - "safe-buffer": "5.1.2" + "encoding": "^0.1.11", + "json-parse-better-errors": "^1.0.0", + "safe-buffer": "^5.1.1" } }, "node-forge": { @@ -8522,138 +7688,26 @@ "dev": true }, "node-gyp": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.7.0.tgz", - "integrity": "sha512-qDQE/Ft9xXP6zphwx4sD0t+VhwV7yFaloMpfbL2QnnDZcyaiakWlLdtFGGQfTAwpFHdpbRhRxVhIHN1OKAjgbg==", + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz", + "integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==", "dev": true, "optional": true, "requires": { - "fstream": "1.0.11", - "glob": "7.1.2", - "graceful-fs": "4.1.11", - "mkdirp": "0.5.1", - "nopt": "3.0.6", - "npmlog": "4.1.2", - "osenv": "0.1.5", - "request": "2.81.0", - "rimraf": "2.6.2", - "semver": "5.3.0", - "tar": "2.2.1", - "which": "1.3.1" + "fstream": "^1.0.0", + "glob": "^7.0.3", + "graceful-fs": "^4.1.2", + "mkdirp": "^0.5.0", + "nopt": "2 || 3", + "npmlog": "0 || 1 || 2 || 3 || 4", + "osenv": "0", + "request": "^2.87.0", + "rimraf": "2", + "semver": "~5.3.0", + "tar": "^2.0.0", + "which": "1" }, "dependencies": { - "ajv": { - "version": "4.11.8", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz", - "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=", - "dev": true, - "optional": true, - "requires": { - "co": "4.6.0", - "json-stable-stringify": "1.0.1" - } - }, - "assert-plus": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-0.2.0.tgz", - "integrity": "sha1-104bh+ev/A24qttwIfP+SBAasjQ=", - "dev": true, - "optional": true - }, - "aws-sign2": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.6.0.tgz", - "integrity": "sha1-FDQt0428yU0OW4fXY81jYSwOeU8=", - "dev": true, - "optional": true - }, - "form-data": { - "version": "2.1.4", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.1.4.tgz", - "integrity": "sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE=", - "dev": true, - "optional": true, - "requires": { - "asynckit": "0.4.0", - "combined-stream": "1.0.6", - "mime-types": "2.1.19" - } - }, - "har-schema": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-1.0.5.tgz", - "integrity": "sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4=", - "dev": true, - "optional": true - }, - "har-validator": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-4.2.1.tgz", - "integrity": "sha1-M0gdDxu/9gDdID11gSpqX7oALio=", - "dev": true, - "optional": true, - "requires": { - "ajv": "4.11.8", - "har-schema": "1.0.5" - } - }, - "http-signature": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.1.1.tgz", - "integrity": "sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8=", - "dev": true, - "optional": true, - "requires": { - "assert-plus": "0.2.0", - "jsprim": "1.4.1", - "sshpk": "1.14.2" - } - }, - "performance-now": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-0.2.0.tgz", - "integrity": "sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU=", - "dev": true, - "optional": true - }, - "qs": { - "version": "6.4.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.4.0.tgz", - "integrity": "sha1-E+JtKK1rD/qpExLNO/cI7TUecjM=", - "dev": true, - "optional": true - }, - "request": { - "version": "2.81.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.81.0.tgz", - "integrity": "sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA=", - "dev": true, - "optional": true, - "requires": { - "aws-sign2": "0.6.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.2", - "forever-agent": "0.6.1", - "form-data": "2.1.4", - "har-validator": "4.2.1", - "hawk": "3.1.3", - "http-signature": "1.1.1", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.19", - "oauth-sign": "0.8.2", - "performance-now": "0.2.0", - "qs": "6.4.0", - "safe-buffer": "5.1.2", - "stringstream": "0.0.6", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.3.2" - } - }, "semver": { "version": "5.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz", @@ -8664,75 +7718,106 @@ } }, "node-libs-browser": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.1.0.tgz", - "integrity": "sha512-5AzFzdoIMb89hBGMZglEegffzgRg+ZFoUmisQ8HI4j1KDdpx13J0taNp2y9xPbur6W61gepGDDotGBVQ7mfUCg==", - "dev": true, - "requires": { - "assert": "1.4.1", - "browserify-zlib": "0.2.0", - "buffer": "4.9.1", - "console-browserify": "1.1.0", - "constants-browserify": "1.0.0", - "crypto-browserify": "3.12.0", - "domain-browser": "1.2.0", - "events": "1.1.1", - "https-browserify": "1.0.0", - "os-browserify": "0.3.0", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.0.tgz", + "integrity": "sha512-5MQunG/oyOaBdttrL40dA7bUfPORLRWMUJLQtMg7nluxUvk5XwnLdL9twQHFAjRx/y7mIMkLKT9++qPbbk6BZA==", + "dev": true, + "requires": { + "assert": "^1.1.1", + "browserify-zlib": "^0.2.0", + "buffer": "^4.3.0", + "console-browserify": "^1.1.0", + "constants-browserify": "^1.0.0", + "crypto-browserify": "^3.11.0", + "domain-browser": "^1.1.1", + "events": "^3.0.0", + "https-browserify": "^1.0.0", + "os-browserify": "^0.3.0", "path-browserify": "0.0.0", - "process": "0.11.10", - "punycode": "1.4.1", - "querystring-es3": "0.2.1", - "readable-stream": "2.3.6", - "stream-browserify": "2.0.1", - "stream-http": "2.8.3", - "string_decoder": "1.1.1", - "timers-browserify": "2.0.10", + "process": "^0.11.10", + "punycode": "^1.2.4", + "querystring-es3": "^0.2.0", + "readable-stream": "^2.3.3", + "stream-browserify": "^2.0.1", + "stream-http": "^2.7.2", + "string_decoder": "^1.0.0", + "timers-browserify": "^2.0.4", "tty-browserify": "0.0.0", - "url": "0.11.0", - "util": "0.10.4", + "url": "^0.11.0", + "util": "^0.11.0", "vm-browserify": "0.0.4" }, "dependencies": { "string_decoder": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", + "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" + } + }, + "util": { + "version": "0.11.1", + "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", + "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "inherits": "2.0.3" } } } }, + "node-releases": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.10.tgz", + "integrity": "sha512-KbUPCpfoBvb3oBkej9+nrU0/7xPlVhmhhUJ1PZqwIP5/1dJkRWKWD3OONjo6M2J7tSCBtDCumLwwqeI+DWWaLQ==", + "dev": true, + "requires": { + "semver": "^5.3.0" + } + }, "node-sass": { - "version": "4.9.2", - "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.9.2.tgz", - "integrity": "sha512-LdxoJLZutx0aQXHtWIYwJKMj+9pTjneTcLWJgzf2XbGu0q5pRNqW5QvFCEdm3mc5rJOdru/mzln5d0EZLacf6g==", + "version": "4.11.0", + "resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.11.0.tgz", + "integrity": "sha512-bHUdHTphgQJZaF1LASx0kAviPH7sGlcyNhWade4eVIpFp6tsn7SV8xNMTbsQFpEV9VXpnwTTnNYlfsZXgGgmkA==", "dev": true, "optional": true, "requires": { - "async-foreach": "0.1.3", - "chalk": "1.1.3", - "cross-spawn": "3.0.1", - "gaze": "1.1.3", - "get-stdin": "4.0.1", - "glob": "7.1.2", - "in-publish": "2.0.0", - "lodash.assign": "4.2.0", - "lodash.clonedeep": "4.5.0", - "lodash.mergewith": "4.6.1", - "meow": "3.7.0", - "mkdirp": "0.5.1", - "nan": "2.10.0", - "node-gyp": "3.7.0", - "npmlog": "4.1.2", - "request": "2.87.0", - "sass-graph": "2.2.4", - "stdout-stream": "1.4.0", - "true-case-path": "1.0.2" + "async-foreach": "^0.1.3", + "chalk": "^1.1.1", + "cross-spawn": "^3.0.0", + "gaze": "^1.0.0", + "get-stdin": "^4.0.1", + "glob": "^7.0.3", + "in-publish": "^2.0.0", + "lodash.assign": "^4.2.0", + "lodash.clonedeep": "^4.3.2", + "lodash.mergewith": "^4.6.0", + "meow": "^3.7.0", + "mkdirp": "^0.5.1", + "nan": "^2.10.0", + "node-gyp": "^3.8.0", + "npmlog": "^4.0.0", + "request": "^2.88.0", + "sass-graph": "^2.2.4", + "stdout-stream": "^1.4.0", + "true-case-path": "^1.0.2" }, "dependencies": { + "ajv": { + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", + "dev": true, + "optional": true, + "requires": { + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + } + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -8747,6 +7832,13 @@ "dev": true, "optional": true }, + "aws4": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.8.0.tgz", + "integrity": "sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==", + "dev": true, + "optional": true + }, "chalk": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", @@ -8754,11 +7846,72 @@ "dev": true, "optional": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + } + }, + "fast-deep-equal": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", + "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", + "dev": true, + "optional": true + }, + "har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "dev": true, + "optional": true, + "requires": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + } + }, + "json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "optional": true + }, + "oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "dev": true, + "optional": true + }, + "request": { + "version": "2.88.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.0.tgz", + "integrity": "sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==", + "dev": true, + "optional": true, + "requires": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.0", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.4.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" } }, "strip-ansi": { @@ -8768,7 +7921,7 @@ "dev": true, "optional": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -8777,101 +7930,28 @@ "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=", "dev": true, "optional": true - } - } - }, - "nodemailer": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/nodemailer/-/nodemailer-2.7.2.tgz", - "integrity": "sha1-8kLmSa7q45tsftdA73sGHEBNMPk=", - "dev": true, - "optional": true, - "requires": { - "libmime": "3.0.0", - "mailcomposer": "4.0.1", - "nodemailer-direct-transport": "3.3.2", - "nodemailer-shared": "1.1.0", - "nodemailer-smtp-pool": "2.8.2", - "nodemailer-smtp-transport": "2.7.2", - "socks": "1.1.9" - }, - "dependencies": { - "socks": { - "version": "1.1.9", - "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.9.tgz", - "integrity": "sha1-Yo1+TQSRJDVEWsC25Fk3bLPm1pE=", + }, + "tough-cookie": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.4.3.tgz", + "integrity": "sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ==", "dev": true, "optional": true, "requires": { - "ip": "1.1.5", - "smart-buffer": "1.1.15" + "psl": "^1.1.24", + "punycode": "^1.4.1" } } } }, - "nodemailer-direct-transport": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/nodemailer-direct-transport/-/nodemailer-direct-transport-3.3.2.tgz", - "integrity": "sha1-6W+vuQNYVglH5WkBfZfmBzilCoY=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-fetch": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/nodemailer-fetch/-/nodemailer-fetch-1.6.0.tgz", - "integrity": "sha1-ecSQihwPXzdbc/6IjamCj23JY6Q=", - "dev": true - }, - "nodemailer-shared": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/nodemailer-shared/-/nodemailer-shared-1.1.0.tgz", - "integrity": "sha1-z1mU4v0mjQD1zw+nZ6CBae2wfsA=", - "dev": true, - "requires": { - "nodemailer-fetch": "1.6.0" - } - }, - "nodemailer-smtp-pool": { - "version": "2.8.2", - "resolved": "https://registry.npmjs.org/nodemailer-smtp-pool/-/nodemailer-smtp-pool-2.8.2.tgz", - "integrity": "sha1-LrlNbPhXgLG0clzoU7nL1ejajHI=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "nodemailer-wellknown": "0.1.10", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-smtp-transport": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/nodemailer-smtp-transport/-/nodemailer-smtp-transport-2.7.2.tgz", - "integrity": "sha1-A9ccdjFPFKx9vHvwM6am0W1n+3c=", - "dev": true, - "optional": true, - "requires": { - "nodemailer-shared": "1.1.0", - "nodemailer-wellknown": "0.1.10", - "smtp-connection": "2.12.0" - } - }, - "nodemailer-wellknown": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/nodemailer-wellknown/-/nodemailer-wellknown-0.1.10.tgz", - "integrity": "sha1-WG24EB2zDLRDjrVGc3pBqtDPE9U=", - "dev": true - }, "nopt": { "version": "3.0.6", "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz", "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=", "dev": true, + "optional": true, "requires": { - "abbrev": "1.1.1" + "abbrev": "1" } }, "normalize-package-data": { @@ -8880,10 +7960,10 @@ "integrity": "sha512-9jjUFbTPfEy3R/ad/2oNbKtW9Hgovl5O1FvFWKkKblNXoN/Oou6+9+KKohPK13Yc3/TyunyWhJp6gvRNR/PPAw==", "dev": true, "requires": { - "hosted-git-info": "2.7.1", - "is-builtin-module": "1.0.0", - "semver": "5.5.0", - "validate-npm-package-license": "3.0.3" + "hosted-git-info": "^2.1.4", + "is-builtin-module": "^1.0.0", + "semver": "2 || 3 || 4 || 5", + "validate-npm-package-license": "^3.0.1" } }, "normalize-path": { @@ -8892,7 +7972,7 @@ "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", "dev": true, "requires": { - "remove-trailing-separator": "1.1.0" + "remove-trailing-separator": "^1.0.1" } }, "normalize-range": { @@ -8913,10 +7993,10 @@ "integrity": "sha512-zYbhP2k9DbJhA0Z3HKUePUgdB1x7MfIfKssC+WLPFMKTBZKpZh5m13PgexJjCq6KW7j17r0jHWcCpxEqnnncSA==", "dev": true, "requires": { - "hosted-git-info": "2.7.1", - "osenv": "0.1.5", - "semver": "5.5.0", - "validate-npm-package-name": "3.0.0" + "hosted-git-info": "^2.6.0", + "osenv": "^0.1.5", + "semver": "^5.5.0", + "validate-npm-package-name": "^3.0.0" } }, "npm-packlist": { @@ -8925,8 +8005,8 @@ "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", "dev": true, "requires": { - "ignore-walk": "3.0.1", - "npm-bundled": "1.0.6" + "ignore-walk": "^3.0.1", + "npm-bundled": "^1.0.1" } }, "npm-pick-manifest": { @@ -8935,9 +8015,9 @@ "integrity": "sha512-+IluBC5K201+gRU85vFlUwX3PFShZAbAgDNp2ewJdWMVSppdo/Zih0ul2Ecky/X7b51J7LrrUAP+XOmOCvYZqA==", "dev": true, "requires": { - "figgy-pudding": "3.5.1", - "npm-package-arg": "6.1.0", - "semver": "5.5.0" + "figgy-pudding": "^3.5.1", + "npm-package-arg": "^6.0.0", + "semver": "^5.4.1" } }, "npm-registry-fetch": { @@ -8946,12 +8026,12 @@ "integrity": "sha512-srwmt8YhNajAoSAaDWndmZgx89lJwIZ1GWxOuckH4Coek4uHv5S+o/l9FLQe/awA+JwTnj4FJHldxhlXdZEBmw==", "dev": true, "requires": { - "JSONStream": "1.3.5", - "bluebird": "3.5.1", - "figgy-pudding": "3.5.1", - "lru-cache": "4.1.3", - "make-fetch-happen": "4.0.1", - "npm-package-arg": "6.1.0" + "JSONStream": "^1.3.4", + "bluebird": "^3.5.1", + "figgy-pudding": "^3.4.1", + "lru-cache": "^4.1.3", + "make-fetch-happen": "^4.0.1", + "npm-package-arg": "^6.1.0" } }, "npm-run-path": { @@ -8960,7 +8040,7 @@ "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=", "dev": true, "requires": { - "path-key": "2.0.1" + "path-key": "^2.0.0" } }, "npmlog": { @@ -8968,20 +8048,12 @@ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", "dev": true, + "optional": true, "requires": { - "are-we-there-yet": "1.1.5", - "console-control-strings": "1.1.0", - "gauge": "2.7.4", - "set-blocking": "2.0.0" - } - }, - "nth-check": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.1.tgz", - "integrity": "sha1-mSms32KPwsQQmN6rgqxYDPFJquQ=", - "dev": true, - "requires": { - "boolbase": "1.0.0" + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" } }, "null-check": { @@ -9024,9 +8096,9 @@ "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=", "dev": true, "requires": { - "copy-descriptor": "0.1.1", - "define-property": "0.2.5", - "kind-of": "3.2.2" + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" }, "dependencies": { "define-property": { @@ -9035,46 +8107,18 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } }, - "object-keys": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.0.12.tgz", - "integrity": "sha512-FTMyFUm2wBcGHnH2eXmz7tC6IwlqQZ6mVZ+6dm6vZ4IQIHjs6FdNsQBuKGPuUUUY6NfJw2PshC08Tn6LzLDOag==", - "dev": true - }, "object-visit": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz", "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=", "dev": true, "requires": { - "isobject": "3.0.1" - } - }, - "object.assign": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz", - "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==", - "dev": true, - "requires": { - "define-properties": "1.1.2", - "function-bind": "1.1.1", - "has-symbols": "1.0.0", - "object-keys": "1.0.12" - } - }, - "object.getownpropertydescriptors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz", - "integrity": "sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=", - "dev": true, - "requires": { - "define-properties": "1.1.2", - "es-abstract": "1.12.0" + "isobject": "^3.0.0" } }, "object.pick": { @@ -9083,7 +8127,7 @@ "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", "dev": true, "requires": { - "isobject": "3.0.1" + "isobject": "^3.0.1" } }, "obuf": { @@ -9102,9 +8146,9 @@ } }, "on-headers": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.1.tgz", - "integrity": "sha1-ko9dD0cNSTQmUepnlLCFfBAGk/c=", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", + "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", "dev": true }, "once": { @@ -9113,7 +8157,7 @@ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, "requires": { - "wrappy": "1.0.2" + "wrappy": "1" } }, "onetime": { @@ -9121,7 +8165,7 @@ "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", "requires": { - "mimic-fn": "1.2.0" + "mimic-fn": "^1.0.0" } }, "opn": { @@ -9129,7 +8173,7 @@ "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", "requires": { - "is-wsl": "1.1.0" + "is-wsl": "^1.1.0" } }, "optimist": { @@ -9138,8 +8182,8 @@ "integrity": "sha1-2j6nRob6IaGaERwybpDrFaAZZoY=", "dev": true, "requires": { - "minimist": "0.0.8", - "wordwrap": "0.0.3" + "minimist": "~0.0.1", + "wordwrap": "~0.0.2" }, "dependencies": { "wordwrap": { @@ -9155,21 +8199,21 @@ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", "requires": { - "deep-is": "0.1.3", - "fast-levenshtein": "2.0.6", - "levn": "0.3.0", - "prelude-ls": "1.1.2", - "type-check": "0.3.2", - "wordwrap": "1.0.0" + "deep-is": "~0.1.3", + "fast-levenshtein": "~2.0.4", + "levn": "~0.3.0", + "prelude-ls": "~1.1.2", + "type-check": "~0.3.2", + "wordwrap": "~1.0.0" } }, "original": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/original/-/original-1.0.1.tgz", - "integrity": "sha512-IEvtB5vM5ULvwnqMxWBLxkS13JIEXbakizMSo3yoPNPCIWzg8TG3Usn/UhXoZFM/m+FuEA20KdzPSFq/0rS+UA==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", "dev": true, "requires": { - "url-parse": "1.4.3" + "url-parse": "^1.4.3" } }, "os-browserify": { @@ -9189,7 +8233,7 @@ "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz", "integrity": "sha1-IPnxeuKe00XoveWDsT0gCYA8FNk=", "requires": { - "lcid": "1.0.0" + "lcid": "^1.0.0" } }, "os-name": { @@ -9197,8 +8241,8 @@ "resolved": "https://registry.npmjs.org/os-name/-/os-name-2.0.1.tgz", "integrity": "sha1-uaOGNhwXrjohc27wWZQFyajF3F4=", "requires": { - "macos-release": "1.1.0", - "win-release": "1.1.1" + "macos-release": "^1.0.0", + "win-release": "^1.0.0" } }, "os-tmpdir": { @@ -9212,23 +8256,35 @@ "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", "dev": true, "requires": { - "os-homedir": "1.0.2", - "os-tmpdir": "1.0.2" + "os-homedir": "^1.0.0", + "os-tmpdir": "^1.0.0" } }, + "p-defer": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz", + "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=", + "dev": true + }, "p-finally": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz", "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=", "dev": true }, - "p-limit": { - "version": "1.3.0", + "p-is-promise": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.0.0.tgz", + "integrity": "sha512-pzQPhYMCAgLAKPWD2jC3Se9fEfrD9npNos0y150EeqZll7akhEgGhTW/slB6lHku8AvYGiJ+YJ5hfHKePPgFWg==", + "dev": true + }, + "p-limit": { + "version": "1.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, "requires": { - "p-try": "1.0.0" + "p-try": "^1.0.0" } }, "p-locate": { @@ -9237,7 +8293,7 @@ "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, "requires": { - "p-limit": "1.3.0" + "p-limit": "^1.1.0" } }, "p-map": { @@ -9257,14 +8313,14 @@ "resolved": "https://registry.npmjs.org/pac-proxy-agent/-/pac-proxy-agent-2.0.2.tgz", "integrity": "sha512-cDNAN1Ehjbf5EHkNY5qnRhGPUCp6SnpyVof5fRzN800QV1Y2OkzbH9rmjZkbBRa8igof903yOnjIl6z0SlAhxA==", "requires": { - "agent-base": "4.2.1", - "debug": "3.1.0", - "get-uri": "2.0.2", - "http-proxy-agent": "2.1.0", - "https-proxy-agent": "2.2.1", - "pac-resolver": "3.0.0", - "raw-body": "2.3.3", - "socks-proxy-agent": "3.0.1" + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "get-uri": "^2.0.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "pac-resolver": "^3.0.0", + "raw-body": "^2.2.0", + "socks-proxy-agent": "^3.0.0" } }, "pac-resolver": { @@ -9272,11 +8328,11 @@ "resolved": "https://registry.npmjs.org/pac-resolver/-/pac-resolver-3.0.0.tgz", "integrity": "sha512-tcc38bsjuE3XZ5+4vP96OfhOugrX+JcnpUbhfuc4LuXBLQhoTthOstZeoQJBDnQUDYzYmdImKsbz0xSl1/9qeA==", "requires": { - "co": "4.6.0", - "degenerator": "1.0.4", - "ip": "1.1.5", - "netmask": "1.0.6", - "thunkify": "2.1.2" + "co": "^4.6.0", + "degenerator": "^1.0.4", + "ip": "^1.1.5", + "netmask": "^1.0.6", + "thunkify": "^2.1.2" } }, "pacote": { @@ -9285,33 +8341,33 @@ "integrity": "sha512-WQ1KL/phGMkedYEQx9ODsjj7xvwLSpdFJJdEXrLyw5SILMxcTNt5DTxT2Z93fXuLFYJBlZJdnwdalrQdB/rX5w==", "dev": true, "requires": { - "bluebird": "3.5.3", - "cacache": "11.3.2", - "figgy-pudding": "3.5.1", - "get-stream": "4.1.0", - "glob": "7.1.3", - "lru-cache": "5.1.1", - "make-fetch-happen": "4.0.1", - "minimatch": "3.0.4", - "minipass": "2.3.5", - "mississippi": "3.0.0", - "mkdirp": "0.5.1", - "normalize-package-data": "2.4.0", - "npm-package-arg": "6.1.0", - "npm-packlist": "1.4.1", - "npm-pick-manifest": "2.2.3", - "npm-registry-fetch": "3.9.0", - "osenv": "0.1.5", - "promise-inflight": "1.0.1", - "promise-retry": "1.1.1", - "protoduck": "5.0.1", - "rimraf": "2.6.2", - "safe-buffer": "5.1.2", - "semver": "5.6.0", - "ssri": "6.0.1", - "tar": "4.4.8", - "unique-filename": "1.1.1", - "which": "1.3.1" + "bluebird": "^3.5.3", + "cacache": "^11.3.2", + "figgy-pudding": "^3.5.1", + "get-stream": "^4.1.0", + "glob": "^7.1.3", + "lru-cache": "^5.1.1", + "make-fetch-happen": "^4.0.1", + "minimatch": "^3.0.4", + "minipass": "^2.3.5", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "normalize-package-data": "^2.4.0", + "npm-package-arg": "^6.1.0", + "npm-packlist": "^1.1.12", + "npm-pick-manifest": "^2.2.3", + "npm-registry-fetch": "^3.8.0", + "osenv": "^0.1.5", + "promise-inflight": "^1.0.1", + "promise-retry": "^1.1.1", + "protoduck": "^5.0.1", + "rimraf": "^2.6.2", + "safe-buffer": "^5.1.2", + "semver": "^5.6.0", + "ssri": "^6.0.1", + "tar": "^4.4.8", + "unique-filename": "^1.1.1", + "which": "^1.3.1" }, "dependencies": { "bluebird": { @@ -9326,20 +8382,20 @@ "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", "dev": true, "requires": { - "bluebird": "3.5.3", - "chownr": "1.1.1", - "figgy-pudding": "3.5.1", - "glob": "7.1.3", - "graceful-fs": "4.1.15", - "lru-cache": "5.1.1", - "mississippi": "3.0.0", - "mkdirp": "0.5.1", - "move-concurrently": "1.0.1", - "promise-inflight": "1.0.1", - "rimraf": "2.6.2", - "ssri": "6.0.1", - "unique-filename": "1.1.1", - "y18n": "4.0.0" + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" } }, "chownr": { @@ -9354,7 +8410,7 @@ "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", "dev": true, "requires": { - "pump": "3.0.0" + "pump": "^3.0.0" } }, "glob": { @@ -9363,12 +8419,12 @@ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "graceful-fs": { @@ -9383,7 +8439,7 @@ "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", "dev": true, "requires": { - "yallist": "3.0.3" + "yallist": "^3.0.2" } }, "mississippi": { @@ -9392,16 +8448,16 @@ "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", "dev": true, "requires": { - "concat-stream": "1.6.2", - "duplexify": "3.6.0", - "end-of-stream": "1.4.1", - "flush-write-stream": "1.0.3", - "from2": "2.3.0", - "parallel-transform": "1.1.0", - "pump": "3.0.0", - "pumpify": "1.5.1", - "stream-each": "1.2.3", - "through2": "2.0.3" + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" } }, "pump": { @@ -9410,8 +8466,8 @@ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "semver": { @@ -9426,7 +8482,7 @@ "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", "dev": true, "requires": { - "figgy-pudding": "3.5.1" + "figgy-pudding": "^3.5.1" } }, "tar": { @@ -9435,13 +8491,13 @@ "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", "dev": true, "requires": { - "chownr": "1.1.1", - "fs-minipass": "1.2.5", - "minipass": "2.3.5", - "minizlib": "1.2.1", - "mkdirp": "0.5.1", - "safe-buffer": "5.1.2", - "yallist": "3.0.3" + "chownr": "^1.1.1", + "fs-minipass": "^1.2.5", + "minipass": "^2.3.4", + "minizlib": "^1.1.1", + "mkdirp": "^0.5.0", + "safe-buffer": "^5.1.2", + "yallist": "^3.0.2" } }, "unique-filename": { @@ -9450,7 +8506,7 @@ "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "y18n": { @@ -9479,31 +8535,23 @@ "integrity": "sha1-1BDwZbBdojCB/NEPKIVMKb2jOwY=", "dev": true, "requires": { - "cyclist": "0.2.2", - "inherits": "2.0.3", - "readable-stream": "2.3.6" - } - }, - "param-case": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz", - "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=", - "dev": true, - "requires": { - "no-case": "2.3.2" + "cyclist": "~0.2.2", + "inherits": "^2.0.3", + "readable-stream": "^2.1.5" } }, "parse-asn1": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.1.tgz", - "integrity": "sha512-KPx7flKXg775zZpnp9SxJlz00gTd4BmJ2yJufSc44gMCRrRQ7NSzAcSJQfifuOLgW6bEi+ftrALtsgALeB2Adw==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", + "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", "dev": true, "requires": { - "asn1.js": "4.10.1", - "browserify-aes": "1.2.0", - "create-hash": "1.2.0", - "evp_bytestokey": "1.0.3", - "pbkdf2": "3.0.16" + "asn1.js": "^4.0.0", + "browserify-aes": "^1.0.0", + "create-hash": "^1.1.0", + "evp_bytestokey": "^1.0.0", + "pbkdf2": "^3.0.3", + "safe-buffer": "^5.1.1" } }, "parse-json": { @@ -9512,15 +8560,9 @@ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", "dev": true, "requires": { - "error-ex": "1.3.2" + "error-ex": "^1.2.0" } }, - "parse-passwd": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz", - "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=", - "dev": true - }, "parse5": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse5/-/parse5-4.0.0.tgz", @@ -9533,7 +8575,7 @@ "integrity": "sha1-1SCKNzjkZ2bikbouoXNoSSGouJ0=", "dev": true, "requires": { - "better-assert": "1.0.2" + "better-assert": "~1.0.0" } }, "parseuri": { @@ -9542,7 +8584,7 @@ "integrity": "sha1-gCBKUNTbt3m/3G6+J3jZDkvOMgo=", "dev": true, "requires": { - "better-assert": "1.0.2" + "better-assert": "~1.0.0" } }, "parseurl": { @@ -9562,8 +8604,8 @@ "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", "requires": { - "process": "0.11.10", - "util": "0.10.4" + "process": "^0.11.1", + "util": "^0.10.3" } }, "path-browserify": { @@ -9608,25 +8650,6 @@ "integrity": "sha1-PBrfhx6pzWyUMbbqK9dKD/BVxME=", "dev": true }, - "path-proxy": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/path-proxy/-/path-proxy-1.0.0.tgz", - "integrity": "sha1-GOijaFn8nS8aU7SN7hOFQ8Ag3l4=", - "dev": true, - "optional": true, - "requires": { - "inflection": "1.3.8" - }, - "dependencies": { - "inflection": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.3.8.tgz", - "integrity": "sha1-y9Fg2p91sUw8xjV41POWeEvzAU4=", - "dev": true, - "optional": true - } - } - }, "path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", @@ -9639,20 +8662,20 @@ "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==", "dev": true, "requires": { - "pify": "3.0.0" + "pify": "^3.0.0" } }, "pbkdf2": { - "version": "3.0.16", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.16.tgz", - "integrity": "sha512-y4CXP3thSxqf7c0qmOF+9UeOTrifiVTIM+u7NWlq+PRsHbr7r7dpCmvzrZxa96JJUNi0Y5w9VqG5ZNeCVMoDcA==", + "version": "3.0.17", + "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", + "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", "dev": true, "requires": { - "create-hash": "1.2.0", - "create-hmac": "1.1.7", - "ripemd160": "2.0.2", - "safe-buffer": "5.1.2", - "sha.js": "2.4.11" + "create-hash": "^1.1.2", + "create-hmac": "^1.1.4", + "ripemd160": "^2.0.1", + "safe-buffer": "^5.0.1", + "sha.js": "^2.4.8" } }, "performance-now": { @@ -9677,7 +8700,7 @@ "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=", "dev": true, "requires": { - "pinkie": "2.0.4" + "pinkie": "^2.0.0" } }, "pkg-dir": { @@ -9686,7 +8709,7 @@ "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", "dev": true, "requires": { - "find-up": "2.1.0" + "find-up": "^2.1.0" } }, "pkginfo": { @@ -9695,14 +8718,14 @@ "integrity": "sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8=" }, "portfinder": { - "version": "1.0.13", - "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.13.tgz", - "integrity": "sha1-uzLs2HwnEErm7kS1o8y/Drsa7ek=", + "version": "1.0.20", + "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.20.tgz", + "integrity": "sha512-Yxe4mTyDzTd59PZJY4ojZR8F+E5e97iq2ZOHPz3HDgSvYC5siNad2tLooQ5y5QHyQhc3xVqvyk/eNA3wuoa7Sw==", "dev": true, "requires": { - "async": "1.5.2", - "debug": "2.6.9", - "mkdirp": "0.5.1" + "async": "^1.5.2", + "debug": "^2.2.0", + "mkdirp": "0.5.x" }, "dependencies": { "debug": { @@ -9723,26 +8746,59 @@ "dev": true }, "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", + "version": "7.0.14", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.14.tgz", + "integrity": "sha512-NsbD6XUUMZvBxtQAJuWDJeeC4QFsmWsfozWxCJPWf3M55K9iu2iMDaKqyoOdTJ1R4usBXuxlVFAIo8rZPQD4Bg==", "dev": true, "requires": { - "chalk": "2.4.1", - "source-map": "0.6.1", - "supports-color": "5.4.0" + "chalk": "^2.4.2", + "source-map": "^0.6.1", + "supports-color": "^6.1.0" + }, + "dependencies": { + "chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dev": true, + "requires": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "dependencies": { + "supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } + } + }, + "supports-color": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz", + "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==", + "dev": true, + "requires": { + "has-flag": "^3.0.0" + } + } } }, "postcss-import": { - "version": "11.1.0", - "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-11.1.0.tgz", - "integrity": "sha512-5l327iI75POonjxkXgdRCUS+AlzAdBx4pOvMEhTKTCjb1p8IEeVR9yx3cPbmN7LIWJLbfnIXxAhoB4jpD0c/Cw==", + "version": "12.0.1", + "resolved": "https://registry.npmjs.org/postcss-import/-/postcss-import-12.0.1.tgz", + "integrity": "sha512-3Gti33dmCjyKBgimqGxL3vcV8w9+bsHwO5UrBawp796+jdardbcFl4RP5w/76BwNL7aGzpKstIfF9I+kdE8pTw==", "dev": true, "requires": { - "postcss": "6.0.23", - "postcss-value-parser": "3.3.0", - "read-cache": "1.0.0", - "resolve": "1.8.1" + "postcss": "^7.0.1", + "postcss-value-parser": "^3.2.3", + "read-cache": "^1.0.0", + "resolve": "^1.1.7" } }, "postcss-load-config": { @@ -9751,39 +8807,26 @@ "integrity": "sha512-V5JBLzw406BB8UIfsAWSK2KSwIJ5yoEIVFb4gVkXci0QdKgA24jLmHZ/ghe/GgX0lJ0/D1uUK1ejhzEY94MChQ==", "dev": true, "requires": { - "cosmiconfig": "4.0.0", - "import-cwd": "2.1.0" + "cosmiconfig": "^4.0.0", + "import-cwd": "^2.0.0" } }, "postcss-loader": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-2.1.6.tgz", - "integrity": "sha512-hgiWSc13xVQAq25cVw80CH0l49ZKlAnU1hKPOdRrNj89bokRr/bZF2nT+hebPPF9c9xs8c3gw3Fr2nxtmXYnNg==", - "dev": true, - "requires": { - "loader-utils": "1.1.0", - "postcss": "6.0.23", - "postcss-load-config": "2.0.0", - "schema-utils": "0.4.5" - } - }, - "postcss-url": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/postcss-url/-/postcss-url-7.3.2.tgz", - "integrity": "sha512-QMV5mA+pCYZQcUEPQkmor9vcPQ2MT+Ipuu8qdi1gVxbNiIiErEGft+eny1ak19qALoBkccS5AHaCaCDzh7b9MA==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz", + "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==", "dev": true, "requires": { - "mime": "1.6.0", - "minimatch": "3.0.4", - "mkdirp": "0.5.1", - "postcss": "6.0.23", - "xxhashjs": "0.2.2" + "loader-utils": "^1.1.0", + "postcss": "^7.0.0", + "postcss-load-config": "^2.0.0", + "schema-utils": "^1.0.0" } }, "postcss-value-parser": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.0.tgz", - "integrity": "sha1-h/OPnxj3dKSrTIojL1xc6IcqnRU=", + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz", + "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==", "dev": true }, "prelude-ls": { @@ -9791,16 +8834,6 @@ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=" }, - "pretty-error": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.1.tgz", - "integrity": "sha1-X0+HyPkeWuPzuoerTPXgOxoX8aM=", - "dev": true, - "requires": { - "renderkid": "2.0.1", - "utila": "0.4.0" - } - }, "process": { "version": "0.11.10", "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", @@ -9816,7 +8849,7 @@ "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", "integrity": "sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg==", "requires": { - "asap": "2.0.6" + "asap": "~2.0.3" } }, "promise-inflight": { @@ -9831,18 +8864,8 @@ "integrity": "sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0=", "dev": true, "requires": { - "err-code": "1.1.2", - "retry": "0.10.1" - } - }, - "promisify-call": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/promisify-call/-/promisify-call-2.0.4.tgz", - "integrity": "sha1-1IwtRWUszM1SgB3ey9UzptS9X7o=", - "dev": true, - "optional": true, - "requires": { - "with-callback": "1.0.2" + "err-code": "^1.0.0", + "retry": "^0.10.0" } }, "protoduck": { @@ -9851,7 +8874,7 @@ "integrity": "sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg==", "dev": true, "requires": { - "genfun": "5.0.0" + "genfun": "^5.0.0" } }, "protractor": { @@ -9860,24 +8883,30 @@ "integrity": "sha512-ORey5ewQMYiXQxcQohsqEiKYOg/r5yJoJbt0tuROmmgajdg/CA3gTOZNIFJncUVMAJIk5YFqBBLUjKVmQO6tfA==", "dev": true, "requires": { - "@types/node": "6.0.114", - "@types/q": "0.0.32", - "@types/selenium-webdriver": "3.0.12", - "blocking-proxy": "1.0.1", - "browserstack": "1.5.1", - "chalk": "1.1.3", - "glob": "7.1.2", + "@types/node": "^6.0.46", + "@types/q": "^0.0.32", + "@types/selenium-webdriver": "^3.0.0", + "blocking-proxy": "^1.0.0", + "browserstack": "^1.5.1", + "chalk": "^1.1.3", + "glob": "^7.0.3", "jasmine": "2.8.0", - "jasminewd2": "2.2.0", - "optimist": "0.6.1", + "jasminewd2": "^2.1.0", + "optimist": "~0.6.0", "q": "1.4.1", - "saucelabs": "1.5.0", + "saucelabs": "^1.5.0", "selenium-webdriver": "3.6.0", - "source-map-support": "0.4.18", + "source-map-support": "~0.4.0", "webdriver-js-extender": "2.1.0", - "webdriver-manager": "12.1.0" + "webdriver-manager": "^12.0.6" }, "dependencies": { + "@types/node": { + "version": "6.14.4", + "resolved": "https://registry.npmjs.org/@types/node/-/node-6.14.4.tgz", + "integrity": "sha512-UqB7h2dVJr/KdZXRMJIhNUWT0HXVe9UNvfLCOsqiSGKAVaAp0QniYHlU9yegxyG6Ug2rc7VdAD4hYj3VghqvAw==", + "dev": true + }, "ansi-regex": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", @@ -9896,11 +8925,11 @@ "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", "dev": true, "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" } }, "del": { @@ -9909,13 +8938,13 @@ "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=", "dev": true, "requires": { - "globby": "5.0.0", - "is-path-cwd": "1.0.0", - "is-path-in-cwd": "1.0.1", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1", - "rimraf": "2.6.2" + "globby": "^5.0.0", + "is-path-cwd": "^1.0.0", + "is-path-in-cwd": "^1.0.0", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0", + "rimraf": "^2.2.8" } }, "globby": { @@ -9924,12 +8953,12 @@ "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=", "dev": true, "requires": { - "array-union": "1.0.2", - "arrify": "1.0.1", - "glob": "7.1.2", - "object-assign": "4.1.1", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "array-union": "^1.0.1", + "arrify": "^1.0.0", + "glob": "^7.0.3", + "object-assign": "^4.0.1", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "minimist": { @@ -9956,7 +8985,7 @@ "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", "dev": true, "requires": { - "source-map": "0.5.7" + "source-map": "^0.5.6" } }, "strip-ansi": { @@ -9965,7 +8994,7 @@ "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "supports-color": { @@ -9980,17 +9009,17 @@ "integrity": "sha512-oEc5fmkpz6Yh6udhwir5m0eN5mgRPq9P/NU5YWuT3Up5slt6Zz+znhLU7q4+8rwCZz/Qq3Fgpr/4oao7NPCm2A==", "dev": true, "requires": { - "adm-zip": "0.4.11", - "chalk": "1.1.3", - "del": "2.2.2", - "glob": "7.1.2", - "ini": "1.3.5", - "minimist": "1.2.0", - "q": "1.4.1", - "request": "2.87.0", - "rimraf": "2.6.2", - "semver": "5.5.0", - "xml2js": "0.4.19" + "adm-zip": "^0.4.9", + "chalk": "^1.1.1", + "del": "^2.2.0", + "glob": "^7.0.3", + "ini": "^1.3.4", + "minimist": "^1.2.0", + "q": "^1.4.1", + "request": "^2.87.0", + "rimraf": "^2.5.2", + "semver": "^5.3.0", + "xml2js": "^0.4.17" } } } @@ -10001,7 +9030,7 @@ "integrity": "sha512-5erio2h9jp5CHGwcybmxmVqHmnCBZeewlfJ0pex+UW7Qny7OOZXTtH56TGNyBizkgiOwhJtMKrVzDTeKcySZwA==", "dev": true, "requires": { - "forwarded": "0.1.2", + "forwarded": "~0.1.2", "ipaddr.js": "1.8.0" } }, @@ -10010,14 +9039,14 @@ "resolved": "https://registry.npmjs.org/proxy-agent/-/proxy-agent-2.3.1.tgz", "integrity": "sha512-CNKuhC1jVtm8KJYFTS2ZRO71VCBx3QSA92So/e6NrY6GoJonkx3Irnk4047EsCcswczwqAekRj3s8qLRGahSKg==", "requires": { - "agent-base": "4.2.1", - "debug": "3.1.0", - "http-proxy-agent": "2.1.0", - "https-proxy-agent": "2.2.1", - "lru-cache": "4.1.3", - "pac-proxy-agent": "2.0.2", - "proxy-from-env": "1.0.0", - "socks-proxy-agent": "3.0.1" + "agent-base": "^4.2.0", + "debug": "^3.1.0", + "http-proxy-agent": "^2.1.0", + "https-proxy-agent": "^2.2.1", + "lru-cache": "^4.1.2", + "pac-proxy-agent": "^2.0.1", + "proxy-from-env": "^1.0.0", + "socks-proxy-agent": "^3.0.0" } }, "proxy-from-env": { @@ -10036,17 +9065,25 @@ "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" }, + "psl": { + "version": "1.1.31", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.1.31.tgz", + "integrity": "sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==", + "dev": true, + "optional": true + }, "public-encrypt": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.2.tgz", - "integrity": "sha512-4kJ5Esocg8X3h8YgJsKAuoesBgB7mqH3eowiDzMUPKiRDDE7E/BqqZD1hnTByIaAFiwAw246YEltSq7tdrOH0Q==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz", + "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==", "dev": true, "requires": { - "bn.js": "4.11.8", - "browserify-rsa": "4.0.1", - "create-hash": "1.2.0", - "parse-asn1": "5.1.1", - "randombytes": "2.0.6" + "bn.js": "^4.1.0", + "browserify-rsa": "^4.0.0", + "create-hash": "^1.1.0", + "parse-asn1": "^5.0.0", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.2" } }, "pump": { @@ -10055,8 +9092,8 @@ "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "once": "1.4.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, "pumpify": { @@ -10065,9 +9102,9 @@ "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==", "dev": true, "requires": { - "duplexify": "3.6.0", - "inherits": "2.0.3", - "pump": "2.0.1" + "duplexify": "^3.6.0", + "inherits": "^2.0.3", + "pump": "^2.0.0" } }, "punycode": { @@ -10105,18 +9142,18 @@ "dev": true }, "querystringify": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.0.0.tgz", - "integrity": "sha512-eTPo5t/4bgaMNZxyjWx6N2a6AuE0mq51KWvpc7nU/MAqixcI6v6KrGUKES0HaomdnolQBBXU/++X6/QQ9KL4tw==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.1.0.tgz", + "integrity": "sha512-sluvZZ1YiTLD5jsqZcDmFyV2EwToyXZBfpoVOmktMmW+VEnhgakFHnasVph65fOjGPTWN0Nw3+XQaSeMayr0kg==", "dev": true }, "randombytes": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.0.6.tgz", - "integrity": "sha512-CIQ5OFxf4Jou6uOKe9t1AOgqpeU5fd70A8NPdHSGeYXqXsPe6peOwI0cUl88RWZ6sP1vPMV3avd/R6cZ5/sP1A==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.1.0" } }, "randomfill": { @@ -10125,8 +9162,8 @@ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==", "dev": true, "requires": { - "randombytes": "2.0.6", - "safe-buffer": "5.1.2" + "randombytes": "^2.0.5", + "safe-buffer": "^5.1.0" } }, "range-parser": { @@ -10147,10 +9184,14 @@ } }, "raw-loader": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", - "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-1.0.0.tgz", + "integrity": "sha512-Uqy5AqELpytJTRxYT4fhltcKPj0TyaEpzJDcGz7DFJi+pQOOi3GjR/DOdxTkTsF+NzhnldIoG6TORaBlInUuqA==", + "dev": true, + "requires": { + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0" + } }, "read-cache": { "version": "1.0.0", @@ -10158,7 +9199,7 @@ "integrity": "sha1-5mTvMRYRZsl1HNvo28+GtftY93Q=", "dev": true, "requires": { - "pify": "2.3.0" + "pify": "^2.3.0" }, "dependencies": { "pify": { @@ -10174,10 +9215,11 @@ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz", "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=", "dev": true, + "optional": true, "requires": { - "load-json-file": "1.1.0", - "normalize-package-data": "2.4.0", - "path-type": "1.1.0" + "load-json-file": "^1.0.0", + "normalize-package-data": "^2.3.2", + "path-type": "^1.0.0" }, "dependencies": { "path-type": { @@ -10185,17 +9227,19 @@ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz", "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=", "dev": true, + "optional": true, "requires": { - "graceful-fs": "4.1.11", - "pify": "2.3.0", - "pinkie-promise": "2.0.1" + "graceful-fs": "^4.1.2", + "pify": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "pify": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true + "dev": true, + "optional": true } } }, @@ -10204,9 +9248,10 @@ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz", "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=", "dev": true, + "optional": true, "requires": { - "find-up": "1.1.2", - "read-pkg": "1.1.0" + "find-up": "^1.0.0", + "read-pkg": "^1.0.0" }, "dependencies": { "find-up": { @@ -10214,9 +9259,10 @@ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz", "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=", "dev": true, + "optional": true, "requires": { - "path-exists": "2.1.0", - "pinkie-promise": "2.0.1" + "path-exists": "^2.0.0", + "pinkie-promise": "^2.0.0" } }, "path-exists": { @@ -10224,8 +9270,9 @@ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz", "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=", "dev": true, + "optional": true, "requires": { - "pinkie-promise": "2.0.1" + "pinkie-promise": "^2.0.0" } } } @@ -10235,13 +9282,13 @@ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "1.0.0", - "process-nextick-args": "2.0.0", - "safe-buffer": "5.1.2", - "string_decoder": "1.1.1", - "util-deprecate": "1.0.2" + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" }, "dependencies": { "isarray": { @@ -10254,7 +9301,7 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "~5.1.0" } } } @@ -10265,10 +9312,10 @@ "integrity": "sha1-TtCtBg3zBzMAxIRANz9y0cxkLXg=", "dev": true, "requires": { - "graceful-fs": "4.1.11", - "minimatch": "3.0.4", - "readable-stream": "2.3.6", - "set-immediate-shim": "1.0.1" + "graceful-fs": "^4.1.2", + "minimatch": "^3.0.2", + "readable-stream": "^2.0.2", + "set-immediate-shim": "^1.0.1" } }, "rechoir": { @@ -10277,7 +9324,7 @@ "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=", "dev": true, "requires": { - "resolve": "1.8.1" + "resolve": "^1.1.6" } }, "recursive-readdir": { @@ -10293,37 +9340,12 @@ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz", "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=", "dev": true, - "requires": { - "indent-string": "2.1.0", - "strip-indent": "1.0.1" - } - }, - "redis": { - "version": "2.8.0", - "resolved": "https://registry.npmjs.org/redis/-/redis-2.8.0.tgz", - "integrity": "sha512-M1OkonEQwtRmZv4tEWF2VgpG0JWJ8Fv1PhlgT5+B+uNq2cA3Rt1Yt/ryoR+vQNOQcIEgdCdfH0jr3bDpihAw1A==", - "dev": true, "optional": true, "requires": { - "double-ended-queue": "2.1.0-0", - "redis-commands": "1.3.5", - "redis-parser": "2.6.0" + "indent-string": "^2.1.0", + "strip-indent": "^1.0.1" } }, - "redis-commands": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/redis-commands/-/redis-commands-1.3.5.tgz", - "integrity": "sha512-foGF8u6MXGFF++1TZVC6icGXuMYPftKXt1FBT2vrfU9ZATNtZJ8duRC5d1lEfE8hyVe3jhelHGB91oB7I6qLsA==", - "dev": true, - "optional": true - }, - "redis-parser": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/redis-parser/-/redis-parser-2.6.0.tgz", - "integrity": "sha1-Uu0J2srBCPGmMcB+m2mUHnoZUEs=", - "dev": true, - "optional": true - }, "reflect-metadata": { "version": "0.1.13", "resolved": "https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz", @@ -10348,8 +9370,8 @@ "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", "dev": true, "requires": { - "extend-shallow": "3.0.2", - "safe-regex": "1.1.0" + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" } }, "regexpu-core": { @@ -10358,9 +9380,9 @@ "integrity": "sha1-hqdj9Y7k18L2sQLkdkBQ3n7ZDGs=", "dev": true, "requires": { - "regenerate": "1.4.0", - "regjsgen": "0.2.0", - "regjsparser": "0.1.5" + "regenerate": "^1.2.1", + "regjsgen": "^0.2.0", + "regjsparser": "^0.1.4" } }, "regjsgen": { @@ -10375,7 +9397,7 @@ "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", "dev": true, "requires": { - "jsesc": "0.5.0" + "jsesc": "~0.5.0" }, "dependencies": { "jsesc": { @@ -10386,54 +9408,12 @@ } } }, - "relateurl": { - "version": "0.2.7", - "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz", - "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=", - "dev": true - }, "remove-trailing-separator": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz", "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=", "dev": true }, - "renderkid": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.1.tgz", - "integrity": "sha1-iYyr/Ivt5Le5ETWj/9Mj5YwNsxk=", - "dev": true, - "requires": { - "css-select": "1.2.0", - "dom-converter": "0.1.4", - "htmlparser2": "3.3.0", - "strip-ansi": "3.0.1", - "utila": "0.3.3" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "2.1.1" - } - }, - "utila": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.3.3.tgz", - "integrity": "sha1-1+jn1+MJEHCSsF+NloiCTWM6QiY=", - "dev": true - } - } - }, "repeat-element": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.2.tgz", @@ -10452,7 +9432,7 @@ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=", "dev": true, "requires": { - "is-finite": "1.0.2" + "is-finite": "^1.0.0" } }, "request": { @@ -10460,48 +9440,26 @@ "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", "requires": { - "aws-sign2": "0.7.0", - "aws4": "1.7.0", - "caseless": "0.12.0", - "combined-stream": "1.0.6", - "extend": "3.0.2", - "forever-agent": "0.6.1", - "form-data": "2.3.2", - "har-validator": "5.0.3", - "http-signature": "1.2.0", - "is-typedarray": "1.0.0", - "isstream": "0.1.2", - "json-stringify-safe": "5.0.1", - "mime-types": "2.1.19", - "oauth-sign": "0.8.2", - "performance-now": "2.1.0", - "qs": "6.5.2", - "safe-buffer": "5.1.2", - "tough-cookie": "2.3.4", - "tunnel-agent": "0.6.0", - "uuid": "3.3.2" - } - }, - "requestretry": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/requestretry/-/requestretry-1.13.0.tgz", - "integrity": "sha512-Lmh9qMvnQXADGAQxsXHP4rbgO6pffCfuR8XUBdP9aitJcLQJxhp7YZK4xAVYXnPJ5E52mwrfiKQtKonPL8xsmg==", - "dev": true, - "optional": true, - "requires": { - "extend": "3.0.2", - "lodash": "4.17.11", - "request": "2.87.0", - "when": "3.7.8" - }, - "dependencies": { - "when": { - "version": "3.7.8", - "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz", - "integrity": "sha1-xxMLan6gRpPoQs3J56Hyqjmjn4I=", - "dev": true, - "optional": true - } + "aws-sign2": "~0.7.0", + "aws4": "^1.6.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.5", + "extend": "~3.0.1", + "forever-agent": "~0.6.1", + "form-data": "~2.3.1", + "har-validator": "~5.0.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.17", + "oauth-sign": "~0.8.2", + "performance-now": "^2.1.0", + "qs": "~6.5.1", + "safe-buffer": "^5.1.1", + "tough-cookie": "~2.3.3", + "tunnel-agent": "^0.6.0", + "uuid": "^3.1.0" } }, "require-directory": { @@ -10534,7 +9492,7 @@ "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==", "dev": true, "requires": { - "path-parse": "1.0.5" + "path-parse": "^1.0.5" } }, "resolve-cwd": { @@ -10543,7 +9501,7 @@ "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", "dev": true, "requires": { - "resolve-from": "3.0.0" + "resolve-from": "^3.0.0" } }, "resolve-from": { @@ -10563,8 +9521,8 @@ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", "requires": { - "onetime": "2.0.1", - "signal-exit": "3.0.2" + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" } }, "ret": { @@ -10579,15 +9537,11 @@ "integrity": "sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q=", "dev": true }, - "right-align": { - "version": "0.1.3", - "resolved": "https://registry.npmjs.org/right-align/-/right-align-0.1.3.tgz", - "integrity": "sha1-YTObci/mo1FWiSENJOFMlhSGE+8=", - "dev": true, - "optional": true, - "requires": { - "align-text": "0.1.4" - } + "rfdc": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.1.2.tgz", + "integrity": "sha512-92ktAgvZhBzYTIK0Mja9uen5q5J3NRVMoDkJL2VMwq6SXjVCgqvQeVP2XAaUY6HT+XpQYeLSjb3UoitBryKmdA==", + "dev": true }, "rimraf": { "version": "2.6.2", @@ -10595,7 +9549,7 @@ "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==", "dev": true, "requires": { - "glob": "7.1.2" + "glob": "^7.0.5" } }, "ripemd160": { @@ -10604,8 +9558,8 @@ "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", "dev": true, "requires": { - "hash-base": "3.0.4", - "inherits": "2.0.3" + "hash-base": "^3.0.0", + "inherits": "^2.0.1" } }, "run-async": { @@ -10613,7 +9567,7 @@ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", "requires": { - "is-promise": "2.1.0" + "is-promise": "^2.1.0" } }, "run-queue": { @@ -10622,7 +9576,7 @@ "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", "dev": true, "requires": { - "aproba": "1.2.0" + "aproba": "^1.1.1" } }, "rx-lite": { @@ -10635,7 +9589,7 @@ "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", "requires": { - "rx-lite": "4.0.8" + "rx-lite": "*" } }, "rxjs": { @@ -10643,7 +9597,7 @@ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.4.0.tgz", "integrity": "sha512-Z9Yfa11F6B9Sg/BK9MnqnQ+aQYicPLtilXBp2yUtDt2JRCE0h26d33EnfO3ZxoNxG0T92OUucP3Ct7cpfkdFfw==", "requires": { - "tslib": "1.9.3" + "tslib": "^1.9.0" } }, "safe-buffer": { @@ -10657,7 +9611,7 @@ "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=", "dev": true, "requires": { - "ret": "0.1.15" + "ret": "~0.1.10" } }, "safer-buffer": { @@ -10672,10 +9626,10 @@ "dev": true, "optional": true, "requires": { - "glob": "7.1.2", - "lodash": "4.17.11", - "scss-tokenizer": "0.2.3", - "yargs": "7.1.0" + "glob": "^7.0.0", + "lodash": "^4.0.0", + "scss-tokenizer": "^0.2.3", + "yargs": "^7.0.0" }, "dependencies": { "ansi-regex": { @@ -10699,7 +9653,7 @@ "dev": true, "optional": true, "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -10709,9 +9663,9 @@ "dev": true, "optional": true, "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -10721,7 +9675,7 @@ "dev": true, "optional": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } }, "yargs": { @@ -10731,34 +9685,35 @@ "dev": true, "optional": true, "requires": { - "camelcase": "3.0.0", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "get-caller-file": "1.0.3", - "os-locale": "1.4.0", - "read-pkg-up": "1.0.1", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "1.0.2", - "which-module": "1.0.0", - "y18n": "3.2.1", - "yargs-parser": "5.0.0" + "camelcase": "^3.0.0", + "cliui": "^3.2.0", + "decamelize": "^1.1.1", + "get-caller-file": "^1.0.1", + "os-locale": "^1.4.0", + "read-pkg-up": "^1.0.1", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^1.0.2", + "which-module": "^1.0.0", + "y18n": "^3.2.1", + "yargs-parser": "^5.0.0" } } } }, "sass-loader": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.0.3.tgz", - "integrity": "sha512-iaSFtQcGo4SSgDw5Aes5p4VTrA5jCGSA7sGmhPIcOloBlgI1VktM2MUrk2IHHjbNagckXlPz+HWq1vAAPrcYxA==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz", + "integrity": "sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w==", "dev": true, "requires": { - "clone-deep": "2.0.2", - "loader-utils": "1.1.0", - "lodash.tail": "4.1.1", - "neo-async": "2.5.1", - "pify": "3.0.0" + "clone-deep": "^2.0.1", + "loader-utils": "^1.0.1", + "lodash.tail": "^4.1.1", + "neo-async": "^2.5.0", + "pify": "^3.0.0", + "semver": "^5.5.0" }, "dependencies": { "clone-deep": { @@ -10767,10 +9722,10 @@ "integrity": "sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ==", "dev": true, "requires": { - "for-own": "1.0.0", - "is-plain-object": "2.0.4", - "kind-of": "6.0.2", - "shallow-clone": "1.0.0" + "for-own": "^1.0.0", + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.0", + "shallow-clone": "^1.0.0" } }, "kind-of": { @@ -10785,9 +9740,9 @@ "integrity": "sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA==", "dev": true, "requires": { - "is-extendable": "0.1.1", - "kind-of": "5.1.0", - "mixin-object": "2.0.1" + "is-extendable": "^0.1.1", + "kind-of": "^5.0.0", + "mixin-object": "^2.0.1" }, "dependencies": { "kind-of": { @@ -10806,7 +9761,7 @@ "integrity": "sha512-jlX3FGdWvYf4Q3LFfFWS1QvPg3IGCGWxIc8QBFdPTbpTJnt/v17FHXYVAn7C8sHf1yUXo2c7yIM0isDryfYtHQ==", "dev": true, "requires": { - "https-proxy-agent": "2.2.1" + "https-proxy-agent": "^2.2.1" } }, "sax": { @@ -10815,25 +9770,26 @@ "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" }, "schema-utils": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.5.tgz", - "integrity": "sha512-yYrjb9TX2k/J1Y5UNy3KYdZq10xhYcF8nMpAW6o3hy6Q8WSIEf9lJHG/ePnOBfziPM3fvQwfOwa13U/Fh8qTfA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz", + "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==", "dev": true, "requires": { - "ajv": "6.5.2", - "ajv-keywords": "3.2.0" + "ajv": "^6.1.0", + "ajv-errors": "^1.0.0", + "ajv-keywords": "^3.1.0" }, "dependencies": { "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "fast-deep-equal": { @@ -10847,21 +9803,6 @@ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true - }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", - "dev": true, - "requires": { - "punycode": "2.1.1" - } } } }, @@ -10877,8 +9818,8 @@ "dev": true, "optional": true, "requires": { - "js-base64": "2.4.8", - "source-map": "0.4.4" + "js-base64": "^2.1.8", + "source-map": "^0.4.2" }, "dependencies": { "source-map": { @@ -10888,7 +9829,7 @@ "dev": true, "optional": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -10910,10 +9851,10 @@ "integrity": "sha512-WH7Aldse+2P5bbFBO4Gle/nuQOdVwpHMTL6raL3uuBj/vPG07k6uzt3aiahu352ONBr5xXh0hDlM3LhtXPOC4Q==", "dev": true, "requires": { - "jszip": "3.1.5", - "rimraf": "2.6.2", + "jszip": "^3.1.3", + "rimraf": "^2.5.4", "tmp": "0.0.30", - "xml2js": "0.4.19" + "xml2js": "^0.4.17" }, "dependencies": { "tmp": { @@ -10922,15 +9863,15 @@ "integrity": "sha1-ckGdSovn1s51FI/YsyTlk6cRwu0=", "dev": true, "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.1" } } } }, "selfsigned": { - "version": "1.10.3", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.3.tgz", - "integrity": "sha512-vmZenZ+8Al3NLHkWnhBQ0x6BkML1eCP2xEi3JE+f3D9wW9fipD9NNJHYtE9XJM4TsPaHGZJIamrSI6MTg1dU2Q==", + "version": "1.10.4", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.4.tgz", + "integrity": "sha512-9AukTiDmHXGXWtWjembZ5NDmVvP2695EtpgbCsxCa68w3c88B+alqbmZ4O3hZ4VWGXeGWzEVdvqgAJD8DQPCDw==", "dev": true, "requires": { "node-forge": "0.7.5" @@ -10947,7 +9888,7 @@ "integrity": "sha1-02eN5VVeimH2Ke7QJTZq5fJzQKA=", "dev": true, "requires": { - "semver": "5.5.0" + "semver": "^5.3.0" } }, "semver-intersect": { @@ -10956,7 +9897,7 @@ "integrity": "sha512-d8fvGg5ycKAq0+I6nfWeCx6ffaWJCsBYU0H2Rq56+/zFePYfT8mXkB3tWBSjR5BerkHNZ5eTPIk1/LBYas35xQ==", "dev": true, "requires": { - "semver": "5.5.0" + "semver": "^5.0.0" } }, "send": { @@ -10966,18 +9907,18 @@ "dev": true, "requires": { "debug": "2.6.9", - "depd": "1.1.2", - "destroy": "1.0.4", - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "etag": "1.8.1", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "1.6.3", + "http-errors": "~1.6.2", "mime": "1.4.1", "ms": "2.0.0", - "on-finished": "2.3.0", - "range-parser": "1.2.0", - "statuses": "1.4.0" + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" }, "dependencies": { "debug": { @@ -11004,9 +9945,9 @@ } }, "serialize-javascript": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.5.0.tgz", - "integrity": "sha512-Ga8c8NjAAp46Br4+0oZ2WxJCwIzwP60Gq1YPgU+39PiTVxyed/iKE/zyZI6+UlVYH5Q4PaQdHhcegIFPZTUfoQ==", + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-1.6.1.tgz", + "integrity": "sha512-A5MOagrPFga4YaKQSWHryl7AXvbQkEqpw4NNYMTNYUNV51bA8ABHgYFpqKx+YFFrw59xMV1qGH1R4AgoNIVgCw==", "dev": true }, "serve-index": { @@ -11015,13 +9956,13 @@ "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=", "dev": true, "requires": { - "accepts": "1.3.5", + "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", - "escape-html": "1.0.3", - "http-errors": "1.6.3", - "mime-types": "2.1.19", - "parseurl": "1.3.2" + "escape-html": "~1.0.3", + "http-errors": "~1.6.2", + "mime-types": "~2.1.17", + "parseurl": "~1.3.2" }, "dependencies": { "debug": { @@ -11041,9 +9982,9 @@ "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "dev": true, "requires": { - "encodeurl": "1.0.2", - "escape-html": "1.0.3", - "parseurl": "1.3.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.2", "send": "0.16.2" } }, @@ -11065,10 +10006,10 @@ "integrity": "sha512-hw0yxk9GT/Hr5yJEYnHNKYXkIA8mVJgd9ditYZCe16ZczcaELYYcfvaXesNACk2O8O0nTiPQcQhGUQj8JLzeeg==", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "split-string": "3.1.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" }, "dependencies": { "extend-shallow": { @@ -11077,7 +10018,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } } } @@ -11099,8 +10040,8 @@ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==", "dev": true, "requires": { - "inherits": "2.0.3", - "safe-buffer": "5.1.2" + "inherits": "^2.0.1", + "safe-buffer": "^5.0.1" } }, "shallow-clone": { @@ -11108,10 +10049,10 @@ "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-0.1.2.tgz", "integrity": "sha1-WQnodLp3EG1zrEFM/sH/yofZcGA=", "requires": { - "is-extendable": "0.1.1", - "kind-of": "2.0.1", - "lazy-cache": "0.2.7", - "mixin-object": "2.0.1" + "is-extendable": "^0.1.1", + "kind-of": "^2.0.1", + "lazy-cache": "^0.2.3", + "mixin-object": "^2.0.1" }, "dependencies": { "kind-of": { @@ -11119,7 +10060,7 @@ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-2.0.1.tgz", "integrity": "sha1-AY7HpM5+OobLkUG+UZ0kyPqpgbU=", "requires": { - "is-buffer": "1.1.6" + "is-buffer": "^1.0.2" } } } @@ -11130,7 +10071,7 @@ "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", "dev": true, "requires": { - "shebang-regex": "1.0.0" + "shebang-regex": "^1.0.0" } }, "shebang-regex": { @@ -11145,9 +10086,9 @@ "integrity": "sha512-fc0BKlAWiLpwZljmOvAOTE/gXawtCoNrP5oaY7KIaQbbyHeQVg01pSEuEGvGh3HEdBU4baCD7wQBwADmM/7f7A==", "dev": true, "requires": { - "glob": "7.1.2", - "interpret": "1.2.0", - "rechoir": "0.6.2" + "glob": "^7.0.0", + "interpret": "^1.0.0", + "rechoir": "^0.6.2" } }, "signal-exit": { @@ -11155,36 +10096,6 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=" }, - "silent-error": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/silent-error/-/silent-error-1.1.0.tgz", - "integrity": "sha1-IglwbxyFCp8dENDYQJGLRvJuG8k=", - "dev": true, - "requires": { - "debug": "2.6.9" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } - } - }, - "slack-node": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/slack-node/-/slack-node-0.2.0.tgz", - "integrity": "sha1-3kuN3aqLeT9h29KTgQT9q/N9+jA=", - "dev": true, - "optional": true, - "requires": { - "requestretry": "1.13.0" - } - }, "slash": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", @@ -11196,30 +10107,20 @@ "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-1.1.15.tgz", "integrity": "sha1-fxFLW2X6s+KjWqd1uxLw0cZJvxY=" }, - "smtp-connection": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/smtp-connection/-/smtp-connection-2.12.0.tgz", - "integrity": "sha1-1275EnyyPCJZ7bHoNJwujV4tdME=", - "dev": true, - "requires": { - "httpntlm": "1.6.1", - "nodemailer-shared": "1.1.0" - } - }, "snapdragon": { "version": "0.8.2", "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", "dev": true, "requires": { - "base": "0.11.2", - "debug": "2.6.9", - "define-property": "0.2.5", - "extend-shallow": "2.0.1", - "map-cache": "0.2.2", - "source-map": "0.5.7", - "source-map-resolve": "0.5.2", - "use": "3.1.1" + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" }, "dependencies": { "debug": { @@ -11237,7 +10138,7 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } }, "extend-shallow": { @@ -11246,7 +10147,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "source-map": { @@ -11263,9 +10164,9 @@ "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", "dev": true, "requires": { - "define-property": "1.0.0", - "isobject": "3.0.1", - "snapdragon-util": "3.0.1" + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" }, "dependencies": { "define-property": { @@ -11274,7 +10175,7 @@ "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=", "dev": true, "requires": { - "is-descriptor": "1.0.2" + "is-descriptor": "^1.0.0" } }, "is-accessor-descriptor": { @@ -11283,7 +10184,7 @@ "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-data-descriptor": { @@ -11292,7 +10193,7 @@ "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==", "dev": true, "requires": { - "kind-of": "6.0.2" + "kind-of": "^6.0.0" } }, "is-descriptor": { @@ -11301,9 +10202,9 @@ "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==", "dev": true, "requires": { - "is-accessor-descriptor": "1.0.0", - "is-data-descriptor": "1.0.0", - "kind-of": "6.0.2" + "is-accessor-descriptor": "^1.0.0", + "is-data-descriptor": "^1.0.0", + "kind-of": "^6.0.2" } }, "kind-of": { @@ -11320,17 +10221,7 @@ "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", "dev": true, "requires": { - "kind-of": "3.2.2" - } - }, - "sntp": { - "version": "1.0.9", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-1.0.9.tgz", - "integrity": "sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg=", - "dev": true, - "optional": true, - "requires": { - "hoek": "2.16.3" + "kind-of": "^3.2.0" } }, "snyk": { @@ -11338,21 +10229,21 @@ "resolved": "https://registry.npmjs.org/snyk/-/snyk-1.89.1.tgz", "integrity": "sha1-22QgOt/JnNPltDZ7hR7r7qv0RSI=", "requires": { - "abbrev": "1.1.1", - "ansi-escapes": "3.1.0", - "chalk": "2.4.1", - "configstore": "3.1.2", - "debug": "3.1.0", - "hasbin": "1.2.3", - "inquirer": "3.3.0", - "lodash": "4.17.11", - "needle": "2.2.1", - "opn": "5.3.0", - "os-name": "2.0.1", - "proxy-agent": "2.3.1", - "proxy-from-env": "1.0.0", - "recursive-readdir": "2.2.2", - "semver": "5.5.0", + "abbrev": "^1.1.1", + "ansi-escapes": "^3.1.0", + "chalk": "^2.4.1", + "configstore": "^3.1.2", + "debug": "^3.1.0", + "hasbin": "^1.2.3", + "inquirer": "^3.0.0", + "lodash": "^4.17.5", + "needle": "^2.0.1", + "opn": "^5.2.0", + "os-name": "^2.0.1", + "proxy-agent": "^2.0.0", + "proxy-from-env": "^1.0.0", + "recursive-readdir": "^2.2.2", + "semver": "^5.5.0", "snyk-config": "2.1.0", "snyk-docker-plugin": "1.10.3", "snyk-go-plugin": "1.5.1", @@ -11366,12 +10257,12 @@ "snyk-resolve": "1.0.1", "snyk-resolve-deps": "3.1.0", "snyk-sbt-plugin": "1.3.0", - "snyk-tree": "1.0.0", + "snyk-tree": "^1.0.0", "snyk-try-require": "1.3.1", - "tempfile": "2.0.0", - "then-fs": "2.0.0", - "undefsafe": "2.0.2", - "uuid": "3.3.2" + "tempfile": "^2.0.0", + "then-fs": "^2.0.0", + "undefsafe": "^2.0.0", + "uuid": "^3.2.1" } }, "snyk-config": { @@ -11379,8 +10270,8 @@ "resolved": "https://registry.npmjs.org/snyk-config/-/snyk-config-2.1.0.tgz", "integrity": "sha512-D1Xz1pZa9lwA9AHogmAigyJGo/iuEGH+rcPB77mFsneVfnuiK9c6IjnsHbEBUf1cePtZvWdGBjs6e75Cvc2AMg==", "requires": { - "debug": "3.1.0", - "nconf": "0.10.0" + "debug": "^3.1.0", + "nconf": "^0.10.0" } }, "snyk-docker-plugin": { @@ -11388,11 +10279,11 @@ "resolved": "https://registry.npmjs.org/snyk-docker-plugin/-/snyk-docker-plugin-1.10.3.tgz", "integrity": "sha512-nIw6zS705SiQLEhBwoO2qsJ3lVN1DZ48tyMgqhlr5f5GuOrwUJ0ivUK5HQUI79xA6pF7tU18495OlbsKuEHUOw==", "requires": { - "debug": "3.1.0", - "fs-extra": "5.0.0", - "pkginfo": "0.4.1", - "request": "2.87.0", - "temp-dir": "1.0.0" + "debug": "^3.1.0", + "fs-extra": "^5.0.0", + "pkginfo": "^0.4.1", + "request": "^2.87.0", + "temp-dir": "^1.0.0" } }, "snyk-go-plugin": { @@ -11400,9 +10291,9 @@ "resolved": "https://registry.npmjs.org/snyk-go-plugin/-/snyk-go-plugin-1.5.1.tgz", "integrity": "sha512-8OPJOT05Z/UL5fFSXV6b/A6KjlS1Ahr2gpup1bhXtAGXlUUPyWidqkCIER9fexDXqYWgAoDAdn9YHIvmL/5bfw==", "requires": { - "graphlib": "2.1.5", + "graphlib": "^2.1.1", "tmp": "0.0.33", - "toml": "2.3.3" + "toml": "^2.3.2" } }, "snyk-gradle-plugin": { @@ -11410,7 +10301,7 @@ "resolved": "https://registry.npmjs.org/snyk-gradle-plugin/-/snyk-gradle-plugin-1.3.0.tgz", "integrity": "sha512-rKZcPwbDM9zk3pFcO0w77MIKOZTkk5ZBVBkBlTlUiFg+eNOKqPTmw2hBGF5NB4ASQmMnx3uB1C8+hrQ405CthA==", "requires": { - "clone-deep": "0.3.0" + "clone-deep": "^0.3.0" } }, "snyk-module": { @@ -11418,8 +10309,8 @@ "resolved": "https://registry.npmjs.org/snyk-module/-/snyk-module-1.8.2.tgz", "integrity": "sha512-XqhdbZ/CUuJ5gSaYdYfapLqx9qm2Mp6nyRMBCLXe9tJSiohOJsc9fQuUDbdOiRCqpA4BD6WLl+qlwOJmJoszBg==", "requires": { - "debug": "3.1.0", - "hosted-git-info": "2.7.1" + "debug": "^3.1.0", + "hosted-git-info": "^2.1.4" } }, "snyk-mvn-plugin": { @@ -11432,11 +10323,11 @@ "resolved": "https://registry.npmjs.org/snyk-nuget-plugin/-/snyk-nuget-plugin-1.6.3.tgz", "integrity": "sha512-sC590aveQb0ns7HuDheIZ7FhN/HZzWgzXKUnBGfia/SXIFBpQz/6tognraMJ4+877uLLSdsB2jkyDeHYeWICrg==", "requires": { - "debug": "3.1.0", - "es6-promise": "4.2.4", - "lodash": "4.17.11", - "xml2js": "0.4.19", - "zip": "1.2.0" + "debug": "^3.1.0", + "es6-promise": "^4.1.1", + "lodash": "^4.17.10", + "xml2js": "^0.4.17", + "zip": "^1.2.0" } }, "snyk-php-plugin": { @@ -11444,8 +10335,8 @@ "resolved": "https://registry.npmjs.org/snyk-php-plugin/-/snyk-php-plugin-1.5.1.tgz", "integrity": "sha512-g5QSHBsRJ2O4cNxKC4zlWwnQYiSgQ77Y6QgGmo3ihPX3VLZrc1amaZIpPsNe1jwXirnGj2rvR5Xw+jDjbzvHFw==", "requires": { - "debug": "3.1.0", - "lodash": "4.17.11", + "debug": "^3.1.0", + "lodash": "^4.17.5", "path": "0.12.7" } }, @@ -11454,15 +10345,15 @@ "resolved": "https://registry.npmjs.org/snyk-policy/-/snyk-policy-1.12.0.tgz", "integrity": "sha512-CEioNnDzccHyid7UIVl3bJ1dnG4co4ofI+KxuC1mo0IUXy64gxnBTeVoZF5gVLWbAyxGxSeW8f0+8GmWMHVb7w==", "requires": { - "debug": "3.1.0", - "email-validator": "2.0.4", - "js-yaml": "3.12.0", - "lodash.clonedeep": "4.5.0", - "semver": "5.5.0", - "snyk-module": "1.8.2", - "snyk-resolve": "1.0.1", - "snyk-try-require": "1.3.1", - "then-fs": "2.0.0" + "debug": "^3.1.0", + "email-validator": "^2.0.3", + "js-yaml": "^3.5.3", + "lodash.clonedeep": "^4.3.1", + "semver": "^5.5.0", + "snyk-module": "^1.8.2", + "snyk-resolve": "^1.0.1", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" } }, "snyk-python-plugin": { @@ -11478,8 +10369,8 @@ "resolved": "https://registry.npmjs.org/snyk-resolve/-/snyk-resolve-1.0.1.tgz", "integrity": "sha512-7+i+LLhtBo1Pkth01xv+RYJU8a67zmJ8WFFPvSxyCjdlKIcsps4hPQFebhz+0gC5rMemlaeIV6cqwqUf9PEDpw==", "requires": { - "debug": "3.1.0", - "then-fs": "2.0.0" + "debug": "^3.1.0", + "then-fs": "^2.0.0" } }, "snyk-resolve-deps": { @@ -11487,20 +10378,20 @@ "resolved": "https://registry.npmjs.org/snyk-resolve-deps/-/snyk-resolve-deps-3.1.0.tgz", "integrity": "sha512-YVAelR+dTpqLgfk6lf6WgOlw+MGmGI0r3/Dny8tUbJJ9uVTHTRAOdZCbUyTFqJG7oEmEZxUwmfjqgAuniYwx8Q==", "requires": { - "ansicolors": "0.3.2", - "debug": "3.1.0", - "lodash.assign": "4.2.0", - "lodash.assignin": "4.2.0", - "lodash.flatten": "4.4.0", - "lodash.get": "4.4.2", - "lodash.set": "4.3.2", - "lru-cache": "4.1.3", - "semver": "5.5.0", - "snyk-module": "1.8.2", - "snyk-resolve": "1.0.1", - "snyk-tree": "1.0.0", - "snyk-try-require": "1.3.1", - "then-fs": "2.0.0" + "ansicolors": "^0.3.2", + "debug": "^3.1.0", + "lodash.assign": "^4.2.0", + "lodash.assignin": "^4.2.0", + "lodash.flatten": "^4.4.0", + "lodash.get": "^4.4.2", + "lodash.set": "^4.3.2", + "lru-cache": "^4.0.0", + "semver": "^5.1.0", + "snyk-module": "^1.6.0", + "snyk-resolve": "^1.0.0", + "snyk-tree": "^1.0.0", + "snyk-try-require": "^1.1.1", + "then-fs": "^2.0.0" } }, "snyk-sbt-plugin": { @@ -11508,7 +10399,7 @@ "resolved": "https://registry.npmjs.org/snyk-sbt-plugin/-/snyk-sbt-plugin-1.3.0.tgz", "integrity": "sha512-SRxPB16392dvN3Qv2RfUcHe0XETLWx2kNIOuoNXvc2Gl6DuPW+X+meDJY7xC/yQhU7bSPPKoM2B7awYaj9i2Bg==", "requires": { - "debug": "2.6.9" + "debug": "^2.2.0" }, "dependencies": { "debug": { @@ -11526,7 +10417,7 @@ "resolved": "https://registry.npmjs.org/snyk-tree/-/snyk-tree-1.0.0.tgz", "integrity": "sha1-D7cxdtvzLngvGRAClBYESPkRHMg=", "requires": { - "archy": "1.0.0" + "archy": "^1.0.0" } }, "snyk-try-require": { @@ -11534,34 +10425,24 @@ "resolved": "https://registry.npmjs.org/snyk-try-require/-/snyk-try-require-1.3.1.tgz", "integrity": "sha1-bgJvkuZK9/zM6h7lPVJIQeQYohI=", "requires": { - "debug": "3.1.0", - "lodash.clonedeep": "4.5.0", - "lru-cache": "4.1.3", - "then-fs": "2.0.0" + "debug": "^3.1.0", + "lodash.clonedeep": "^4.3.0", + "lru-cache": "^4.0.0", + "then-fs": "^2.0.0" } }, "socket.io": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.0.4.tgz", - "integrity": "sha1-waRZDO/4fs8TxyZS8Eb3FrKeYBQ=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-2.1.1.tgz", + "integrity": "sha512-rORqq9c+7W0DAK3cleWNSyfv/qKXV99hV4tZe+gGLfBECw3XEhBy7x85F3wypA9688LKjtwO9pX9L33/xQI8yA==", "dev": true, "requires": { - "debug": "2.6.9", - "engine.io": "3.1.5", - "socket.io-adapter": "1.1.1", - "socket.io-client": "2.0.4", - "socket.io-parser": "3.1.3" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } + "debug": "~3.1.0", + "engine.io": "~3.2.0", + "has-binary2": "~1.0.2", + "socket.io-adapter": "~1.1.0", + "socket.io-client": "2.1.1", + "socket.io-parser": "~3.2.0" } }, "socket.io-adapter": { @@ -11571,46 +10452,35 @@ "dev": true }, "socket.io-client": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.0.4.tgz", - "integrity": "sha1-CRilUkBtxeVAs4Dc2Xr8SmQzL44=", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-2.1.1.tgz", + "integrity": "sha512-jxnFyhAuFxYfjqIgduQlhzqTcOEQSn+OHKVfAxWaNWa7ecP7xSNk2Dx/3UEsDcY7NcFafxvNvKPmmO7HTwTxGQ==", "dev": true, "requires": { "backo2": "1.0.2", "base64-arraybuffer": "0.1.5", "component-bind": "1.0.0", "component-emitter": "1.2.1", - "debug": "2.6.9", - "engine.io-client": "3.1.6", + "debug": "~3.1.0", + "engine.io-client": "~3.2.0", + "has-binary2": "~1.0.2", "has-cors": "1.1.0", "indexof": "0.0.1", "object-component": "0.0.3", "parseqs": "0.0.5", "parseuri": "0.0.5", - "socket.io-parser": "3.1.3", + "socket.io-parser": "~3.2.0", "to-array": "0.1.4" - }, - "dependencies": { - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", - "dev": true, - "requires": { - "ms": "2.0.0" - } - } } }, "socket.io-parser": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.1.3.tgz", - "integrity": "sha512-g0a2HPqLguqAczs3dMECuA1RgoGFPyvDqcbaDEdCWY9g59kdUAz3YRmaJBNKXflrHNwB7Q12Gkf/0CZXfdHR7g==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-3.2.0.tgz", + "integrity": "sha512-FYiBx7rc/KORMJlgsXysflWx/RIvtqZbyGLlHZvjfmPTPeuD/I8MaW7cfFrj5tRltICJdgwflhfZ3NVVbVLFQA==", "dev": true, "requires": { "component-emitter": "1.2.1", - "debug": "3.1.0", - "has-binary2": "1.0.3", + "debug": "~3.1.0", "isarray": "2.0.1" }, "dependencies": { @@ -11628,31 +10498,31 @@ "integrity": "sha512-V48klKZl8T6MzatbLlzzRNhMepEys9Y4oGFpypBFFn1gLI/QQ9HtLLyWJNbPlwGLelOVOEijUbTTJeLLI59jLw==", "dev": true, "requires": { - "faye-websocket": "0.10.0", - "uuid": "3.3.2" + "faye-websocket": "^0.10.0", + "uuid": "^3.0.1" } }, "sockjs-client": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.1.5.tgz", - "integrity": "sha1-G7fA9yIsQPQq3xT0RCy9Eml3GoM=", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.3.0.tgz", + "integrity": "sha512-R9jxEzhnnrdxLCNln0xg5uGHqMnkhPSTzUZH2eXcR03S/On9Yvoq2wyUZILRUhZCNVu2PmwWVoyuiPz8th8zbg==", "dev": true, "requires": { - "debug": "2.6.9", - "eventsource": "0.1.6", - "faye-websocket": "0.11.1", - "inherits": "2.0.3", - "json3": "3.3.2", - "url-parse": "1.4.3" + "debug": "^3.2.5", + "eventsource": "^1.0.7", + "faye-websocket": "~0.11.1", + "inherits": "^2.0.3", + "json3": "^3.3.2", + "url-parse": "^1.4.3" }, "dependencies": { "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "3.2.6", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz", + "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } }, "faye-websocket": { @@ -11661,8 +10531,14 @@ "integrity": "sha1-8O/hjE9W5PQK/H4Gxxn9XuYYjzg=", "dev": true, "requires": { - "websocket-driver": "0.7.0" + "websocket-driver": ">=0.5.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, @@ -11671,8 +10547,8 @@ "resolved": "https://registry.npmjs.org/socks/-/socks-1.1.10.tgz", "integrity": "sha1-W4t/x8jzQcU+0FbpKbe/Tei6e1o=", "requires": { - "ip": "1.1.5", - "smart-buffer": "1.1.15" + "ip": "^1.1.4", + "smart-buffer": "^1.0.13" } }, "socks-proxy-agent": { @@ -11680,14 +10556,14 @@ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-3.0.1.tgz", "integrity": "sha512-ZwEDymm204mTzvdqyUqOdovVr2YRd2NYskrYrF2LXyZ9qDiMAoFESGK8CRphiO7rtbo2Y757k2Nia3x2hGtalA==", "requires": { - "agent-base": "4.2.1", - "socks": "1.1.10" + "agent-base": "^4.1.0", + "socks": "^1.1.10" } }, "source-list-map": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.0.tgz", - "integrity": "sha512-I2UmuJSRr/T8jisiROLU3A3ltr+swpniSmNPI4Ml3ZCX6tVnDsuZzK7F2hl5jTqbZBWCEKlj5HRQiPExXLgE8A==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, "source-map": { @@ -11695,27 +10571,48 @@ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, + "source-map-loader": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/source-map-loader/-/source-map-loader-0.2.4.tgz", + "integrity": "sha512-OU6UJUty+i2JDpTItnizPrlpOIBLmQbWMuBg9q5bVtnHACqw1tn9nNwqJLbv0/00JjnJb/Ee5g5WS5vrRv7zIQ==", + "dev": true, + "requires": { + "async": "^2.5.0", + "loader-utils": "^1.1.0" + }, + "dependencies": { + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + } + } + }, "source-map-resolve": { "version": "0.5.2", "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.2.tgz", "integrity": "sha512-MjqsvNwyz1s0k81Goz/9vRBe9SZdB09Bdw+/zYyO+3CuPk6fouTaxscHkgtE8jKvf01kVfl8riHzERQ/kefaSA==", "dev": true, "requires": { - "atob": "2.1.1", - "decode-uri-component": "0.2.0", - "resolve-url": "0.2.1", - "source-map-url": "0.4.0", - "urix": "0.1.0" + "atob": "^2.1.1", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" } }, "source-map-support": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", - "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", + "version": "0.5.10", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.10.tgz", + "integrity": "sha512-YfQ3tQFTK/yzlGJuX8pTwa4tifQj4QS2Mj7UegOu8jAz59MqIiMGPXxQhVQiIMNzayuUSF/jEuVnfFF5JqybmQ==", "dev": true, "requires": { - "buffer-from": "1.1.1", - "source-map": "0.6.1" + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, "source-map-url": { @@ -11736,8 +10633,8 @@ "integrity": "sha512-N19o9z5cEyc8yQQPukRCZ9EUmb4HUpnrmaL/fxS2pBo2jbfcFRVuFZ/oFC+vZz0MNNk0h80iMn5/S6qGZOL5+g==", "dev": true, "requires": { - "spdx-expression-parse": "3.0.0", - "spdx-license-ids": "3.0.0" + "spdx-expression-parse": "^3.0.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-exceptions": { @@ -11752,8 +10649,8 @@ "integrity": "sha512-Yg6D3XpRD4kkOmTpdgbUiEJFKghJH03fiC1OPll5h/0sO6neh2jqRDVHOQ4o/LMea0tgCkbMgea5ip/e+MkWyg==", "dev": true, "requires": { - "spdx-exceptions": "2.1.0", - "spdx-license-ids": "3.0.0" + "spdx-exceptions": "^2.1.0", + "spdx-license-ids": "^3.0.0" } }, "spdx-license-ids": { @@ -11763,63 +10660,102 @@ "dev": true }, "spdy": { - "version": "3.4.7", - "resolved": "https://registry.npmjs.org/spdy/-/spdy-3.4.7.tgz", - "integrity": "sha1-Qv9B7OXMD5mjpsKKq7c/XDsDrLw=", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.0.tgz", + "integrity": "sha512-ot0oEGT/PGUpzf/6uk4AWLqkq+irlqHXkrdbk51oWONh3bxQmBuljxPNl66zlRRcIJStWq0QkLUCPOPjgjvU0Q==", "dev": true, "requires": { - "debug": "2.6.9", - "handle-thing": "1.2.5", - "http-deceiver": "1.2.7", - "safe-buffer": "5.1.2", - "select-hose": "2.0.0", - "spdy-transport": "2.1.0" + "debug": "^4.1.0", + "handle-thing": "^2.0.0", + "http-deceiver": "^1.2.7", + "select-hose": "^2.0.0", + "spdy-transport": "^3.0.0" }, "dependencies": { "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true } } }, "spdy-transport": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-2.1.0.tgz", - "integrity": "sha512-bpUeGpZcmZ692rrTiqf9/2EUakI6/kXX1Rpe0ib/DyOzbiexVfXkw6GnvI9hVGvIwVaUhkaBojjCZwLNRGQg1g==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz", + "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==", "dev": true, "requires": { - "debug": "2.6.9", - "detect-node": "2.0.3", - "hpack.js": "2.1.6", - "obuf": "1.1.2", - "readable-stream": "2.3.6", - "safe-buffer": "5.1.2", - "wbuf": "1.7.3" + "debug": "^4.1.0", + "detect-node": "^2.0.4", + "hpack.js": "^2.1.6", + "obuf": "^1.1.2", + "readable-stream": "^3.0.6", + "wbuf": "^1.7.3" }, "dependencies": { "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", + "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", "dev": true, "requires": { - "ms": "2.0.0" + "ms": "^2.1.1" + } + }, + "ms": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", + "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==", + "dev": true + }, + "readable-stream": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.2.0.tgz", + "integrity": "sha512-RV20kLjdmpZuTF1INEb9IA3L68Nmi+Ri7ppZqo78wj//Pn62fCoJyV9zalccNzDD/OuJpMG4f+pfMl8+L6QdGw==", + "dev": true, + "requires": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + } + }, + "string_decoder": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.2.0.tgz", + "integrity": "sha512-6YqyX6ZWEYguAxgZzHGL7SsCeGx3V2TtOTqZz1xSTSWnqsbWwbptafNyvf/ACquZUXV3DANr5BDIwNYe1mN42w==", + "dev": true, + "requires": { + "safe-buffer": "~5.1.0" } } } }, + "speed-measure-webpack-plugin": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/speed-measure-webpack-plugin/-/speed-measure-webpack-plugin-1.3.0.tgz", + "integrity": "sha512-b9Yd0TrzceMVYSbuamM1sFsGM1oVfyFTM22gOoyLhymNvBVApuYpkdFOgYkKJpN/KhTpcCYcTGHg7X+FJ33Vvw==", + "dev": true, + "requires": { + "chalk": "^2.0.1" + } + }, "split-string": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz", "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", "dev": true, "requires": { - "extend-shallow": "3.0.2" + "extend-shallow": "^3.0.0" } }, "sprintf-js": { @@ -11832,15 +10768,15 @@ "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.14.2.tgz", "integrity": "sha1-xvxhZIo9nE52T9P8306hBeSSupg=", "requires": { - "asn1": "0.2.3", - "assert-plus": "1.0.0", - "bcrypt-pbkdf": "1.0.2", - "dashdash": "1.14.1", - "ecc-jsbn": "0.1.2", - "getpass": "0.1.7", - "jsbn": "0.1.1", - "safer-buffer": "2.1.2", - "tweetnacl": "0.14.5" + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" } }, "ssri": { @@ -11849,7 +10785,7 @@ "integrity": "sha512-XRSIPqLij52MtgoQavH/x/dU1qVKtWUAAZeOHsR9c2Ddi4XerFy3mc1alf+dLJKl9EUIm/Ht+EowFkTUOA6GAQ==", "dev": true, "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.1.1" } }, "static-extend": { @@ -11858,8 +10794,8 @@ "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=", "dev": true, "requires": { - "define-property": "0.2.5", - "object-copy": "0.1.0" + "define-property": "^0.2.5", + "object-copy": "^0.1.0" }, "dependencies": { "define-property": { @@ -11868,18 +10804,18 @@ "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=", "dev": true, "requires": { - "is-descriptor": "0.1.6" + "is-descriptor": "^0.1.0" } } } }, "stats-webpack-plugin": { - "version": "0.6.2", - "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.6.2.tgz", - "integrity": "sha1-LFlJtTHgf4eojm6k3PrFOqjHWis=", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/stats-webpack-plugin/-/stats-webpack-plugin-0.7.0.tgz", + "integrity": "sha512-NT0YGhwuQ0EOX+uPhhUcI6/+1Sq/pMzNuSCBVT4GbFl/ac6I/JZefBcjlECNfAb1t3GOx5dEj1Z7x0cAxeeVLQ==", "dev": true, "requires": { - "lodash": "4.17.11" + "lodash": "^4.17.4" } }, "statuses": { @@ -11888,23 +10824,23 @@ "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" }, "stdout-stream": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.0.tgz", - "integrity": "sha1-osfIWH5U2UJ+qe2zrD8s1SLfN4s=", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz", + "integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==", "dev": true, "optional": true, "requires": { - "readable-stream": "2.3.6" + "readable-stream": "^2.0.1" } }, "stream-browserify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.1.tgz", - "integrity": "sha1-ZiZu5fm9uZQKTkUUyvtDu3Hlyds=", + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz", + "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==", "dev": true, "requires": { - "inherits": "2.0.3", - "readable-stream": "2.3.6" + "inherits": "~2.0.1", + "readable-stream": "^2.0.2" } }, "stream-each": { @@ -11913,8 +10849,8 @@ "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==", "dev": true, "requires": { - "end-of-stream": "1.4.1", - "stream-shift": "1.0.0" + "end-of-stream": "^1.1.0", + "stream-shift": "^1.0.0" } }, "stream-http": { @@ -11923,11 +10859,11 @@ "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==", "dev": true, "requires": { - "builtin-status-codes": "3.0.0", - "inherits": "2.0.3", - "readable-stream": "2.3.6", - "to-arraybuffer": "1.0.1", - "xtend": "4.0.1" + "builtin-status-codes": "^3.0.0", + "inherits": "^2.0.1", + "readable-stream": "^2.3.6", + "to-arraybuffer": "^1.0.0", + "xtend": "^4.0.0" } }, "stream-shift": { @@ -11937,15 +10873,38 @@ "dev": true }, "streamroller": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-0.7.0.tgz", - "integrity": "sha512-WREzfy0r0zUqp3lGO096wRuUp7ho1X6uo/7DJfTlEi0Iv/4gT7YHqXDjKC2ioVGBZtE8QzsQD9nx1nIuoZ57jQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/streamroller/-/streamroller-1.0.3.tgz", + "integrity": "sha512-P7z9NwP51EltdZ81otaGAN3ob+/F88USJE546joNq7bqRNTe6jc74fTBDyynxP4qpIfKlt/CesEYicuMzI0yJg==", "dev": true, "requires": { - "date-format": "1.2.0", - "debug": "3.1.0", - "mkdirp": "0.5.1", - "readable-stream": "2.3.6" + "async": "^2.6.1", + "date-format": "^2.0.0", + "debug": "^3.1.0", + "fs-extra": "^7.0.0", + "lodash": "^4.17.10" + }, + "dependencies": { + "async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.2.tgz", + "integrity": "sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg==", + "dev": true, + "requires": { + "lodash": "^4.17.11" + } + }, + "fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + } + } } }, "string-width": { @@ -11953,8 +10912,8 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", "requires": { - "is-fullwidth-code-point": "2.0.0", - "strip-ansi": "4.0.0" + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" } }, "string_decoder": { @@ -11962,19 +10921,12 @@ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" }, - "stringstream": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.6.tgz", - "integrity": "sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA==", - "dev": true, - "optional": true - }, "strip-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } }, "strip-bom": { @@ -11982,8 +10934,9 @@ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=", "dev": true, + "optional": true, "requires": { - "is-utf8": "0.2.1" + "is-utf8": "^0.2.0" } }, "strip-eof": { @@ -11997,24 +10950,19 @@ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz", "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=", "dev": true, + "optional": true, "requires": { - "get-stdin": "4.0.1" + "get-stdin": "^4.0.1" } }, - "strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", - "dev": true - }, "style-loader": { - "version": "0.21.0", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.21.0.tgz", - "integrity": "sha512-T+UNsAcl3Yg+BsPKs1vd22Fr8sVT+CJMtzqc6LEw9bbJZb43lm9GoeIfUcDEefBSWC0BhYbcdupV1GtI4DGzxg==", + "version": "0.23.1", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.23.1.tgz", + "integrity": "sha512-XK+uv9kWwhZMZ1y7mysB+zoihsEj4wneFWAS5qoiLwzW0WzSqMrrsIy+a3zkQJq0ipFtBpX5W3MqyRIBF/WFGg==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "schema-utils": "0.4.5" + "loader-utils": "^1.1.0", + "schema-utils": "^1.0.0" } }, "stylus": { @@ -12023,12 +10971,12 @@ "integrity": "sha1-QrlWCTHKcJDOhRWnmLqeaqPW3Hk=", "dev": true, "requires": { - "css-parse": "1.7.0", - "debug": "3.1.0", - "glob": "7.0.6", - "mkdirp": "0.5.1", - "sax": "0.5.8", - "source-map": "0.1.43" + "css-parse": "1.7.x", + "debug": "*", + "glob": "7.0.x", + "mkdirp": "0.5.x", + "sax": "0.5.x", + "source-map": "0.1.x" }, "dependencies": { "glob": { @@ -12037,12 +10985,12 @@ "integrity": "sha1-IRuvr0nlJbjNkyYNFKsTYVKz9Xo=", "dev": true, "requires": { - "fs.realpath": "1.0.0", - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.2", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" } }, "sax": { @@ -12057,7 +11005,7 @@ "integrity": "sha1-wkvBRspRfBRx9drL4lcbK3+eM0Y=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } @@ -12068,9 +11016,9 @@ "integrity": "sha512-+VomPdZ6a0razP+zinir61yZgpw2NfljeSsdUF5kJuEzlo3khXhY19Fn6l8QQz1GRJGtMCo8nG5C04ePyV7SUA==", "dev": true, "requires": { - "loader-utils": "1.1.0", - "lodash.clonedeep": "4.5.0", - "when": "3.6.4" + "loader-utils": "^1.0.2", + "lodash.clonedeep": "^4.5.0", + "when": "~3.6.x" } }, "supports-color": { @@ -12078,13 +11026,13 @@ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.4.0.tgz", "integrity": "sha512-zjaXglF5nnWpsq470jSv6P9DwPvgLkuapYmfDm3JWOm0vkNTVF2tI4UrN2r6jH1qM/uc/WtxYY1hYoA2dOKj5w==", "requires": { - "has-flag": "3.0.0" + "has-flag": "^3.0.0" } }, "tapable": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.0.0.tgz", - "integrity": "sha512-dQRhbNQkRnaqauC7WqSJ21EEksgT0fYZX2lqXzGkpo8JNig9zGZTYoMGvyI2nWmXlE2VSVXVDu7wLVGu/mQEsg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.1.tgz", + "integrity": "sha512-9I2ydhj8Z9veORCw5PRm4u9uebCn0mcCa6scWoNcbZ6dAtoo2618u9UUzxgmsCOreJpqDDuv61LvwofW7hLcBA==", "dev": true }, "tar": { @@ -12094,9 +11042,9 @@ "dev": true, "optional": true, "requires": { - "block-stream": "0.0.9", - "fstream": "1.0.11", - "inherits": "2.0.3" + "block-stream": "*", + "fstream": "^1.0.2", + "inherits": "2" } }, "temp-dir": { @@ -12109,22 +11057,244 @@ "resolved": "https://registry.npmjs.org/tempfile/-/tempfile-2.0.0.tgz", "integrity": "sha1-awRGhWqbERTRhW/8vlCczLCXcmU=", "requires": { - "temp-dir": "1.0.0", - "uuid": "3.3.2" + "temp-dir": "^1.0.0", + "uuid": "^3.0.1" + } + }, + "terser": { + "version": "3.17.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-3.17.0.tgz", + "integrity": "sha512-/FQzzPJmCpjAH9Xvk2paiWrFq+5M6aVOf+2KRbwhByISDX/EujxsK+BAvrhb6H+2rtrLCHK9N01wO014vrIwVQ==", + "dev": true, + "requires": { + "commander": "^2.19.0", + "source-map": "~0.6.1", + "source-map-support": "~0.5.10" + }, + "dependencies": { + "commander": { + "version": "2.19.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz", + "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==", + "dev": true + } + } + }, + "terser-webpack-plugin": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.2.2.tgz", + "integrity": "sha512-1DMkTk286BzmfylAvLXwpJrI7dWa5BnFmscV/2dCr8+c56egFcbaeFAl7+sujAjdmpLam21XRdhA4oifLyiWWg==", + "dev": true, + "requires": { + "cacache": "^11.0.2", + "find-cache-dir": "^2.0.0", + "schema-utils": "^1.0.0", + "serialize-javascript": "^1.4.0", + "source-map": "^0.6.1", + "terser": "^3.16.1", + "webpack-sources": "^1.1.0", + "worker-farm": "^1.5.2" + }, + "dependencies": { + "bluebird": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", + "integrity": "sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw==", + "dev": true + }, + "cacache": { + "version": "11.3.2", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-11.3.2.tgz", + "integrity": "sha512-E0zP4EPGDOaT2chM08Als91eYnf8Z+eH1awwwVsngUmgppfM5jjJ8l3z5vO5p5w/I3LsiXawb1sW0VY65pQABg==", + "dev": true, + "requires": { + "bluebird": "^3.5.3", + "chownr": "^1.1.1", + "figgy-pudding": "^3.5.1", + "glob": "^7.1.3", + "graceful-fs": "^4.1.15", + "lru-cache": "^5.1.1", + "mississippi": "^3.0.0", + "mkdirp": "^0.5.1", + "move-concurrently": "^1.0.1", + "promise-inflight": "^1.0.1", + "rimraf": "^2.6.2", + "ssri": "^6.0.1", + "unique-filename": "^1.1.1", + "y18n": "^4.0.0" + } + }, + "find-cache-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz", + "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==", + "dev": true, + "requires": { + "commondir": "^1.0.1", + "make-dir": "^2.0.0", + "pkg-dir": "^3.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "glob": { + "version": "7.1.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", + "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", + "dev": true, + "requires": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.0.4", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + } + }, + "graceful-fs": { + "version": "4.1.15", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.15.tgz", + "integrity": "sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA==", + "dev": true + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, + "make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "dev": true, + "requires": { + "pify": "^4.0.1", + "semver": "^5.6.0" + } + }, + "mississippi": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz", + "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==", + "dev": true, + "requires": { + "concat-stream": "^1.5.0", + "duplexify": "^3.4.2", + "end-of-stream": "^1.1.0", + "flush-write-stream": "^1.0.0", + "from2": "^2.1.0", + "parallel-transform": "^1.1.0", + "pump": "^3.0.0", + "pumpify": "^1.3.3", + "stream-each": "^1.1.0", + "through2": "^2.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "dev": true + }, + "pkg-dir": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", + "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==", + "dev": true, + "requires": { + "find-up": "^3.0.0" + } + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dev": true, + "requires": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, + "ssri": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", + "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "dev": true, + "requires": { + "figgy-pudding": "^3.5.1" + } + }, + "y18n": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", + "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "dev": true + }, + "yallist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.0.3.tgz", + "integrity": "sha512-S+Zk8DEWE6oKpV+vI3qWkaK+jSbIK86pCwe2IF/xwIpQ8jEuxpw9NyaGjmp9+BoJv5FV2piqCDcoCtStppiq2A==", + "dev": true + } } }, - "text-table": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", - "dev": true - }, "then-fs": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/then-fs/-/then-fs-2.0.0.tgz", "integrity": "sha1-cveS3Z0xcFqRrhnr/Piz+WjIHaI=", "requires": { - "promise": "7.3.1" + "promise": ">=3.2 <8" } }, "through": { @@ -12138,8 +11308,8 @@ "integrity": "sha1-AARWmzfHx0ujnEPzzteNGtlBQL4=", "dev": true, "requires": { - "readable-stream": "2.3.6", - "xtend": "4.0.1" + "readable-stream": "^2.1.5", + "xtend": "~4.0.1" } }, "thunkify": { @@ -12148,9 +11318,9 @@ "integrity": "sha1-+qDp0jDFGsyVyhOjYawFyn4EVT0=" }, "thunky": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.2.tgz", - "integrity": "sha1-qGLgGOP7HqLsP85dVWBc9X8kc3E=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.0.3.tgz", + "integrity": "sha512-YwT8pjmNcAXBZqrubu22P4FYsh2D4dxRmnWBOL8Jk8bUcRUtc5326kx32tuTmFDAZtLOGEVNl8POAR8j896Iow==", "dev": true }, "timers-browserify": { @@ -12159,22 +11329,15 @@ "integrity": "sha512-YvC1SV1XdOUaL6gx5CoGroT3Gu49pK9+TZ38ErPldOWW4j49GI1HKs9DV+KGq/w6y+LZ72W1c8cKz2vzY+qpzg==", "dev": true, "requires": { - "setimmediate": "1.0.5" + "setimmediate": "^1.0.4" } }, - "timespan": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/timespan/-/timespan-2.3.0.tgz", - "integrity": "sha1-SQLOBAvRPYRcj1myfp1ZutbzmSk=", - "dev": true, - "optional": true - }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "requires": { - "os-tmpdir": "1.0.2" + "os-tmpdir": "~1.0.2" } }, "to-array": { @@ -12201,7 +11364,7 @@ "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=", "dev": true, "requires": { - "kind-of": "3.2.2" + "kind-of": "^3.0.2" } }, "to-regex": { @@ -12210,10 +11373,10 @@ "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", "dev": true, "requires": { - "define-property": "2.0.2", - "extend-shallow": "3.0.2", - "regex-not": "1.0.2", - "safe-regex": "1.1.0" + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" } }, "to-regex-range": { @@ -12222,8 +11385,8 @@ "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", "dev": true, "requires": { - "is-number": "3.0.0", - "repeat-string": "1.6.1" + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" } }, "to-utf8": { @@ -12236,31 +11399,26 @@ "resolved": "https://registry.npmjs.org/toml/-/toml-2.3.3.tgz", "integrity": "sha512-O7L5hhSQHxuufWUdcTRPfuTh3phKfAZ/dqfxZFoxPCj2RYmpaSGLEIs016FCXItQwNr08yefUB5TSjzRYnajTA==" }, - "toposort": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz", - "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=", - "dev": true - }, "tough-cookie": { "version": "2.3.4", "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.3.4.tgz", "integrity": "sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA==", "requires": { - "punycode": "1.4.1" + "punycode": "^1.4.1" } }, "tree-kill": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.0.tgz", - "integrity": "sha512-DlX6dR0lOIRDFxI0mjL9IYg6OTncLm/Zt+JiBhE5OlFcAR8yc9S7FFXU9so0oda47frdM/JFsk7UjNt9vscKcg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.1.tgz", + "integrity": "sha512-4hjqbObwlh2dLyW4tcz0Ymw0ggoaVDMveUB9w8kFSQScdRLo0gxO9J7WFcUBo+W3C1TLdFIEwNOWebgZZ0RH9Q==", "dev": true }, "trim-newlines": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz", "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=", - "dev": true + "dev": true, + "optional": true }, "trim-right": { "version": "1.0.1", @@ -12269,47 +11427,29 @@ "dev": true }, "true-case-path": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.2.tgz", - "integrity": "sha1-fskRMJJHZsf1c74wIMNPj9/QDWI=", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz", + "integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==", "dev": true, "optional": true, "requires": { - "glob": "6.0.4" - }, - "dependencies": { - "glob": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/glob/-/glob-6.0.4.tgz", - "integrity": "sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI=", - "dev": true, - "optional": true, - "requires": { - "inflight": "1.0.6", - "inherits": "2.0.3", - "minimatch": "3.0.4", - "once": "1.4.0", - "path-is-absolute": "1.0.1" - } - } + "glob": "^7.1.2" } }, "ts-node": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-3.2.2.tgz", - "integrity": "sha1-u9KOOK9Kqj6WB2xGbhsiAZfBo84=", - "dev": true, - "requires": { - "arrify": "1.0.1", - "chalk": "2.4.1", - "diff": "3.5.0", - "make-error": "1.3.4", - "minimist": "1.2.0", - "mkdirp": "0.5.1", - "source-map-support": "0.4.18", - "tsconfig": "6.0.0", - "v8flags": "3.1.1", - "yn": "2.0.0" + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz", + "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==", + "dev": true, + "requires": { + "arrify": "^1.0.0", + "buffer-from": "^1.1.0", + "diff": "^3.1.0", + "make-error": "^1.1.1", + "minimist": "^1.2.0", + "mkdirp": "^0.5.1", + "source-map-support": "^0.5.6", + "yn": "^2.0.0" }, "dependencies": { "minimist": { @@ -12317,39 +11457,6 @@ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", "dev": true - }, - "source-map": { - "version": "0.5.7", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", - "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", - "dev": true, - "requires": { - "source-map": "0.5.7" - } - } - } - }, - "tsconfig": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/tsconfig/-/tsconfig-6.0.0.tgz", - "integrity": "sha1-aw6DdgA9evGGT434+J3QBZ/80DI=", - "dev": true, - "requires": { - "strip-bom": "3.0.0", - "strip-json-comments": "2.0.1" - }, - "dependencies": { - "strip-bom": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", - "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true } } }, @@ -12364,32 +11471,25 @@ "integrity": "sha1-wl4NDJL6EgHCvDDoROCOaCtPNVI=", "dev": true, "requires": { - "babel-code-frame": "6.26.0", - "colors": "1.1.2", - "commander": "2.16.0", - "diff": "3.5.0", - "glob": "7.1.2", - "minimatch": "3.0.4", - "resolve": "1.8.1", - "semver": "5.5.0", - "tslib": "1.9.3", - "tsutils": "2.29.0" + "babel-code-frame": "^6.22.0", + "colors": "^1.1.2", + "commander": "^2.9.0", + "diff": "^3.2.0", + "glob": "^7.1.1", + "minimatch": "^3.0.4", + "resolve": "^1.3.2", + "semver": "^5.3.0", + "tslib": "^1.7.1", + "tsutils": "^2.8.1" } }, - "tsscmp": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", - "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", - "dev": true, - "optional": true - }, "tsutils": { "version": "2.29.0", "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-2.29.0.tgz", "integrity": "sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA==", "dev": true, "requires": { - "tslib": "1.9.3" + "tslib": "^1.8.1" } }, "tty-browserify": { @@ -12403,7 +11503,7 @@ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", "requires": { - "safe-buffer": "5.1.2" + "safe-buffer": "^5.0.1" } }, "tweetnacl": { @@ -12417,7 +11517,7 @@ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz", "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=", "requires": { - "prelude-ls": "1.1.2" + "prelude-ls": "~1.1.2" } }, "type-is": { @@ -12427,7 +11527,7 @@ "dev": true, "requires": { "media-typer": "0.3.0", - "mime-types": "2.1.19" + "mime-types": "~2.1.18" } }, "typedarray": { @@ -12443,53 +11543,22 @@ "dev": true }, "uglify-js": { - "version": "3.4.6", - "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.6.tgz", - "integrity": "sha512-O1D7L6WcOzS1qW2ehopEm4cWm5yA6bQBozlks8jO8ODxYCy4zv+bR/la4Lwp01tpkYGNonnpXvUpYtrvSu8Yzg==", + "version": "3.4.9", + "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.9.tgz", + "integrity": "sha512-8CJsbKOtEbnJsTyv6LE6m6ZKniqMiFWmm9sRbopbkGs3gMPPfd3Fh8iIA4Ykv5MgaTbqHr4BaoGLJLZNhsrW1Q==", "dev": true, + "optional": true, "requires": { - "commander": "2.16.0", - "source-map": "0.6.1" - } - }, - "uglify-to-browserify": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/uglify-to-browserify/-/uglify-to-browserify-1.0.2.tgz", - "integrity": "sha1-bgkk1r2mta/jSeOabWMoUKD4grc=", - "dev": true, - "optional": true - }, - "uglifyjs-webpack-plugin": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/uglifyjs-webpack-plugin/-/uglifyjs-webpack-plugin-1.2.7.tgz", - "integrity": "sha512-1VicfKhCYHLS8m1DCApqBhoulnASsEoJ/BvpUpP4zoNAPpKzdH+ghk0olGJMmwX2/jprK2j3hAHdUbczBSy2FA==", - "dev": true, - "requires": { - "cacache": "10.0.4", - "find-cache-dir": "1.0.0", - "schema-utils": "0.4.5", - "serialize-javascript": "1.5.0", - "source-map": "0.6.1", - "uglify-es": "3.3.9", - "webpack-sources": "1.1.0", - "worker-farm": "1.6.0" + "commander": "~2.17.1", + "source-map": "~0.6.1" }, "dependencies": { "commander": { - "version": "2.13.0", - "resolved": "https://registry.npmjs.org/commander/-/commander-2.13.0.tgz", - "integrity": "sha512-MVuS359B+YzaWqjCL/c+22gfryv+mCBPHAv3zyVI2GN8EY6IRP8VwtasXn8jyyhvvq84R4ImN1OKRtcbIasjYA==", - "dev": true - }, - "uglify-es": { - "version": "3.3.9", - "resolved": "https://registry.npmjs.org/uglify-es/-/uglify-es-3.3.9.tgz", - "integrity": "sha512-r+MU0rfv4L/0eeW3xZrd16t4NZfK8Ld4SWVglYBb7ez5uXFWHuVRs6xCTrf1yirs9a4j4Y27nn7SRfO6v67XsQ==", + "version": "2.17.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz", + "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==", "dev": true, - "requires": { - "commander": "2.13.0", - "source-map": "0.6.1" - } + "optional": true } } }, @@ -12504,7 +11573,7 @@ "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.2.tgz", "integrity": "sha1-Il9rngM3Zj4Njnz9aG/Cg2zKznY=", "requires": { - "debug": "2.6.9" + "debug": "^2.2.0" }, "dependencies": { "debug": { @@ -12517,22 +11586,16 @@ } } }, - "underscore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.7.0.tgz", - "integrity": "sha1-a7rwh3UA02vjTsqlhODbn+8DUgk=", - "dev": true - }, "union-value": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.0.tgz", "integrity": "sha1-XHHDTLW61dzr4+oM0IIHulqhrqQ=", "dev": true, "requires": { - "arr-union": "3.1.0", - "get-value": "2.0.6", - "is-extendable": "0.1.1", - "set-value": "0.4.3" + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^0.4.3" }, "dependencies": { "extend-shallow": { @@ -12541,7 +11604,7 @@ "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", "dev": true, "requires": { - "is-extendable": "0.1.1" + "is-extendable": "^0.1.0" } }, "set-value": { @@ -12550,21 +11613,21 @@ "integrity": "sha1-fbCPnT0i3H945Trzw79GZuzfzPE=", "dev": true, "requires": { - "extend-shallow": "2.0.1", - "is-extendable": "0.1.1", - "is-plain-object": "2.0.4", - "to-object-path": "0.3.0" + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.1", + "to-object-path": "^0.3.0" } } } }, "unique-filename": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.0.tgz", - "integrity": "sha1-0F8v5AMlYIcfMOk8vnNe6iAVFPM=", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", + "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", "dev": true, "requires": { - "unique-slug": "2.0.0" + "unique-slug": "^2.0.0" } }, "unique-slug": { @@ -12573,7 +11636,7 @@ "integrity": "sha1-22Z258fMBimHj/GWCXx4hVrp9Ks=", "dev": true, "requires": { - "imurmurhash": "0.1.4" + "imurmurhash": "^0.1.4" } }, "unique-string": { @@ -12581,7 +11644,7 @@ "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz", "integrity": "sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo=", "requires": { - "crypto-random-string": "1.0.0" + "crypto-random-string": "^1.0.0" } }, "universalify": { @@ -12600,8 +11663,8 @@ "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=", "dev": true, "requires": { - "has-value": "0.3.1", - "isobject": "3.0.1" + "has-value": "^0.3.1", + "isobject": "^3.0.0" }, "dependencies": { "has-value": { @@ -12610,9 +11673,9 @@ "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=", "dev": true, "requires": { - "get-value": "2.0.6", - "has-values": "0.1.4", - "isobject": "2.1.0" + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" }, "dependencies": { "isobject": { @@ -12646,19 +11709,13 @@ "integrity": "sha512-bzpH/oBhoS/QI/YtbkqCg6VEiPYjSZtrHQM6/QnJS6OL9pKUFLqb3aFh4Scvwm45+7iAgiMkLhSbaZxUqmrprw==", "dev": true }, - "upper-case": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz", - "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=", - "dev": true - }, "uri-js": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-3.0.2.tgz", - "integrity": "sha1-+QuFhQf4HepNz7s8TD2/orVX+qo=", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "punycode": "^2.1.0" }, "dependencies": { "punycode": { @@ -12693,39 +11750,14 @@ } } }, - "url-join": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.0.tgz", - "integrity": "sha1-TTNA6AfTdzvamZH4MFrNzCpmXSo=", - "dev": true - }, - "url-loader": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-1.0.1.tgz", - "integrity": "sha512-rAonpHy7231fmweBKUFe0bYnlGDty77E+fm53NZdij7j/YOpyGzc7ttqG1nAXl3aRs0k41o0PC3TvGXQiw2Zvw==", - "dev": true, - "requires": { - "loader-utils": "1.1.0", - "mime": "2.3.1", - "schema-utils": "0.4.5" - }, - "dependencies": { - "mime": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", - "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", - "dev": true - } - } - }, "url-parse": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.3.tgz", - "integrity": "sha512-rh+KuAW36YKo0vClhQzLLveoj8FwPJNu65xLb7Mrt+eZht0IPT0IXgSv8gcMegZ6NvjJUALf6Mf25POlMwD1Fw==", + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.4.4.tgz", + "integrity": "sha512-/92DTTorg4JjktLNLe6GPS2/RvAd/RGr6LuktmWSMLEOa6rjnlrFXNgSbSmkNvCoL2T028A0a1JaJLzRMlFoHg==", "dev": true, "requires": { - "querystringify": "2.0.0", - "requires-port": "1.0.0" + "querystringify": "^2.0.0", + "requires-port": "^1.0.0" } }, "use": { @@ -12735,21 +11767,13 @@ "dev": true }, "useragent": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.2.1.tgz", - "integrity": "sha1-z1k+9PLRdYdei7ZY6pLhik/QbY4=", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/useragent/-/useragent-2.3.0.tgz", + "integrity": "sha512-4AoH4pxuSvHCjqLO04sU6U/uE65BYza8l/KKBS0b0hnUPWi+cQ2BpeTEwejCSx9SPV5/U03nniDTrWx5NrmKdw==", "dev": true, "requires": { - "lru-cache": "2.2.4", - "tmp": "0.0.33" - }, - "dependencies": { - "lru-cache": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-2.2.4.tgz", - "integrity": "sha1-bGWGGb7PFAMdDQtZSxYELOTcBj0=", - "dev": true - } + "lru-cache": "4.1.x", + "tmp": "0.0.x" } }, "util": { @@ -12765,22 +11789,6 @@ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" }, - "util.promisify": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz", - "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==", - "dev": true, - "requires": { - "define-properties": "1.1.2", - "object.getownpropertydescriptors": "2.0.3" - } - }, - "utila": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz", - "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=", - "dev": true - }, "utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", @@ -12792,30 +11800,14 @@ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==" }, - "uws": { - "version": "9.14.0", - "resolved": "https://registry.npmjs.org/uws/-/uws-9.14.0.tgz", - "integrity": "sha512-HNMztPP5A1sKuVFmdZ6BPVpBQd5bUjNC8EFMFiICK+oho/OQsAJy5hnIx4btMHiOk8j04f/DbIlqnEZ9d72dqg==", - "dev": true, - "optional": true - }, - "v8flags": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.1.1.tgz", - "integrity": "sha512-iw/1ViSEaff8NJ3HLyEjawk/8hjJib3E7pvG4pddVXfUg1983s3VGsiClDjhK64MQVDGqc1Q8r18S4VKQZS9EQ==", - "dev": true, - "requires": { - "homedir-polyfill": "1.0.1" - } - }, "validate-npm-package-license": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.3.tgz", "integrity": "sha512-63ZOUnL4SIXj4L0NixR3L1lcjO38crAbgrTpl28t8jjrfuiOBL5Iygm+60qPs/KsZGzPNg6Smnc/oY16QTjF0g==", "dev": true, "requires": { - "spdx-correct": "3.0.0", - "spdx-expression-parse": "3.0.0" + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" } }, "validate-npm-package-name": { @@ -12824,7 +11816,7 @@ "integrity": "sha1-X6kS2B630MdK/BQN5zF/DKffQ34=", "dev": true, "requires": { - "builtins": "1.0.3" + "builtins": "^1.0.3" } }, "vary": { @@ -12838,9 +11830,9 @@ "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", "requires": { - "assert-plus": "1.0.0", + "assert-plus": "^1.0.0", "core-util-is": "1.0.2", - "extsprintf": "1.3.0" + "extsprintf": "^1.2.0" } }, "vm-browserify": { @@ -12864,9 +11856,9 @@ "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", "dev": true, "requires": { - "chokidar": "2.0.4", - "graceful-fs": "4.1.11", - "neo-async": "2.5.1" + "chokidar": "^2.0.2", + "graceful-fs": "^4.1.2", + "neo-async": "^2.5.0" } }, "wbuf": { @@ -12875,20 +11867,7 @@ "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", "dev": true, "requires": { - "minimalistic-assert": "1.0.1" - } - }, - "webassemblyjs": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webassemblyjs/-/webassemblyjs-1.4.3.tgz", - "integrity": "sha512-4lOV1Lv6olz0PJkDGQEp82HempAn147e6BXijWDzz9g7/2nSebVP9GVg62Fz5ZAs55mxq13GA0XLyvY8XkyDjg==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/validation": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "@webassemblyjs/wast-parser": "1.4.3", - "long": "3.2.0" + "minimalistic-assert": "^1.0.0" } }, "webdriver-js-extender": { @@ -12897,50 +11876,52 @@ "integrity": "sha512-lcUKrjbBfCK6MNsh7xaY2UAUmZwe+/ib03AjVOpFobX4O7+83BUveSrLfU0Qsyb1DaKJdQRbuU+kM9aZ6QUhiQ==", "dev": true, "requires": { - "@types/selenium-webdriver": "3.0.12", - "selenium-webdriver": "3.6.0" + "@types/selenium-webdriver": "^3.0.0", + "selenium-webdriver": "^3.0.1" } }, "webpack": { - "version": "4.8.3", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.8.3.tgz", - "integrity": "sha512-/hfAjBISycdK597lxONjKEFX7dSIU1PsYwC3XlXUXoykWBlv9QV5HnO+ql3HvrrgfBJ7WXdnjO9iGPR2aAc5sw==", - "dev": true, - "requires": { - "@webassemblyjs/ast": "1.4.3", - "@webassemblyjs/wasm-edit": "1.4.3", - "@webassemblyjs/wasm-parser": "1.4.3", - "acorn": "5.7.1", - "acorn-dynamic-import": "3.0.0", - "ajv": "6.5.2", - "ajv-keywords": "3.2.0", - "chrome-trace-event": "0.1.3", - "enhanced-resolve": "4.1.0", - "eslint-scope": "3.7.3", - "loader-runner": "2.3.0", - "loader-utils": "1.1.0", - "memory-fs": "0.4.1", - "micromatch": "3.1.10", - "mkdirp": "0.5.1", - "neo-async": "2.5.1", - "node-libs-browser": "2.1.0", - "schema-utils": "0.4.5", - "tapable": "1.0.0", - "uglifyjs-webpack-plugin": "1.2.7", - "watchpack": "1.6.0", - "webpack-sources": "1.1.0" + "version": "4.29.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.29.0.tgz", + "integrity": "sha512-pxdGG0keDBtamE1mNvT5zyBdx+7wkh6mh7uzMOo/uRQ/fhsdj5FXkh/j5mapzs060forql1oXqXN9HJGju+y7w==", + "dev": true, + "requires": { + "@webassemblyjs/ast": "1.7.11", + "@webassemblyjs/helper-module-context": "1.7.11", + "@webassemblyjs/wasm-edit": "1.7.11", + "@webassemblyjs/wasm-parser": "1.7.11", + "acorn": "^6.0.5", + "acorn-dynamic-import": "^4.0.0", + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0", + "chrome-trace-event": "^1.0.0", + "enhanced-resolve": "^4.1.0", + "eslint-scope": "^4.0.0", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^2.3.0", + "loader-utils": "^1.1.0", + "memory-fs": "~0.4.1", + "micromatch": "^3.1.8", + "mkdirp": "~0.5.0", + "neo-async": "^2.5.0", + "node-libs-browser": "^2.0.0", + "schema-utils": "^0.4.4", + "tapable": "^1.1.0", + "terser-webpack-plugin": "^1.1.0", + "watchpack": "^1.5.0", + "webpack-sources": "^1.3.0" }, "dependencies": { "ajv": { - "version": "6.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.5.2.tgz", - "integrity": "sha512-hOs7GfvI6tUI1LfZddH82ky6mOMyTuY0mk7kE2pWpmhhUSkumzaTO5vbVwij39MdwPQWCV4Zv57Eo06NtL/GVA==", + "version": "6.10.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.10.0.tgz", + "integrity": "sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==", "dev": true, "requires": { - "fast-deep-equal": "2.0.1", - "fast-json-stable-stringify": "2.0.0", - "json-schema-traverse": "0.4.1", - "uri-js": "4.2.2" + "fast-deep-equal": "^2.0.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" } }, "fast-deep-equal": { @@ -12955,19 +11936,14 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", - "dev": true - }, - "uri-js": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", - "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "schema-utils": { + "version": "0.4.7", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.4.7.tgz", + "integrity": "sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ==", "dev": true, "requires": { - "punycode": "2.1.1" + "ajv": "^6.1.0", + "ajv-keywords": "^3.1.0" } } } @@ -12978,8 +11954,8 @@ "integrity": "sha1-/FcViMhVjad76e+23r3Fo7FyvcI=", "dev": true, "requires": { - "source-list-map": "0.1.8", - "source-map": "0.4.4" + "source-list-map": "~0.1.7", + "source-map": "~0.4.1" }, "dependencies": { "source-list-map": { @@ -12994,68 +11970,67 @@ "integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=", "dev": true, "requires": { - "amdefine": "1.0.1" + "amdefine": ">=0.0.4" } } } }, "webpack-dev-middleware": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.1.3.tgz", - "integrity": "sha512-I6Mmy/QjWU/kXwCSFGaiOoL5YEQIVmbb0o45xMoCyQAg/mClqZVTcsX327sPfekDyJWpCxb+04whNyLOIxpJdQ==", + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.5.1.tgz", + "integrity": "sha512-4dwCh/AyMOYAybggUr8fiCkRnjVDp+Cqlr9c+aaNB3GJYgRGYQWJ1YX/WAKUNA9dPNHZ6QSN2lYDKqjKSI8Vqw==", "dev": true, "requires": { - "loud-rejection": "1.6.0", - "memory-fs": "0.4.1", - "mime": "2.3.1", - "path-is-absolute": "1.0.1", - "range-parser": "1.2.0", - "url-join": "4.0.0", - "webpack-log": "1.2.0" + "memory-fs": "~0.4.1", + "mime": "^2.3.1", + "range-parser": "^1.0.3", + "webpack-log": "^2.0.0" }, "dependencies": { "mime": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/mime/-/mime-2.3.1.tgz", - "integrity": "sha512-OEUllcVoydBHGN1z84yfQDimn58pZNNNXgZlHXSboxMlFvgI6MXSWpWKpFRra7H1HxpVhHTkrghfRW49k6yjeg==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", "dev": true } } }, "webpack-dev-server": { - "version": "3.1.5", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.5.tgz", - "integrity": "sha512-LVHg+EPwZLHIlfvokSTgtJqO/vI5CQi89fASb5JEDtVMDjY0yuIEqPPdMiKaBJIB/Ab7v/UN/sYZ7WsZvntQKw==", + "version": "3.1.14", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.1.14.tgz", + "integrity": "sha512-mGXDgz5SlTxcF3hUpfC8hrQ11yhAttuUQWf1Wmb+6zo3x6rb7b9mIfuQvAPLdfDRCGRGvakBWHdHOa0I9p/EVQ==", "dev": true, "requires": { "ansi-html": "0.0.7", - "array-includes": "3.0.3", - "bonjour": "3.5.0", - "chokidar": "2.0.4", - "compression": "1.7.3", - "connect-history-api-fallback": "1.5.0", - "debug": "3.1.0", - "del": "3.0.0", - "express": "4.16.3", - "html-entities": "1.2.1", - "http-proxy-middleware": "0.18.0", - "import-local": "1.0.0", - "internal-ip": "1.2.0", - "ip": "1.1.5", - "killable": "1.0.0", - "loglevel": "1.6.1", - "opn": "5.3.0", - "portfinder": "1.0.13", - "selfsigned": "1.10.3", - "serve-index": "1.9.1", + "bonjour": "^3.5.0", + "chokidar": "^2.0.0", + "compression": "^1.5.2", + "connect-history-api-fallback": "^1.3.0", + "debug": "^3.1.0", + "del": "^3.0.0", + "express": "^4.16.2", + "html-entities": "^1.2.0", + "http-proxy-middleware": "~0.18.0", + "import-local": "^2.0.0", + "internal-ip": "^3.0.1", + "ip": "^1.1.5", + "killable": "^1.0.0", + "loglevel": "^1.4.1", + "opn": "^5.1.0", + "portfinder": "^1.0.9", + "schema-utils": "^1.0.0", + "selfsigned": "^1.9.1", + "semver": "^5.6.0", + "serve-index": "^1.7.2", "sockjs": "0.3.19", - "sockjs-client": "1.1.5", - "spdy": "3.4.7", - "strip-ansi": "3.0.1", - "supports-color": "5.4.0", - "webpack-dev-middleware": "3.1.3", - "webpack-log": "1.2.0", - "yargs": "11.0.0" + "sockjs-client": "1.3.0", + "spdy": "^4.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^5.1.0", + "url": "^0.11.0", + "webpack-dev-middleware": "3.4.0", + "webpack-log": "^2.0.0", + "yargs": "12.0.2" }, "dependencies": { "ansi-regex": { @@ -13076,9 +12051,9 @@ "integrity": "sha512-4FG+RSG9DL7uEwRUZXZn3SS34DiDPfzP0VOiEwtUWlE+AR2EIg+hSyvrIgUUfhdgR/UkAeW2QHgeP+hWrXs7jQ==", "dev": true, "requires": { - "string-width": "2.1.1", - "strip-ansi": "4.0.0", - "wrap-ansi": "2.1.0" + "string-width": "^2.1.1", + "strip-ansi": "^4.0.0", + "wrap-ansi": "^2.0.0" }, "dependencies": { "ansi-regex": { @@ -13093,29 +12068,184 @@ "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", "dev": true, "requires": { - "ansi-regex": "3.0.0" + "ansi-regex": "^3.0.0" } } } }, + "cross-spawn": { + "version": "6.0.5", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", + "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "dev": true, + "requires": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + } + }, + "decamelize": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-2.0.0.tgz", + "integrity": "sha512-Ikpp5scV3MSYxY39ymh45ZLEecsTdv/Xj2CaQfI8RLMuwi7XvjX9H/fhraiSuU+C5w5NTDu4ZU72xNiZnurBPg==", + "dev": true, + "requires": { + "xregexp": "4.0.0" + } + }, + "execa": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", + "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", + "dev": true, + "requires": { + "cross-spawn": "^6.0.0", + "get-stream": "^4.0.0", + "is-stream": "^1.1.0", + "npm-run-path": "^2.0.0", + "p-finally": "^1.0.0", + "signal-exit": "^3.0.0", + "strip-eof": "^1.0.0" + } + }, + "find-up": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", + "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "dev": true, + "requires": { + "locate-path": "^3.0.0" + } + }, + "get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dev": true, + "requires": { + "pump": "^3.0.0" + } + }, + "invert-kv": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-2.0.0.tgz", + "integrity": "sha512-wPVv/y/QQ/Uiirj/vh3oP+1Ww+AWehmi1g5fFWGPF6IpCBCDVrhgHRMvrLfdYcwDh3QJbGXDW4JAuzxElLSqKA==", + "dev": true + }, + "lcid": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", + "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "dev": true, + "requires": { + "invert-kv": "^2.0.0" + } + }, + "locate-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", + "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "dev": true, + "requires": { + "p-locate": "^3.0.0", + "path-exists": "^3.0.0" + } + }, + "mem": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-4.2.0.tgz", + "integrity": "sha512-5fJxa68urlY0Ir8ijatKa3eRz5lwXnRCTvo9+TbTGAuTFJOwpGcY0X05moBd0nW45965Njt4CDI2GFQoG8DvqA==", + "dev": true, + "requires": { + "map-age-cleaner": "^0.1.1", + "mimic-fn": "^2.0.0", + "p-is-promise": "^2.0.0" + } + }, + "mime": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.0.tgz", + "integrity": "sha512-ikBcWwyqXQSHKtciCcctu9YfPbFYZ4+gbHEmE0Q8jzcTYQg5dHCr3g2wwAZjPoJfQVXZq6KXAjpXOTf5/cjT7w==", + "dev": true + }, + "mimic-fn": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.0.0.tgz", + "integrity": "sha512-jbex9Yd/3lmICXwYT6gA/j2mNQGU48wCh/VzRd+/Y/PjYQtlg1gLMdZqvu9s/xH7qKvngxRObl56XZR609IMbA==", + "dev": true + }, "os-locale": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-2.1.0.tgz", - "integrity": "sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA==", + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-3.1.0.tgz", + "integrity": "sha512-Z8l3R4wYWM40/52Z+S265okfFj8Kt2cC2MKY+xNi3kFs+XGI7WXu/I309QQQYbRW4ijiZ+yxs9pqEhJh0DqW3Q==", + "dev": true, + "requires": { + "execa": "^1.0.0", + "lcid": "^2.0.0", + "mem": "^4.0.0" + } + }, + "p-limit": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.2.0.tgz", + "integrity": "sha512-pZbTJpoUsCzV48Mc9Nh51VbwO0X9cuPFE8gYwx9BTCt9SF8/b7Zljd2fVgOxhIF/HDTKgpVzs+GPhyKfjLLFRQ==", + "dev": true, + "requires": { + "p-try": "^2.0.0" + } + }, + "p-locate": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", + "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", + "dev": true, + "requires": { + "p-limit": "^2.0.0" + } + }, + "p-try": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.0.0.tgz", + "integrity": "sha512-hMp0onDKIajHfIkdRk3P4CdCmErkYAxxDtP3Wx/4nZ3aGlau2VKh3mZpcuFkH27WQkL/3WBCPOktzA9ZOAnMQQ==", + "dev": true + }, + "pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", "dev": true, "requires": { - "execa": "0.7.0", - "lcid": "1.0.0", - "mem": "1.1.0" + "end-of-stream": "^1.1.0", + "once": "^1.3.1" } }, + "semver": { + "version": "5.6.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.6.0.tgz", + "integrity": "sha512-RS9R6R35NYgQn++fkDWaOmqGoj4Ek9gGs+DPxNUZKuwE183xjJroKvyo1IzVFeXvUrvmALy6FWD5xrdJT25gMg==", + "dev": true + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "dev": true, "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" + } + }, + "webpack-dev-middleware": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.4.0.tgz", + "integrity": "sha512-Q9Iyc0X9dP9bAsYskAVJ/hmIZZQwf/3Sy4xCAZgL5cUkjZmUZLt4l5HpbST/Pdgjn3u6pE7u5OdGd1apgzRujA==", + "dev": true, + "requires": { + "memory-fs": "~0.4.1", + "mime": "^2.3.1", + "range-parser": "^1.0.3", + "webpack-log": "^2.0.0" } }, "which-module": { @@ -13124,75 +12254,79 @@ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "dev": true }, + "xregexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xregexp/-/xregexp-4.0.0.tgz", + "integrity": "sha512-PHyM+sQouu7xspQQwELlGwwd05mXUFqwFYfqPO0cC7x4fxyHnnuetmQr6CjJiafIDoH4MogHb9dOoJzR/Y4rFg==", + "dev": true + }, "yargs": { - "version": "11.0.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-11.0.0.tgz", - "integrity": "sha512-Rjp+lMYQOWtgqojx1dEWorjCofi1YN7AoFvYV7b1gx/7dAAeuI4kN5SZiEvr0ZmsZTOpDRcCqrpI10L31tFkBw==", + "version": "12.0.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-12.0.2.tgz", + "integrity": "sha512-e7SkEx6N6SIZ5c5H22RTZae61qtn3PYUE8JYbBFlK9sYmh3DMQ6E5ygtaG/2BW0JZi4WGgTR2IV5ChqlqrDGVQ==", "dev": true, "requires": { - "cliui": "4.1.0", - "decamelize": "1.2.0", - "find-up": "2.1.0", - "get-caller-file": "1.0.3", - "os-locale": "2.1.0", - "require-directory": "2.1.1", - "require-main-filename": "1.0.1", - "set-blocking": "2.0.0", - "string-width": "2.1.1", - "which-module": "2.0.0", - "y18n": "3.2.1", - "yargs-parser": "9.0.2" + "cliui": "^4.0.0", + "decamelize": "^2.0.0", + "find-up": "^3.0.0", + "get-caller-file": "^1.0.1", + "os-locale": "^3.0.0", + "require-directory": "^2.1.1", + "require-main-filename": "^1.0.1", + "set-blocking": "^2.0.0", + "string-width": "^2.0.0", + "which-module": "^2.0.0", + "y18n": "^3.2.1 || ^4.0.0", + "yargs-parser": "^10.1.0" } }, "yargs-parser": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-9.0.2.tgz", - "integrity": "sha1-nM9qQ0YP5O1Aqbto9I1DuKaMwHc=", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-10.1.0.tgz", + "integrity": "sha512-VCIyR1wJoEBZUqk5PA+oOBF6ypbwh5aNB3I50guxAL/quggdfs4TtNHQrSazFA3fYZ+tEqfs0zIGlv0c/rgjbQ==", "dev": true, "requires": { - "camelcase": "4.1.0" + "camelcase": "^4.1.0" } } } }, "webpack-log": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-1.2.0.tgz", - "integrity": "sha512-U9AnICnu50HXtiqiDxuli5gLB5PGBo7VvcHx36jRZHwK4vzOYLbImqT4lwWwoMHdQWwEKw736fCHEekokTEKHA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", + "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", "dev": true, "requires": { - "chalk": "2.4.1", - "log-symbols": "2.2.0", - "loglevelnext": "1.0.5", - "uuid": "3.3.2" + "ansi-colors": "^3.0.0", + "uuid": "^3.3.2" } }, "webpack-merge": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.1.3.tgz", - "integrity": "sha512-zxwAIGK7nKdu5CIZL0BjTQoq3elV0t0MfB7rUC1zj668geid52abs6hN/ACwZdK6LeMS8dC9B6WmtF978zH5mg==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.1.tgz", + "integrity": "sha512-4p8WQyS98bUJcCvFMbdGZyZmsKuWjWVnVHnAS3FFg0HDaRVrPbkivx2RYCre8UiemD67RsiFFLfn4JhLAin8Vw==", "dev": true, "requires": { - "lodash": "4.17.11" + "lodash": "^4.17.5" } }, "webpack-sources": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.1.0.tgz", - "integrity": "sha512-aqYp18kPphgoO5c/+NaUvEeACtZjMESmDChuD3NBciVpah3XpMEU9VAAtIaB1BsfJWWTSdv8Vv1m3T0aRk2dUw==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.3.0.tgz", + "integrity": "sha512-OiVgSrbGu7NEnEvQJJgdSFPl2qWKkWq5lHMhgiToIiN9w34EBnjYzSYs+VbL5KoYiLNtFFa7BZIKxRED3I32pA==", "dev": true, "requires": { - "source-list-map": "2.0.0", - "source-map": "0.6.1" + "source-list-map": "^2.0.0", + "source-map": "~0.6.1" } }, "webpack-subresource-integrity": { - "version": "1.1.0-rc.4", - "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.4.tgz", - "integrity": "sha1-xcTj1pD50vZKlVDgeodn+Xlqpdg=", + "version": "1.1.0-rc.6", + "resolved": "https://registry.npmjs.org/webpack-subresource-integrity/-/webpack-subresource-integrity-1.1.0-rc.6.tgz", + "integrity": "sha512-Az7y8xTniNhaA0620AV1KPwWOqawurVVDzQSpPAeR5RwNbL91GoBSJAAo9cfd+GiFHwsS5bbHepBw1e6Hzxy4w==", "dev": true, "requires": { - "webpack-core": "0.6.9" + "webpack-core": "^0.6.8" } }, "websocket-driver": { @@ -13201,8 +12335,8 @@ "integrity": "sha1-DK+dLXVdk67gSdS90NP+LMoqJOs=", "dev": true, "requires": { - "http-parser-js": "0.4.13", - "websocket-extensions": "0.1.3" + "http-parser-js": ">=0.4.0", + "websocket-extensions": ">=0.1.1" } }, "websocket-extensions": { @@ -13223,7 +12357,7 @@ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, "requires": { - "isexe": "2.0.0" + "isexe": "^2.0.0" } }, "which-module": { @@ -13238,8 +12372,9 @@ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz", "integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==", "dev": true, + "optional": true, "requires": { - "string-width": "2.1.1" + "string-width": "^1.0.2 || 2" } }, "win-release": { @@ -13247,7 +12382,7 @@ "resolved": "https://registry.npmjs.org/win-release/-/win-release-1.1.1.tgz", "integrity": "sha1-X6VeAr58qTTt/BJmVjLoSbcuUgk=", "requires": { - "semver": "5.5.0" + "semver": "^5.0.1" } }, "window-size": { @@ -13255,13 +12390,6 @@ "resolved": "https://registry.npmjs.org/window-size/-/window-size-0.1.4.tgz", "integrity": "sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY=" }, - "with-callback": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/with-callback/-/with-callback-1.0.2.tgz", - "integrity": "sha1-oJYpuakgAo1yFAT7Q1vc/1yRvCE=", - "dev": true, - "optional": true - }, "wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", @@ -13273,7 +12401,7 @@ "integrity": "sha512-6w+3tHbM87WnSWnENBUvA2pxJPLhQUg5LKwUQHq3r+XPhIM+Gh2R5ycbwPCyuGbNg+lPgdcnQUhuC02kJCvffQ==", "dev": true, "requires": { - "errno": "0.1.7" + "errno": "~0.1.7" } }, "wrap-ansi": { @@ -13281,8 +12409,8 @@ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", "requires": { - "string-width": "1.0.2", - "strip-ansi": "3.0.1" + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1" }, "dependencies": { "ansi-regex": { @@ -13295,7 +12423,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -13303,9 +12431,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -13313,7 +12441,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -13329,9 +12457,9 @@ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.3.0.tgz", "integrity": "sha512-xuPeK4OdjWqtfi59ylvVL0Yn35SF3zgcAcv7rBPFHVaEapaDr4GdGgm3j7ckTwH9wHL7fGmgfAnb0+THrHb8tA==", "requires": { - "graceful-fs": "4.1.11", - "imurmurhash": "0.1.4", - "signal-exit": "3.0.2" + "graceful-fs": "^4.1.11", + "imurmurhash": "^0.1.4", + "signal-exit": "^3.0.2" } }, "ws": { @@ -13340,9 +12468,9 @@ "integrity": "sha512-nnWLa/NwZSt4KQJu51MYlCcSQ5g7INpOrOMt4XV8j4dqTXdmlUmSHQ8/oLC069ckre0fRsgfvsKwbTdtKLCDkA==", "dev": true, "requires": { - "async-limiter": "1.0.0", - "safe-buffer": "5.1.2", - "ultron": "1.1.1" + "async-limiter": "~1.0.0", + "safe-buffer": "~5.1.0", + "ultron": "~1.1.0" } }, "xdg-basedir": { @@ -13355,8 +12483,8 @@ "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", "requires": { - "sax": "1.2.4", - "xmlbuilder": "9.0.7" + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" } }, "xmlbuilder": { @@ -13381,15 +12509,6 @@ "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=", "dev": true }, - "xxhashjs": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/xxhashjs/-/xxhashjs-0.2.2.tgz", - "integrity": "sha512-AkTuIuVTET12tpsVIQo+ZU6f/qDmKuRUcjaqR+OIvm+aCBsZ95i7UVY5WJ9TMsSaZ0DA2WxoZ4acu0sPH+OKAw==", - "dev": true, - "requires": { - "cuint": "0.2.2" - } - }, "y18n": { "version": "3.2.1", "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.1.tgz", @@ -13405,13 +12524,13 @@ "resolved": "https://registry.npmjs.org/yargs/-/yargs-3.32.0.tgz", "integrity": "sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU=", "requires": { - "camelcase": "2.1.1", - "cliui": "3.2.0", - "decamelize": "1.2.0", - "os-locale": "1.4.0", - "string-width": "1.0.2", - "window-size": "0.1.4", - "y18n": "3.2.1" + "camelcase": "^2.0.1", + "cliui": "^3.0.3", + "decamelize": "^1.1.1", + "os-locale": "^1.4.0", + "string-width": "^1.0.1", + "window-size": "^0.1.4", + "y18n": "^3.2.0" }, "dependencies": { "ansi-regex": { @@ -13424,7 +12543,7 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", "requires": { - "number-is-nan": "1.0.1" + "number-is-nan": "^1.0.0" } }, "string-width": { @@ -13432,9 +12551,9 @@ "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", "requires": { - "code-point-at": "1.1.0", - "is-fullwidth-code-point": "1.0.0", - "strip-ansi": "3.0.1" + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" } }, "strip-ansi": { @@ -13442,7 +12561,7 @@ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", "requires": { - "ansi-regex": "2.1.1" + "ansi-regex": "^2.0.0" } } } @@ -13454,7 +12573,7 @@ "dev": true, "optional": true, "requires": { - "camelcase": "3.0.0" + "camelcase": "^3.0.0" }, "dependencies": { "camelcase": { @@ -13483,7 +12602,7 @@ "resolved": "https://registry.npmjs.org/zip/-/zip-1.2.0.tgz", "integrity": "sha1-rQrUImUwm+QutW/IYZThfCTmapw=", "requires": { - "bops": "0.1.1" + "bops": "~0.1.1" } }, "zone.js": { diff --git a/package.json b/package.json index c1176900..7253d8d1 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "@angular/router": "^7.2.9", "@ngx-translate/core": "^11.0.1", "@ngx-translate/http-loader": "^4.0.0", - "core-js": "^2.4.1", + "core-js": "^2.5.4", "disable-scroll": "^0.4.0", "rxjs": "^6.4.0", "zone.js": "^0.8.29", @@ -38,23 +38,23 @@ "@angular/cli": "^7.3.5", "@angular/compiler-cli": "^7.2.9", "@angular/language-service": "^7.2.9", - "@types/jasmine": "~2.5.53", - "@types/jasminewd2": "~2.0.2", - "@types/node": "^6.0.101", + "@types/jasmine": "~2.8.8", + "@types/jasminewd2": "~2.0.3", + "@types/node": "~8.9.4", "codelyzer": "~4.5.0", "jasmine-core": "~2.99.1", - "jasmine-spec-reporter": "~4.1.0", - "karma": "~2.0.0", - "karma-chrome-launcher": "~2.1.1", + "jasmine-spec-reporter": "~4.2.1", + "karma": "~4.0.0", + "karma-chrome-launcher": "~2.2.0", "karma-cli": "~1.0.1", - "karma-coverage-istanbul-reporter": "^1.4.2", - "karma-jasmine": "~1.1.0", + "karma-coverage-istanbul-reporter": "~2.0.1", + "karma-jasmine": "~1.1.2", "karma-jasmine-html-reporter": "^0.2.2", "protractor": "~5.4.0", - "ts-node": "~3.2.0", + "ts-node": "~7.0.0", "tslint": "~5.7.0", "typescript": "~3.2.4", - "@angular-devkit/build-angular": "~0.6.0" + "@angular-devkit/build-angular": "~0.13.6" }, "snyk": true } From 52a3cfa2d2c8796f1369a5c0aa395ccaac4b208b Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Thu, 14 Mar 2019 22:42:05 -0400 Subject: [PATCH 06/15] Fix e2e tests --- e2e/block-details/block-details.po.ts | 2 +- .../pages/block-details/block-details.component.html | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/e2e/block-details/block-details.po.ts b/e2e/block-details/block-details.po.ts index 199a1121..9f3c5f82 100644 --- a/e2e/block-details/block-details.po.ts +++ b/e2e/block-details/block-details.po.ts @@ -45,7 +45,7 @@ export class BlockDetailsPage { return element .all(by.css('.header-container > div > a')) .get(index) - .element(by.css('.-not-xs')) + .element(by.css('.btn-text-e2e')) .getAttribute('textContent'); } diff --git a/src/app/components/pages/block-details/block-details.component.html b/src/app/components/pages/block-details/block-details.component.html index 91f2f590..34e7d837 100644 --- a/src/app/components/pages/block-details/block-details.component.html +++ b/src/app/components/pages/block-details/block-details.component.html @@ -4,11 +4,11 @@

{{ 'blockDetails.title' | translate }}

From 1230e03da30d633a48c0462b85a5ac517b2a094b Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Fri, 15 Mar 2019 19:52:18 -0400 Subject: [PATCH 07/15] Update Snyk configuration --- .snyk | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/.snyk b/.snyk index 8b792218..bcee9832 100644 --- a/.snyk +++ b/.snyk @@ -1,6 +1,11 @@ # Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities. -version: v1.13.1 -ignore: {} +version: v1.13.3 +# ignores vulnerabilities until expiry date; change duration by modifying expiry date +ignore: + 'npm:shelljs:20140723': + - '*': + reason: No fix available - Dev dependency + expires: 2019-12-31T00:00:00.000Z # patches apply the minimum changes required to fix a vulnerability patch: 'npm:debug:20170905': From 2b58c4dec9eb7edc22a10a4ae0c744e3c5d919ea Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Mon, 18 Mar 2019 14:56:55 -0400 Subject: [PATCH 08/15] Show pending instead of predicted --- .../address-detail/address-detail.component.html | 8 ++++---- .../address-detail/address-detail.component.ts | 15 ++++----------- src/assets/i18n/en.json | 1 - 3 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/app/components/pages/address-detail/address-detail.component.html b/src/app/components/pages/address-detail/address-detail.component.html index 4c5bdc5f..5ef06c9c 100644 --- a/src/app/components/pages/address-detail/address-detail.component.html +++ b/src/app/components/pages/address-detail/address-detail.component.html @@ -11,28 +11,28 @@

{{ 'addressDetail.title' | translate }}

{{ 'addressDetail.totalReceived' | translate }}
{{ transactions && totalReceived ? ((totalReceived.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} -  ({{ (PendingIn.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.pending' | translate) }}) +  ({{ (pendingBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.totalSent' | translate }}
{{ transactions && totalSent ? ((totalSent.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} -  ({{ (PendingOut.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.pending' | translate) }}) +  ({{ (pendingBalance.negated().decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.currentBalance' | translate }}
{{ transactions && balance ? ((balance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} -  ({{ (predictedBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.predicted' | translate) }}) +  ({{ (pendingBalance.isGreaterThan(0) ? '+' : '') + (pendingBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.hoursBalance' | translate }}
{{ transactions && hoursBalance ? ((hoursBalance.decimalPlaces(0).toString() | number:'1.0-0')) : loadingMsg }} -  ({{ (predictedHoursBalance.decimalPlaces(0).toString() | number:'1.0-0') + ' ' + ('general.coinIdentifier' | translate) + ' ' + ('general.predicted' | translate) }}) +  ({{ (pendingHoursBalance.isGreaterThan(0) ? '+' : '') + (pendingHoursBalance.decimalPlaces(0).toString() | number:'1.0-0') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.tools' | translate }}
diff --git a/src/app/components/pages/address-detail/address-detail.component.ts b/src/app/components/pages/address-detail/address-detail.component.ts index cca7d42d..883b75b7 100644 --- a/src/app/components/pages/address-detail/address-detail.component.ts +++ b/src/app/components/pages/address-detail/address-detail.component.ts @@ -17,12 +17,10 @@ export class AddressDetailComponent implements OnInit { address: string; totalReceived: BigNumber; totalSent: BigNumber; - PendingIn: BigNumber; - PendingOut: BigNumber; balance: BigNumber; hoursBalance: BigNumber; - predictedBalance: BigNumber; - predictedHoursBalance: BigNumber; + pendingBalance: BigNumber; + pendingHoursBalance: BigNumber; transactions: Transaction[]; pageTransactions: any[]; pageIndex = 0; @@ -74,15 +72,10 @@ export class AddressDetailComponent implements OnInit { this.totalReceived = new BigNumber(0); transactions.map(tx => this.totalReceived = this.totalReceived.plus(tx.balance.isGreaterThan(0) && tx.status ? tx.balance : 0)); - this.PendingIn = new BigNumber(0); - transactions.map(tx => this.PendingIn = this.PendingIn.plus(tx.balance.isGreaterThan(0) && !tx.status ? tx.balance : 0)); this.totalSent = new BigNumber(0); transactions.map(tx => this.totalSent = this.totalSent.plus(tx.balance.isLessThan(0) && tx.status ? tx.balance : 0)); this.totalSent = this.totalSent.negated(); - this.PendingOut = new BigNumber(0); - transactions.map(tx => this.PendingOut = this.PendingOut.plus(tx.balance.isLessThan(0) && !tx.status ? tx.balance : 0)); - this.PendingOut = this.PendingOut.negated(); this.updateTransactions(); }, @@ -105,8 +98,8 @@ export class AddressDetailComponent implements OnInit { .subscribe(response => { this.balance = new BigNumber(response.confirmed.coins).dividedBy(1000000); this.hoursBalance = new BigNumber(response.confirmed.hours); - this.predictedBalance = new BigNumber(response.predicted.coins).dividedBy(1000000); - this.predictedHoursBalance = new BigNumber(response.predicted.hours); + this.pendingBalance = new BigNumber(response.predicted.coins).dividedBy(1000000).minus(this.balance); + this.pendingHoursBalance = new BigNumber(response.predicted.hours).minus(this.hoursBalance); }); } diff --git a/src/assets/i18n/en.json b/src/assets/i18n/en.json index 357c93c1..67ec44c3 100644 --- a/src/assets/i18n/en.json +++ b/src/assets/i18n/en.json @@ -7,7 +7,6 @@ "calculatedHours": "Final Hours", "currentHours": "Current Hours", "hours": "Hours", - "predicted": "predicted", "pending": "pending", "loadingMsg": "Loading...", "shortLoadingErrorMsg": "Loading error", From 6975e08b717638fc6dd215a8bc93f6d6cf52bcb8 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Tue, 19 Mar 2019 15:02:41 -0400 Subject: [PATCH 09/15] Fix the tx details margin --- .../unspent-outputs/unspent-outputs.component.html | 4 ++-- src/styles.scss | 10 +++++++++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/app/components/pages/unspent-outputs/unspent-outputs.component.html b/src/app/components/pages/unspent-outputs/unspent-outputs.component.html index b1e44d62..a4baddc2 100644 --- a/src/app/components/pages/unspent-outputs/unspent-outputs.component.html +++ b/src/app/components/pages/unspent-outputs/unspent-outputs.component.html @@ -16,8 +16,8 @@

{{ 'unspentOutputs.title' | translate }}

-
{{ 'unspentOutputs.origin' | translate }}:

- +
{{ 'unspentOutputs.origin' | translate }}:

+
{{ 'unspentOutputs.date' | translate }}:
diff --git a/src/styles.scss b/src/styles.scss index 08245076..c5e9e707 100644 --- a/src/styles.scss +++ b/src/styles.scss @@ -90,12 +90,18 @@ h2 { .row { margin-bottom: 0; + + .-row { + >div { + margin-top: 5px; + } + } } .-title { background-color: $col-odd-background; font-weight: 700; - padding: $siz-normal-margin $siz-big-margin; + padding: ($siz-normal-margin - 5) $siz-big-margin $siz-normal-margin $siz-big-margin; a { color: $primary; @@ -103,6 +109,7 @@ h2 { } .-date { text-align: right; + margin-top: 5px; } .-label { display: inline-block; @@ -134,6 +141,7 @@ h2 { } .-date { text-align: left; + margin-top: unset; } .-inline-block { display: inline; From 0db7e12b9284f087646ef67604f73286dd90225c Mon Sep 17 00:00:00 2001 From: therealssj Date: Fri, 12 Apr 2019 22:59:12 +0530 Subject: [PATCH 10/15] update travis to xenial --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index 38c8bf89..bb2f2d1c 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,4 +1,5 @@ language: go +dist: xenial go: - "1.11.x" From f12afcd9783e968d71d19eeb639360fe42dd7596 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Wed, 24 Apr 2019 15:13:56 -0400 Subject: [PATCH 11/15] Allow to change the language of the UI --- README.md | 5 + src/app/app.config.ts | 15 + src/app/app.module.ts | 4 + .../language-selection.component.html | 12 + .../language-selection.component.scss | 66 +++++ .../language-selection.component.spec.ts | 25 ++ .../language-selection.component.ts | 52 ++++ .../search-bar/search-bar.component.html | 11 +- .../search-bar/search-bar.component.scss | 51 ++-- .../language/language.service.spec.ts | 15 + src/app/services/language/language.service.ts | 65 +++++ src/assets/i18n/README.md | 273 ++++++++++++++++++ src/assets/i18n/app1.png | Bin 0 -> 49616 bytes src/assets/i18n/app2.png | Bin 0 -> 54068 bytes src/assets/i18n/check.js | 230 +++++++++++++++ src/assets/i18n/es.json | 112 +++++++ src/assets/i18n/es_base.json | 112 +++++++ src/assets/img/arrow.png | Bin 0 -> 190 bytes src/assets/img/lang/en.png | Bin 0 -> 3229 bytes src/assets/img/lang/es.png | Bin 0 -> 2304 bytes 20 files changed, 1022 insertions(+), 26 deletions(-) create mode 100644 src/app/components/layout/language-selection/language-selection.component.html create mode 100644 src/app/components/layout/language-selection/language-selection.component.scss create mode 100644 src/app/components/layout/language-selection/language-selection.component.spec.ts create mode 100644 src/app/components/layout/language-selection/language-selection.component.ts create mode 100644 src/app/services/language/language.service.spec.ts create mode 100644 src/app/services/language/language.service.ts create mode 100644 src/assets/i18n/README.md create mode 100644 src/assets/i18n/app1.png create mode 100644 src/assets/i18n/app2.png create mode 100644 src/assets/i18n/check.js create mode 100644 src/assets/i18n/es.json create mode 100644 src/assets/i18n/es_base.json create mode 100644 src/assets/img/arrow.png create mode 100644 src/assets/img/lang/en.png create mode 100644 src/assets/img/lang/es.png diff --git a/README.md b/README.md index 07e26b41..31cf2f72 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ You can check blocks, transactions and their states. - [e2e Tests](#e2e-tests) - [Customization](#customization) - [Deployment](#deployment) +- [Translations](#translations) @@ -190,3 +191,7 @@ Run it on port 80: ```sh EXPLORER_HOST=:80 ./explorer ``` + +#### Translations + +You can find information about how to work with translation files in the [Translations README](/src/assets/i18n/README.md). \ No newline at end of file diff --git a/src/app/app.config.ts b/src/app/app.config.ts index 6d5be748..ffe993dd 100644 --- a/src/app/app.config.ts +++ b/src/app/app.config.ts @@ -34,3 +34,18 @@ export const FooterConfig = { } ], }; + +export const languageConfig = { + languages: [{ + code: 'en', + name: 'English', + iconName: 'en.png' + }, + { + code: 'es', + name: 'Español', + iconName: 'es.png' + } + ], + defaultLanguage: 'en' +}; diff --git a/src/app/app.module.ts b/src/app/app.module.ts index e730f2ab..6aef8034 100644 --- a/src/app/app.module.ts +++ b/src/app/app.module.ts @@ -32,6 +32,8 @@ import { DateFormatterComponent } from 'app/components/layout/date-formatter/dat import { SearchService } from './services/search/search.service'; import { SearchComponent } from './components/pages/search/search.component'; import { TransactionInfoComponent } from './components/layout/transaction-info/transaction-info.component'; +import { LanguageService } from 'app/services/language/language.service'; +import { LanguageSelectionComponent } from 'app/components/layout/language-selection/language-selection.component'; const ROUTES = [ @@ -110,6 +112,7 @@ const ROUTES = [ DateFormatterComponent, SearchComponent, TransactionInfoComponent, + LanguageSelectionComponent, ], imports: [ BrowserModule, @@ -128,6 +131,7 @@ const ROUTES = [ ApiService, ExplorerService, SearchService, + LanguageService, {provide: RouteReuseStrategy, useClass: AppReuseStrategy}, DatePipe, ], diff --git a/src/app/components/layout/language-selection/language-selection.component.html b/src/app/components/layout/language-selection/language-selection.component.html new file mode 100644 index 00000000..6a7c3b62 --- /dev/null +++ b/src/app/components/layout/language-selection/language-selection.component.html @@ -0,0 +1,12 @@ +
+
+ + +
+
+ +
+
diff --git a/src/app/components/layout/language-selection/language-selection.component.scss b/src/app/components/layout/language-selection/language-selection.component.scss new file mode 100644 index 00000000..69f12246 --- /dev/null +++ b/src/app/components/layout/language-selection/language-selection.component.scss @@ -0,0 +1,66 @@ +@import '../../../../assets/scss/_variables.scss'; + +.language-button { + display: flex; + align-items: center; + height: 42px; + margin-left: 15px; + padding: 0px 20px; + border-radius: 60px; + cursor: pointer; + + &:hover{ + background-color: rgba(0, 0, 0, 0.05); + } + + .flag-img { + height: 28px; + } + + .arrow-img { + margin-left: 5px; + } +} + +.dropdown-menu { + display: none; + flex-direction: column; + margin: 5px 0 0 15px; + position: absolute; + right: 0px; + z-index: 1000; + background-color: white; + background-clip: padding-box; + border-radius: 0 0 3px 3px; + box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3); + border-top: 1px solid white; + min-width: 150px; + + &.open{ + display: flex; + flex-direction: column; + } + + .dropdown-item{ + margin: 10px 0 0 0; + padding: 0; + text-decoration: none; + white-space: nowrap; + padding:5px; + margin: 5px; + color: $gray; + display: flex; + align-items: center; + height: 36px; + cursor: pointer; + + &:hover{ + color: black; + } + + .small-flag-img { + height: 20px; + margin-right: 5px; + } + } +} \ No newline at end of file diff --git a/src/app/components/layout/language-selection/language-selection.component.spec.ts b/src/app/components/layout/language-selection/language-selection.component.spec.ts new file mode 100644 index 00000000..7cf8ca47 --- /dev/null +++ b/src/app/components/layout/language-selection/language-selection.component.spec.ts @@ -0,0 +1,25 @@ +import { async, ComponentFixture, TestBed } from '@angular/core/testing'; + +import { LanguageSelectionComponent } from 'app/components/layout/language-selection/language-selection.component'; + +describe('LanguageSelectionComponent', () => { + let component: LanguageSelectionComponent; + let fixture: ComponentFixture; + + beforeEach(async(() => { + TestBed.configureTestingModule({ + declarations: [ LanguageSelectionComponent ] + }) + .compileComponents(); + })); + + beforeEach(() => { + fixture = TestBed.createComponent(LanguageSelectionComponent); + component = fixture.componentInstance; + fixture.detectChanges(); + }); + + it('should be created', () => { + expect(component).toBeTruthy(); + }); +}); diff --git a/src/app/components/layout/language-selection/language-selection.component.ts b/src/app/components/layout/language-selection/language-selection.component.ts new file mode 100644 index 00000000..f3e7efec --- /dev/null +++ b/src/app/components/layout/language-selection/language-selection.component.ts @@ -0,0 +1,52 @@ +import { Component, OnDestroy, HostListener } from '@angular/core'; + +import { LanguageService, LanguageData } from '../../../services/language/language.service'; +import { Subscription } from 'rxjs'; + +@Component({ + selector: 'app-language-selection', + templateUrl: './language-selection.component.html', + styleUrls: ['./language-selection.component.scss'] +}) +export class LanguageSelectionComponent implements OnDestroy { + langs: LanguageData[]; + language: LanguageData; + showLangs = false; + + private subscription: Subscription; + private clickedInside = false; + + constructor( + private languageService: LanguageService, + ) { + this.langs = languageService.languages; + + this.subscription = this.languageService.currentLanguage.subscribe(lang => this.language = lang); + } + + ngOnDestroy() { + this.subscription.unsubscribe(); + } + + langsButtonClick() { + this.showLangs = !this.showLangs; + } + + changeLanguage(language: LanguageData) { + this.languageService.changeLanguage(language.code); + this.showLangs = false; + } + + @HostListener('click') + clickInside() { + this.clickedInside = true; + } + + @HostListener('document:click') + clickout() { + if (!this.clickedInside) { + this.showLangs = false; + } + this.clickedInside = false; + } +} diff --git a/src/app/components/layout/search-bar/search-bar.component.html b/src/app/components/layout/search-bar/search-bar.component.html index a3be6f5f..2dde91f2 100644 --- a/src/app/components/layout/search-bar/search-bar.component.html +++ b/src/app/components/layout/search-bar/search-bar.component.html @@ -1,7 +1,10 @@
-
- - - +
+
+ + + +
+
diff --git a/src/app/components/layout/search-bar/search-bar.component.scss b/src/app/components/layout/search-bar/search-bar.component.scss index 277f40ae..1b2ec95c 100644 --- a/src/app/components/layout/search-bar/search-bar.component.scss +++ b/src/app/components/layout/search-bar/search-bar.component.scss @@ -1,30 +1,37 @@ -.-search-bar-container { +@import '../../../../assets/scss/_variables.scss'; + +.general-container { margin: 4rem 0 2rem; position: relative; + display: flex; - img { - display: inline-block; - height: 20px; - margin: 11px; - position: absolute; - } + .search-bar-container { + flex-grow: 1; - i { - margin: 13px 11px; - position: absolute; - font-size: 17px; - } + img { + display: inline-block; + height: 20px; + margin: 11px; + position: absolute; + } + + i { + margin: 13px 11px; + position: absolute; + font-size: 17px; + } - input { - border: 2px solid rgba(0, 0, 0, 0.05); - border-radius: 6px; - font-size: 12px; - height: 42px; - padding: 0 0 0 40px; - width: 100%; + input { + border: 2px solid rgba(0, 0, 0, 0.05); + border-radius: 6px; + font-size: 12px; + height: 42px; + padding: 0 0 0 40px; + width: 100%; - &::placeholder { - color: #cdcdcd; + &::placeholder { + color: #cdcdcd; + } } } -} +} \ No newline at end of file diff --git a/src/app/services/language/language.service.spec.ts b/src/app/services/language/language.service.spec.ts new file mode 100644 index 00000000..fb03820f --- /dev/null +++ b/src/app/services/language/language.service.spec.ts @@ -0,0 +1,15 @@ +import { TestBed, inject } from '@angular/core/testing'; + +import { LanguageService } from './language.service'; + +describe('LanguageService', () => { + beforeEach(() => { + TestBed.configureTestingModule({ + providers: [LanguageService] + }); + }); + + it('should be created', inject([LanguageService], (service: LanguageService) => { + expect(service).toBeTruthy(); + })); +}); diff --git a/src/app/services/language/language.service.ts b/src/app/services/language/language.service.ts new file mode 100644 index 00000000..8c3b2f5a --- /dev/null +++ b/src/app/services/language/language.service.ts @@ -0,0 +1,65 @@ +import { Injectable } from '@angular/core'; +import { TranslateService, LangChangeEvent } from '@ngx-translate/core'; +import { ReplaySubject } from 'rxjs'; + +import { languageConfig } from 'app/app.config'; + +export class LanguageData { + code: string; + name: string; + iconName: string; + + constructor(langObj) { + Object.assign(this, langObj); + } +} + +@Injectable() +export class LanguageService { + currentLanguage = new ReplaySubject(); + + private readonly storageKey = 'lang'; + + private languagesInternal: LanguageData[] = []; + get languages(): LanguageData[] { + return this.languagesInternal; + } + + constructor( + private translate: TranslateService + ) { + this.loadLanguageSettings(); + } + + loadLanguageSettings() { + const langs: string[] = []; + languageConfig.languages.forEach(lang => { + const LangObj = new LanguageData(lang); + this.languagesInternal.push(LangObj); + langs.push(LangObj.code); + }); + + this.translate.addLangs(langs); + this.translate.setDefaultLang(languageConfig.defaultLanguage); + + this.translate.onLangChange + .subscribe((event: LangChangeEvent) => this.onLanguageChanged(event)); + + this.loadCurrentLanguage(); + } + + changeLanguage(langCode: string) { + this.translate.use(langCode); + } + + private onLanguageChanged(event: LangChangeEvent) { + this.currentLanguage.next(this.languages.find(val => val.code === event.lang)); + localStorage.setItem(this.storageKey, event.lang); + } + + private loadCurrentLanguage() { + const storedLang = localStorage.getItem(this.storageKey); + const currentLang = !!storedLang ? storedLang : languageConfig.defaultLanguage; + this.translate.use(currentLang); + } +} diff --git a/src/assets/i18n/README.md b/src/assets/i18n/README.md new file mode 100644 index 00000000..d81223fc --- /dev/null +++ b/src/assets/i18n/README.md @@ -0,0 +1,273 @@ +This folder contains the GUI translation files. To maintain order and be able +to easily make any necessary updates to the translation files after updating +the main text file, please follow its instructions if you are working with +its contents. + +# Contents of this folder + +The contents of this folder are: + +- `README.md`: this file. + +- `check.js`: file with the script for detecting if a translation file has errors +or should be updated. + +- `en.json`: main file with all the texts of the application, in English. It should +only be modified when changing the texts of the application (add, modify and +delete). This means that the file must not be modified while creating a new +ranslation or modifying an existing one. + +- Various `xx.json` files: files with the translated versions of the texts of +`en.json`. + +- Various `xx_base.json` files: files with copies of `en.json` made the last time the +corresponding `xx.json` file was modified. + +Normally there is no need to modify the first two files. + +For more information about the `xx.json` and `xx_base.json`, please check the +[Add a new translation](#add-a-new-translation) and +[Update a translation](#update-a-translation) sections. + +# About the meaning of "xx" in this file + +Several parts of this file uses "xx" as part of file names or scripts, like +`xx.json` and `xx_base.json`. In fact, no file in this folder should be called +`xx.json` or `xx_base.json`, the "xx" part must be replaces with the two +characters code of the language. For example, if you are working with the Chinese +translation, the files will be `zh.json` and `zh_base.json`, instead of `xx.json` +and `xx_base.json`. The same if true for the scripts, if you are working with the +Chinese translation, instead of running `node check.js xx` you must run +`node check.js zh`. + +# Add a new translation + +First you must create in this folder two copies of the `en.json` file. The first +copy must be called `xx.json`, where the `xx` part must be the two characters code +of the new language. For example, for Chinese the name of the file should be +`zh.json`; for Spanish, `es.json`; for French, `fr.json`, etc. + +The second copy of `en.json` must be renamed to `xx_base.json`, where the `xx` part +must be the two characters code of the new language. This means that if the first +copy is named `zh.json`, the second one should be named `zh_base.json`. + +It is not necessary to follow a specific standard for the two characters code, but +it must be limited to two letters and be a recognizable code for the language. + +After creating the two files, simply translate the texts in `xx.json`. Please make +sure you do not modify the structure of `xx.json`, just modify the texts. + +The `xx_base.json` file must not be modified in any way, as it is used only as a way +to know what the state of `en.json` was the last time the `xx.json` file was +modified. This copy will be compared in the future with `en.json`, to verify if +there were modifications to `en.json` since the last time the translation file was +modified and if an update is needed. + +If the `xx.json` and `xx_base.json` files do not have the same elements, the +automatic tests could fail when uploading the changes to the repository, preventing +the changes from being accepted, so, again, it is important not to modify the +structure of `xx.json`, but only its contents. + +After doing all this, the translation will be ready, but will not be available in +the GUI until adding it to the code. + +# Verify the translation files + +This folder includes a script that is capable of automatically checking the +translation files, to detect problems and know what should be updated. + +For using it, your computer must have `Node.js` installed. + +## Checking for problems + +For detecting basic problems on the translation files, open a command line window +in this folder and run `node check.js`. This will check the following: + +- The `en.json` must exist, as it is the main language file for the app. + +- For every `xx.json` file (except `en.json`) an `xx_base.json` file must exist +and viceversa. + +- A `xx.json` file and its corresponding `xx_base.json` file must have the exact +same elements (only the content of that elements could be different), as the +`xx.json` is suposed to be the translation of the contents of `xx_base.json`. + +As you can see, this only checks for errors that could be made while creating or +modifying the `xx.json` and `xx_base.json` files, and does not check if any +translation needs to be updated. + +At the end of the script excecution, the console will display the list of all +errors found, if any. This check could be done automatically when making changes +to the repository, to reject updates with problems, so it is good idea to run it +manually before uploading changes. + +Note: at this time the script does not check if the elements of the files are +in the same order, but this could be added in the future, so it is recomended +not to change the order of the elements. + +## Checking if a language file needs to be updated + +To detect if an specific language needs updating, run `node check.js xx`, +where xx is the two characters code of the language you want to check. If you +want to check all languages, run `node check.js all`. + +By doing this, the script will perform all the checks described in the +[Checking for problems](#checking-for-problems) section, plus this: + +- The `en.json` and `xx_base.json` should have the same elements. If `en.json` +has elements that `xx_base.json` does not contain, it means that, since the +last time the translation file was updated, new texts have been added to the +application. If `xx_base.json` has elements that `en.json` does not contain, +it means that, since the last time the translation file was updated, some texts +have been removed from the application. Both cases mean that the translation +file should be updated. + +- The elements of `en.json` and `xx_base.json` should have the same content. +If any element have different content, it means that since the last time the +translation file was updated, some texts of the applications have been changed. +This means that the translation file should be updated. + +At the end of the script excecution, the console will display the list of all +errors found, if any. + +# Update a translation + +Before updating a translation file, you should follow the steps of the +[Checking if a language file needs to be updated](#Checking-if-a-language-file-needs-to-be-updated) +section. By doing so you will quikly know exactly what texts must be added, +deleted or edited. + +After doing that, make all the required modifications in the `xx.json` file, +this menans adding, deleting and modifying all the elements indicated by the +script. Please be sure to modify only what is required and to add any new +element in the same position that it is in the `en.json` file. This process +is manual, so be sure check all the changes before finishing. + +After doing the modifications in `xx.json`, delete the `xx_base.json` file, +create a copy of `en.json` and rename it `xx_base.json`. The objetive is to +simply update the `xx_base.json` file to the current state of `en.json`. +this will make possible to check in the future if more updates are nedded, +due to new changes in `en.json`. + +Once all the changes are made, check again the language file as indicated +in the +[Checking if a language file needs to be updated](#Checking-if-a-language-file-needs-to-be-updated) +section. The script should not return errors. If the script returns errors, +please solve them before continuing. + +# How to edit the translation files + +The translation files are in json format (.json files). It is possible to +open these files in a text editor and edit them like normal text files. +However, the json files are used for coding and have a very strict format. +Because of this, **editing the files manually is not recommended** unless +you know exactly what you are doing. + +If you do not know the json format, this section includes useful +information to be able to edit the files easily. + +## Which application should be used for editing the files + +There are several application that allow editing json files, including +some text editors. However, it is recommended to use the Json Editor app +for Google Chrome. Among the advantages of this application are that it +is multiplatform, it allows editing the contents without having to +directly modify the json code and has a relatively simple interface. You +can add it to your Chrome browser from here: +https://chrome.google.com/webstore/detail/json-editor/lhkmoheomjbkfloacpgllgjcamhihfaj + +The app looks like this: + +![app](app1.png) + +As you can see, you can load/save files on the upper-right corner of +the app. The left part shows the source code and the right part shows +a tree view of the elements of the file and its contents. You can +ignore the source code and work with the tree view only. + +![app](app2.png) + +As you will not be editing the soutce code, you can hide it by presing +and draging the 3-dot button (1). While editing the file, you can use +the arrows (2) to expand/contract the different sections in which the +elements are organized. Once you find an item that you want to edit, +click on the content and modify the text (3). Please, do not make any +changes to the name of the element (4). + +You can use the 6-dot buttons (5) to move the elements to a different +location, but please avoid doing it, as that could alter the order of +the file in a way that would make it stop working. Also, as you will +not be working with the source code, avoid using the arrow +buttons (6). + +## Special codes + +Some texts in the language files have special codes that are not +shown in the user interface of the wallet, but serve special purposes. +The codes are: + +- **\\"**: due to how json files work, it is not possible to write +double quotes directly in the texts, the ccorrect way to add double +quotes to a json file is **\\"** (note that the 2 characters must not +be separated by a white space). If you use the Json Editor app for +Google Chrome, you can write double quotes normally and the app will +automatically add the **\\** character behind them, but that is just +a convenience for when you are writing, you could still find the +**\\"** code in files you are editing and have to work with it. + +- **{{ }}**: any text block similar to **{{ something }}** is a +special identifier that the code will replace with a different value +when the app is running. For example, if you find a text like "Your +balance is {{ value }} coins", the application will show something +like "Your balance is 21 coins". In that example the "21" is a value +that the app has to calculate, so it is not possible to add it directly +into the language file. If you find a **{{ }}** text block, please do +not translate it, just move the whole **{{ }}** text block to where the +value should be displayed. If you want to leave a while space before the +value, simply add a white space before the **{{ }}** text block, and do +the same after it if you want a white space after the value. + +- **\
**: this code means "new line". It is just a way to tell +the code that the text after it should be added in a new line. + +# Make a translation available in the application + +Although creating the translation files is the most important step, it is +necessary to make some additional changes before a translation is +available in the application. + +The first thing to do is to add a bitmap in +[src/assets/img/lang](/src/assets/img/lang), +with the flag that will be used to identify the language. The bitmap +should be a .png file with transparent background and a size of 64x64 +pixels. However, the flag does not have to occupy all the space of the +bitmap, but it should be 64 pixels wide and only 42 pixels high, +centered. Please use as a reference the flags that are already in +the folder. + +After adding the flag, you must modify the +[src/app/app.config.ts](/src/app/app.config.ts) file. In particular, +you must add a new entry to the `languageConfig.languages` array, +with the data about the language. The object you must add is similar +to this: + +``` +{ + code: 'en', + name: 'English', + iconName: 'en.png' +} +``` + +The properties are: + +- `code`: 2 letter code that was assigned to the language. It must match +the name given to the translation file. + +- `name`: Name of the language. + +- `iconName`: Name of the file with the flag, which was added in the +previous step. + +Please use as a reference the data of the languages that have already +been added to the `languages` array. diff --git a/src/assets/i18n/app1.png b/src/assets/i18n/app1.png new file mode 100644 index 0000000000000000000000000000000000000000..67c75016e9de33e7186cae8efe99781d053e8f8b GIT binary patch literal 49616 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
$}pCNRSmuWrj8a`_R;r>bL$YXAGEp_~< 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 CGLZ8C literal 0 HcmV?d00001 diff --git a/src/assets/i18n/app2.png b/src/assets/i18n/app2.png new file mode 100644 index 0000000000000000000000000000000000000000..6cabfe6818f30d50b26b6611d2e68f41995a8890 GIT binary patch literal 54068 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�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%0Dy1&ClP)S&H5`QBM`l%A|k6^_NA`+ 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�-^X+lO)VVK|jti$KgZyLu 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 literal 0 HcmV?d00001 diff --git a/src/assets/i18n/check.js b/src/assets/i18n/check.js new file mode 100644 index 00000000..3a47eac2 --- /dev/null +++ b/src/assets/i18n/check.js @@ -0,0 +1,230 @@ +'use strict' + +const fs = require('fs'); + +///////////////////////////////////////////// +// Initial configuration +///////////////////////////////////////////// + +console.log('Starting to check the languaje files.', '\n'); + +// Load the current English file. +if (!fs.existsSync('en.json')) { + exitWithError('Unable to find the English languaje file.'); +} +let currentData = JSON.parse(fs.readFileSync('en.json', 'utf8')); + +// 2 charaters code of the languajes that will be checked. +const langs = []; +// If false, the code will only verify the differences in the elements (ignoring its contents) of the +// base files and the files with the translations. If not, the code will also verify the differences +// in the elements and contents of the base files and the current English file. +let checkFull = false; + +// If a param was send, it must be "all" or the 2 charaters code of the languaje that must be checked. +// If a param is provided, checkFull is set to true. +if (process.argv.length > 2) { + if (process.argv.length > 3) { + exitWithError('Invalid number of parameters.'); + } + + if (process.argv[2] != 'all') { + if (process.argv[2].length !== 2) { + exitWithError('You can only send as parameter to this script the 2-letter code of one of the language files in this folder, or "all".'); + } + langs.push(process.argv[2]); + } + + checkFull = true; +} + +// If no languaje code was send as param, the code will check all languajes. +if (langs.length === 0) { + let localFiles = fs.readdirSync('./'); + + const langFiles = []; + const langFilesMap = new Map(); + const baseLangFilesMap = new Map(); + localFiles.forEach(file => { + if (file.length === 12 && file.endsWith('_base.json')) { + langs.push(file.substring(0, 2)); + baseLangFilesMap.set(file.substring(0, 2), true); + } + if (file !== 'en.json' && file.length === 7 && file.endsWith('.json')) { + langFiles.push(file.substring(0, 2)); + langFilesMap.set(file.substring(0, 2), true); + } + }); + + langs.forEach(lang => { + if (!langFilesMap.has(lang)) { + exitWithError('The \"' + lang + '_base.json\" base file does not have its corresponding language file.'); + } + }); + + langFiles.forEach(lang => { + if (!baseLangFilesMap.has(lang)) { + exitWithError('The \"' + lang + '.json\" file does not have its corresponding base file.'); + } + }); + + if (langs.length === 0) { + exitWithError('No languaje files to check.'); + } +} + +console.log('Checking the following languajes:'); +langs.forEach(lang => { + console.log(lang); +}); +console.log(''); + +///////////////////////////////////////////// +// Verifications +///////////////////////////////////////////// + +// The following arrays will contain the list of elements with problems. Each element of the +// arrays contains a "lang" property with the language identifier and a "elements" array with +// the path of the problematic elements. + +// Elements that are present in a base file but not in its corresponding translation file. +const baseFileOnly = []; +// Elements that are present in a translation file but not in its corresponding base file. +const translatedFileOnly = []; +// Elements that are present in the English file but not in the currently checked base translation file. +const enOnly = []; +// Elements that are present in the currently checked base translation file but not in the English file. +const translatedOnly = []; +// Elements that have different values in the currently checked base translation file and the English file. +const different = []; + +function addNewLangToArray(array, lang) { + array.push({ + lang: lang, + elements: [] + }); +} + +langs.forEach(lang => { + addNewLangToArray(baseFileOnly, lang); + addNewLangToArray(translatedFileOnly, lang); + addNewLangToArray(enOnly, lang); + addNewLangToArray(translatedOnly, lang); + addNewLangToArray(different, lang); + + // Try to load the translation file and its corresponding base file. + if (!fs.existsSync(lang + '.json')) { + exitWithError('Unable to find the ' + lang + '.json file.'); + } + let translationData = JSON.parse(fs.readFileSync(lang + '.json', 'utf8')); + + if (!fs.existsSync(lang + '_base.json')) { + exitWithError('Unable to find the ' + lang + '_base.json languaje file.'); + } + let baseTranslationData = JSON.parse(fs.readFileSync(lang + '_base.json', 'utf8')); + + // Check the differences in the elements of the translation file and its base file. + checkElement('', '', baseTranslationData, translationData, baseFileOnly, true); + checkElement('', '', translationData, baseTranslationData, translatedFileOnly, true); + + // Check the differences in the elements and content of the base translation file the English file. + if (checkFull) { + checkElement('', '', currentData, baseTranslationData, enOnly, false); + checkElement('', '', baseTranslationData, currentData, translatedOnly, true); + } +}); + + +// Check recursively if the elements and content of two language objects are the same. +// +// path: path of the currently checked element. As this function works with nested elements, +// the path is the name of all the parents, separated by a dot. +// key: name of the current element. +// fist: first element for the comparation. +// second: second element for the comparation. +// arrayForMissingElements: array in which the list of "fist" elements that are not in "second" +// will be added. +// ignoreDifferences: if false, each time the content of an element in "fist" is different to the +// same element in "second" that element will be added to the "different" array. +function checkElement(path, key, fist, second, arrayForMissingElements, ignoreDifferences) { + let pathPrefix = ''; + if (path.length > 0) { + pathPrefix = '.'; + } + + // This means that, at some point, the code found an element in the "first" branch that is + // not in the "second" branch. + if (second === undefined || second === null) { + arrayForMissingElements[arrayForMissingElements.length - 1].elements.push(path + pathPrefix + key); + return; + } + + if (typeof fist !== 'object') { + // If the current element is a string, compare the contents, but ony if ignoreDifferences + // is true. + if (!ignoreDifferences && fist != second) { + different[different.length - 1].elements.push(path + pathPrefix + key); + } + } else { + // If the current element is an object, check the childs. + Object.keys(fist).forEach(currentKey => { + checkElement(path + pathPrefix + key, currentKey, fist[currentKey], second[currentKey], arrayForMissingElements, ignoreDifferences); + }); + } +} + +///////////////////////////////////////////// +// Results processing +///////////////////////////////////////////// + +// Becomes true if any of the verifications failed. +let failedValidation = false; + +// If "failedValidation" is false, writes to the console the header of the error list +// and updates the value of "failedValidation" to true. +function updateErrorSumary() { + if (!failedValidation) { + failedValidation = true; + console.log('The following problems were found:', '\n'); + } +} + +// Checks all arrays for errors. This loop is for the languajes. +for (let i = 0; i < baseFileOnly.length; i++) { + + // This loop if for checking all the arrays. + [baseFileOnly, translatedFileOnly, enOnly, translatedOnly, different].forEach((array, idx) => { + // If the array has elements, it means that errors were found. + if (array[i].elements.length > 0) { + updateErrorSumary(); + + // Show the appropriate error text according to the current array. + if (idx === 0) { + console.log('The \"' + baseFileOnly[i].lang + '_base.json\" base file has elements that are not present in \"' + baseFileOnly[i].lang + '.json\":'); + } else if (idx === 1) { + console.log("\"" + translatedFileOnly[i].lang + '.json\" has elements that are not present in the \"' + baseFileOnly[i].lang + '_base.json\" base file:'); + } else if (idx === 2) { + console.log('The \"en.json\" file has elements that are not present in the \"' + enOnly[i].lang + '_base.json\" base file:'); + } else if (idx === 3) { + console.log('The \"' + translatedOnly[i].lang + '_base.json\" base file has elements that are not present in \"en.json\":'); + } else if (idx === 4) { + console.log('The \"' + different[i].lang + '_base.json\" base file has values that do not match the ones in \"en.json\":'); + } + // Show all the elements with errors. + array[i].elements.forEach(element => console.log(element)); + console.log(''); + } + }); +} + +// If no error was detected, show a success message on the console. If not, exit with an error code. +if (!failedValidation) { + console.log('The verification passed without problems.'); +} else { + process.exit(1); +} + +function exitWithError(errorMessage) { + console.log('Error: ' + errorMessage) + process.exit(1); +} \ No newline at end of file diff --git a/src/assets/i18n/es.json b/src/assets/i18n/es.json new file mode 100644 index 00000000..513328ce --- /dev/null +++ b/src/assets/i18n/es.json @@ -0,0 +1,112 @@ +{ + "general": { + "coinIdentifier": "SKY", + "address": "Dirección", + "coins": "Monedas", + "iniialHours": "Horas Iniciales", + "calculatedHours": "Horas Finales", + "currentHours": "Horas Actuales", + "hours": "Horas", + "pending": "pendiente", + "loadingMsg": "Cargando...", + "shortLoadingErrorMsg": "Error de carga", + "longLoadingErrorMsg": "Error al cargar los datos, inténtelo más tarde...", + "waitingData": "Esperando por los datos...", + "noData": "No hay datos para mostrar" + }, + "txBoxes": { + "transactionID": "ID de la transacción", + "inputs": "Entradas", + "outputs": "Salidas", + "date": "Fecha", + "balance": "Más info", + "fee": "Tarifa de transacción (en horas)", + "initialBalance": "Saldo inicial de monedas", + "finalBalance": "Saldo final de monedas", + "firstSeen": "Primera vez visto", + "loadAll": "Mostrar los {{total}} elementos", + "loading": "Cargando, por favor espere..." + }, + "blocks": { + "blocksTitle": "Bloques", + "statsTitle": "Estadísticas", + "blockHeight": "Altura", + "currentSupply": "Suministro Actual", + "totalSupply": "Suministro Total", + "currentCoinhourSupply": "Suministro Actual de Coinhours", + "totalCoinhourSupply": "Suministro Total de Coinhours", + "explorerApi": "API del Explorador", + "unconfirmedTransactions": "Transacciones Sin Confirmar", + "richList": "Top de Direcciones", + "time": "Fecha", + "blockNumber": "Número de bloque", + "blockNumberSmall": "#", + "transactions": "Transacciones", + "blockhash": "Hash" + }, + "blockDetails": { + "title": "Detalles del bloque", + "next": "Bloque siguiente", + "previous": "Bloque anterior", + "height": "Altura", + "timestamp": "Fecha", + "size": "Tamaño", + "hash": "Hash", + "parentHash": "Hash Anterior", + "totalAmount": "Cantidad Total", + "withoutParent": "Sin bloque anterior", + "doesNotExist": "El bloque \"{{number}}\" no existe" + }, + "addressDetail": { + "title": "Dirección", + "txsNumber": "# de Transacciones", + "totalReceived": "Total Recibido", + "totalSent": "Total Enviado", + "currentBalance": "Monedas Actuales", + "hoursBalance": "Horas Actuales", + "tools": "Herramientas", + "unspentOutputs": "Salidas no Gastadas", + "withoutTransactions": "Sin transacciones" + }, + "unspentOutputs": { + "title": "Salidas No Gastadas", + "address": "Dirección", + "outputsNumber": "# de salidas", + "totalCoins": "Monedas Totales", + "totalHours": "Horas Totales", + "origin": "Origen", + "date": "Fecha", + "withoutOutputs": "Sin salidas no gastadas" + }, + "transactionDetail": { + "title": "Transacción", + "status": "Estado", + "timestamp": "Fecha", + "size": "Tamaño", + "block": "Bloque", + "confirmed": "Confirmada", + "unconfirmed": "No confirmada", + "canNotFind": "No ha sido posible encontrar la transacción" + }, + "unconfirmedTx": { + "title": "Transacciones Sin Confirmar", + "quantity": "Cantidad", + "size": "Tamaño Total", + "newest": "Más reciente", + "oldest": "Más antigua", + "withoutTransactions": "Actualmente no hay transacciones sin confirmar" + }, + "richlist": { + "title": "Top de direcciones" + }, + "copy": { + "copied": "Copiado" + }, + "searchBar": { + "hint": "Dirección, hash/número de bloque o ID de transacción" + }, + "search": { + "title": "Buscar", + "unableToFind": "No se ha podido encontrar \"{{ term }}\"" + } +} \ No newline at end of file diff --git a/src/assets/i18n/es_base.json b/src/assets/i18n/es_base.json new file mode 100644 index 00000000..67ec44c3 --- /dev/null +++ b/src/assets/i18n/es_base.json @@ -0,0 +1,112 @@ +{ + "general": { + "coinIdentifier": "SKY", + "address": "Address", + "coins": "Coins", + "iniialHours": "Initial Hours", + "calculatedHours": "Final Hours", + "currentHours": "Current Hours", + "hours": "Hours", + "pending": "pending", + "loadingMsg": "Loading...", + "shortLoadingErrorMsg": "Loading error", + "longLoadingErrorMsg": "Error loading data, try again later...", + "waitingData": "Waiting for data...", + "noData": "No data to show" + }, + "txBoxes": { + "transactionID": "Transaction ID", + "inputs": "Inputs", + "outputs": "Outputs", + "date": "Date", + "balance": "More info", + "fee": "Transaction fee (in hours)", + "initialBalance": "Initial coins balance", + "finalBalance": "Final coins balance", + "firstSeen": "First seen at", + "loadAll": "Show all {{total}} elements", + "loading": "Loading, please wait..." + }, + "blocks": { + "blocksTitle": "Blocks", + "statsTitle": "Stats", + "blockHeight": "Block Height", + "currentSupply": "Current Supply", + "totalSupply": "Total Supply", + "currentCoinhourSupply": "Current Coinhour Supply", + "totalCoinhourSupply": "Total Coinhour Supply", + "explorerApi": "Explorer API", + "unconfirmedTransactions": "Unconfirmed Transactions", + "richList": "Rich List", + "time": "Time", + "blockNumber": "Block Number", + "blockNumberSmall": "Block #", + "transactions": "Transactions", + "blockhash": "Blockhash" + }, + "blockDetails": { + "title": "Block Details", + "next": "Next block", + "previous": "Previous block", + "height": "Height", + "timestamp": "Timestamp", + "size": "Size", + "hash": "Hash", + "parentHash": "Parent Hash", + "totalAmount": "Total Amount", + "withoutParent": "Without parent block", + "doesNotExist": "The block \"{{number}}\" does not exist" + }, + "addressDetail": { + "title": "Address", + "txsNumber": "# of Transactions", + "totalReceived": "Total Received", + "totalSent": "Total Sent", + "currentBalance": "Current Coins", + "hoursBalance": "Current Hours", + "tools": "Tools", + "unspentOutputs": "Unspent outputs", + "withoutTransactions": "Without transactions" + }, + "unspentOutputs": { + "title": "Unspent Outputs", + "address": "Address", + "outputsNumber": "# of outputs", + "totalCoins": "Total Coins", + "totalHours": "Total Hours", + "origin": "Origin", + "date": "Date", + "withoutOutputs": "Without outputs" + }, + "transactionDetail": { + "title": "Transaction", + "status": "Status", + "timestamp": "Timestamp", + "size": "Size", + "block": "Block", + "confirmed": "Confirmed", + "unconfirmed": "Unconfirmed", + "canNotFind": "Unable to find the transaction" + }, + "unconfirmedTx": { + "title": "Unconfirmed Transactions", + "quantity": "Quantity", + "size": "Total Size", + "newest": "Newest", + "oldest": "Oldest", + "withoutTransactions": "Currently there are no unconfirmed transactions" + }, + "richlist": { + "title": "Rich List" + }, + "copy": { + "copied": "Copied" + }, + "searchBar": { + "hint": "Address, block hash or number, or transaction ID" + }, + "search": { + "title": "Search", + "unableToFind": "Unable to find \"{{ term }}\"" + } +} \ No newline at end of file diff --git a/src/assets/img/arrow.png b/src/assets/img/arrow.png new file mode 100644 index 0000000000000000000000000000000000000000..405b59d441307ff1bef40f9ae2e4acea36f6dfbd GIT binary patch literal 190 zcmeAS@N?(olHy`uVBq!ia0vp^93afW1|*O0@9PFqk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5X5}1{rUgjp4skzQRT}#XN6j}j+qyp{A1k68JxG} zb)`bGnb_IQjztEsrVf7?JwGvr@FeL3Je5|s+O%W=t5#dm`xJ$JtVgad%rQuC`Nn$T lpj?1(c|vFdF9VAN!;$|AhqM-+s|MP|;OXk;vd$@?2>=R)LHqy! literal 0 HcmV?d00001 diff --git a/src/assets/img/lang/en.png b/src/assets/img/lang/en.png new file mode 100644 index 0000000000000000000000000000000000000000..bb03eaaae44e37b3f26642e03a38132a33e281c3 GIT binary patch literal 3229 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 T%&DGb)_)Q%Cxl(e+`8vCVfDh< literal 0 HcmV?d00001 From 806ff7ef56e918184f2fd449eba1182ab25cfbf1 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Thu, 25 Apr 2019 20:21:53 -0400 Subject: [PATCH 12/15] Fix the e2e tests --- e2e/search/search.po.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/e2e/search/search.po.ts b/e2e/search/search.po.ts index d4c38b47..3c8cef05 100644 --- a/e2e/search/search.po.ts +++ b/e2e/search/search.po.ts @@ -2,7 +2,7 @@ import { browser, by, element, protractor } from 'protractor'; export class SearchPage { search(text: string) { - return element(by.css('.-search-bar-container input')).sendKeys( + return element(by.css('.search-bar-container input')).sendKeys( text, protractor.Key.ENTER ); From 8462e620a534e5d90770ce1242b192e7d3bfc8a6 Mon Sep 17 00:00:00 2001 From: Senyoret1 <34079003+Senyoret1@users.noreply.github.com> Date: Sat, 11 May 2019 21:17:04 -0400 Subject: [PATCH 13/15] Improvements for the code that manage the translations --- src/app/app.component.ts | 12 ++----- .../address-detail.component.html | 14 ++++---- .../address-detail.component.ts | 24 ++++--------- .../block-details.component.html | 14 ++++---- .../block-details/block-details.component.ts | 34 ++++++------------- .../pages/blocks/blocks.component.html | 12 +++---- .../pages/blocks/blocks.component.ts | 20 ++++------- .../pages/richlist/richlist.component.html | 2 +- .../pages/richlist/richlist.component.ts | 6 +--- .../transaction-detail.component.html | 8 ++--- .../transaction-detail.component.ts | 22 ++++-------- .../unconfirmed-transactions.component.html | 10 +++--- .../unconfirmed-transactions.component.ts | 18 +++------- .../unspent-outputs.component.html | 10 +++--- .../unspent-outputs.component.ts | 20 ++++------- 15 files changed, 80 insertions(+), 146 deletions(-) diff --git a/src/app/app.component.ts b/src/app/app.component.ts index cc3350e6..0bcbf5b1 100644 --- a/src/app/app.component.ts +++ b/src/app/app.component.ts @@ -1,7 +1,7 @@ import { Component } from '@angular/core'; -import { Router, NavigationStart, NavigationEnd, NavigationCancel, NavigationError, Event as RouterEvent } from '@angular/router'; -import { TranslateService } from '@ngx-translate/core'; +import { Router, NavigationEnd, Event as RouterEvent } from '@angular/router'; import { HeaderConfig, FooterConfig } from 'app/app.config'; +import { LanguageService } from 'app/services/language/language.service'; @Component({ selector: 'app-root', @@ -12,13 +12,7 @@ export class AppComponent { headerConfig = HeaderConfig; footerConfig = FooterConfig; - constructor(private router: Router, translate: TranslateService) { - - // Fallback. - translate.setDefaultLang('en'); - // Lang to use. - translate.use('en'); - + constructor(router: Router, languageService: LanguageService) { router.events.subscribe((event: RouterEvent) => { if (event instanceof NavigationEnd) { window.scrollTo(0, 0); diff --git a/src/app/components/pages/address-detail/address-detail.component.html b/src/app/components/pages/address-detail/address-detail.component.html index 5ef06c9c..e6b2cd3b 100644 --- a/src/app/components/pages/address-detail/address-detail.component.html +++ b/src/app/components/pages/address-detail/address-detail.component.html @@ -4,34 +4,34 @@

{{ 'addressDetail.title' | translate }}

- {{ 'general.address' | translate }}
{{ address ? address : loadingMsg }} + {{ 'general.address' | translate }}
{{ address ? address : (loadingMsg | translate) }}
-
{{ 'addressDetail.txsNumber' | translate }}
{{ transactions ? transactions.length : loadingMsg }}
+
{{ 'addressDetail.txsNumber' | translate }}
{{ transactions ? transactions.length : (loadingMsg | translate) }}
{{ 'addressDetail.totalReceived' | translate }}
- {{ transactions && totalReceived ? ((totalReceived.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} + {{ transactions && totalReceived ? ((totalReceived.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : (loadingMsg | translate) }}  ({{ (pendingBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.totalSent' | translate }}
- {{ transactions && totalSent ? ((totalSent.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} + {{ transactions && totalSent ? ((totalSent.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : (loadingMsg | translate) }}  ({{ (pendingBalance.negated().decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.currentBalance' | translate }}
- {{ transactions && balance ? ((balance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : loadingMsg }} + {{ transactions && balance ? ((balance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate)) : (loadingMsg | translate) }}  ({{ (pendingBalance.isGreaterThan(0) ? '+' : '') + (pendingBalance.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.pending' | translate) }})
{{ 'addressDetail.hoursBalance' | translate }}
- {{ transactions && hoursBalance ? ((hoursBalance.decimalPlaces(0).toString() | number:'1.0-0')) : loadingMsg }} + {{ transactions && hoursBalance ? ((hoursBalance.decimalPlaces(0).toString() | number:'1.0-0')) : (loadingMsg | translate) }}  ({{ (pendingHoursBalance.isGreaterThan(0) ? '+' : '') + (pendingHoursBalance.decimalPlaces(0).toString() | number:'1.0-0') + ' ' + ('general.pending' | translate) }})
@@ -42,7 +42,7 @@

{{ 'addressDetail.title' | translate }}

- + diff --git a/src/app/components/pages/address-detail/address-detail.component.ts b/src/app/components/pages/address-detail/address-detail.component.ts index c67b04cc..2ee17c4e 100644 --- a/src/app/components/pages/address-detail/address-detail.component.ts +++ b/src/app/components/pages/address-detail/address-detail.component.ts @@ -4,7 +4,6 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { ApiService } from '../../../services/api/api.service'; import { ExplorerService } from '../../../services/explorer/explorer.service'; -import { TranslateService } from '@ngx-translate/core'; import { BigNumber } from 'bignumber.js'; import { Transaction } from 'app/app.datatypes'; @@ -25,7 +24,7 @@ export class AddressDetailComponent implements OnInit { pageTransactions: any[]; pageIndex = 0; pageSize = 25; - loadingMsg = ''; + loadingMsg = 'general.loadingMsg'; longErrorMsg: string; get pageCount() { @@ -35,13 +34,8 @@ export class AddressDetailComponent implements OnInit { constructor( private api: ApiService, private explorer: ExplorerService, - private route: ActivatedRoute, - private translate: TranslateService - ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingMsg = res; - }); - } + private route: ActivatedRoute + ) { } ngOnInit() { this.route.params.pipe(switchMap((params: Params) => { @@ -81,15 +75,11 @@ export class AddressDetailComponent implements OnInit { }, error => { if (error.status >= 400 && error.status < 500) { - this.translate.get(['general.noData', 'addressDetail.withoutTransactions']).subscribe((res: string[]) => { - this.loadingMsg = res['general.noData']; - this.longErrorMsg = res['addressDetail.withoutTransactions']; - }); + this.loadingMsg = 'general.noData'; + this.longErrorMsg = 'addressDetail.withoutTransactions'; } else { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + this.loadingMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; } } ); diff --git a/src/app/components/pages/block-details/block-details.component.html b/src/app/components/pages/block-details/block-details.component.html index 34e7d837..571eaed4 100644 --- a/src/app/components/pages/block-details/block-details.component.html +++ b/src/app/components/pages/block-details/block-details.component.html @@ -14,16 +14,16 @@

{{ 'blockDetails.title' | translate }}

-
{{ 'blockDetails.height' | translate }}
{{ block ? block.id : loadingMsg }}
-
{{ 'blockDetails.timestamp' | translate }}
{{ loadingMsg }}
-
{{ 'blockDetails.size' | translate }}
{{ block ? (block.size | number) + ' bytes' : loadingMsg }}
-
{{ 'blockDetails.hash' | translate }}
{{ block.hash }} {{ loadingMsg }}
-
{{ 'blockDetails.parentHash' | translate }}
{{ block.parent_hash }} {{ 'blockDetails.withoutParent' | translate }} {{ loadingMsg }}
-
{{ 'blockDetails.totalAmount' | translate }}
{{ block ? ((block.transactions | transactionsValue) | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) : loadingMsg }}
+
{{ 'blockDetails.height' | translate }}
{{ block ? block.id : (loadingMsg | translate) }}
+
{{ 'blockDetails.timestamp' | translate }}
{{ loadingMsg | translate }}
+
{{ 'blockDetails.size' | translate }}
{{ block ? (block.size | number) + ' bytes' : (loadingMsg | translate) }}
+
{{ 'blockDetails.hash' | translate }}
{{ block.hash }} {{ loadingMsg | translate }}
+
{{ 'blockDetails.parentHash' | translate }}
{{ block.parent_hash }} {{ 'blockDetails.withoutParent' | translate }} {{ loadingMsg | translate }}
+
{{ 'blockDetails.totalAmount' | translate }}
{{ block ? ((block.transactions | transactionsValue) | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) : (loadingMsg | translate) }}
- +
diff --git a/src/app/components/pages/block-details/block-details.component.ts b/src/app/components/pages/block-details/block-details.component.ts index e77986aa..c3c4d922 100644 --- a/src/app/components/pages/block-details/block-details.component.ts +++ b/src/app/components/pages/block-details/block-details.component.ts @@ -3,7 +3,6 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { ExplorerService } from '../../../services/explorer/explorer.service'; import { Block } from '../../../app.datatypes'; -import { TranslateService } from '@ngx-translate/core'; import { ApiService } from 'app/services/api/api.service'; @Component({ @@ -13,50 +12,39 @@ import { ApiService } from 'app/services/api/api.service'; }) export class BlockDetailsComponent implements OnInit { block: Block; - loadingMsg = ''; + loadingMsg = 'general.loadingMsg'; longErrorMsg: string; blockCount: number; + blockID = ''; constructor( private explorer: ExplorerService, private route: ActivatedRoute, - private translate: TranslateService, private api: ApiService, - ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingMsg = res; - }); - } + ) { } ngOnInit() { this.api.getBlockchainMetadata().pipe(first()).subscribe(blockchain => this.blockCount = blockchain.blocks); - let blockID = ''; this.route.params.pipe(filter(params => +params['id'] !== null), switchMap((params: Params) => { - blockID = params['id']; - return this.explorer.getBlock(+blockID); + this.blockID = params['id']; + return this.explorer.getBlock(+this.blockID); })).subscribe((block: Block) => { if (block != null) { this.block = block; } else { - this.translate.get(['general.noData', 'blockDetails.doesNotExist'], {number: blockID}).subscribe((res: string[]) => { - this.loadingMsg = res['general.noData']; - this.longErrorMsg = res['blockDetails.doesNotExist']; - }); + this.loadingMsg = 'general.noData'; + this.longErrorMsg = 'blockDetails.doesNotExist'; } }, error => { if (error.status >= 400 && error.status < 500) { - this.translate.get(['general.noData', 'blockDetails.doesNotExist'], {number: blockID}).subscribe((res: string[]) => { - this.loadingMsg = res['general.noData']; - this.longErrorMsg = res['blockDetails.doesNotExist']; - }); + this.loadingMsg = 'general.noData'; + this.longErrorMsg = 'blockDetails.doesNotExist'; } else { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + this.loadingMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; } }); diff --git a/src/app/components/pages/blocks/blocks.component.html b/src/app/components/pages/blocks/blocks.component.html index 32f79a88..b0ac471c 100644 --- a/src/app/components/pages/blocks/blocks.component.html +++ b/src/app/components/pages/blocks/blocks.component.html @@ -4,11 +4,11 @@

{{ 'blocks.blocksTitle' | translate }}

{{ 'blocks.statsTitle' | translate }}

-

{{ 'blocks.blockHeight' | translate }}:
{{ blockCount > 0 ? (blockCount | number : '1.0-0') : loadingMetadataMsg }}

-

{{ 'blocks.currentSupply' | translate }}:
{{ currentSupply ? (currentSupply | number : '1.0-0') : loadingCoinSupplyMsg }}

-

{{ 'blocks.totalSupply' | translate }}:
{{ totalSupply ? (totalSupply | number : '1.0-0') : loadingCoinSupplyMsg }}

-

{{ 'blocks.currentCoinhourSupply' | translate }}:
{{ currentCoinhourSupply ? (currentCoinhourSupply | number : '1.0-0') : loadingCoinSupplyMsg }}

-

{{ 'blocks.totalCoinhourSupply' | translate }}:
{{ totalCoinhourSupply ? (totalCoinhourSupply | number : '1.0-0') : loadingCoinSupplyMsg }}

+

{{ 'blocks.blockHeight' | translate }}:
{{ blockCount > 0 ? (blockCount | number : '1.0-0') : (loadingMetadataMsg | translate) }}

+

{{ 'blocks.currentSupply' | translate }}:
{{ currentSupply ? (currentSupply | number : '1.0-0') : (loadingCoinSupplyMsg | translate) }}

+

{{ 'blocks.totalSupply' | translate }}:
{{ totalSupply ? (totalSupply | number : '1.0-0') : (loadingCoinSupplyMsg | translate) }}

+

{{ 'blocks.currentCoinhourSupply' | translate }}:
{{ currentCoinhourSupply ? (currentCoinhourSupply | number : '1.0-0') : (loadingCoinSupplyMsg | translate) }}

+

{{ 'blocks.totalCoinhourSupply' | translate }}:
{{ totalCoinhourSupply ? (totalCoinhourSupply | number : '1.0-0') : (loadingCoinSupplyMsg | translate) }}

{{ 'blocks.explorerApi' | translate }}

{{ 'blocks.unconfirmedTransactions' | translate }}

{{ 'blocks.richList' | translate }}

@@ -27,7 +27,7 @@

{{ 'blocks.blocksTitle' | translate }}

- +
diff --git a/src/app/components/pages/blocks/blocks.component.ts b/src/app/components/pages/blocks/blocks.component.ts index 31cc45d8..7c836c26 100644 --- a/src/app/components/pages/blocks/blocks.component.ts +++ b/src/app/components/pages/blocks/blocks.component.ts @@ -4,7 +4,6 @@ import { ActivatedRoute } from '@angular/router'; import { ApiService } from '../../../services/api/api.service'; import { Block } from '../../../app.datatypes'; import { ExplorerService } from '../../../services/explorer/explorer.service'; -import { TranslateService } from '@ngx-translate/core'; @Component({ templateUrl: './blocks.component.html', @@ -34,11 +33,8 @@ export class BlocksComponent implements OnInit { private api: ApiService, private explorer: ExplorerService, private route: ActivatedRoute, - private translate: TranslateService ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingCoinSupplyMsg = this.loadingMetadataMsg = res; - }); + this.loadingCoinSupplyMsg = this.loadingMetadataMsg = 'general.loadingMsg'; } ngOnInit() { @@ -49,11 +45,9 @@ export class BlocksComponent implements OnInit { const pageIndex = parseInt(params.get('page'), 10) - 1; this.navigate(pageIndex); }); - }, error => { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMetadataMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + }, () => { + this.loadingMetadataMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; }); this.api.getCoinSupply().pipe(first()).subscribe(response => { @@ -61,10 +55,8 @@ export class BlocksComponent implements OnInit { this.totalSupply = response.total_supply; this.currentCoinhourSupply = response.current_coinhour_supply; this.totalCoinhourSupply = response.total_coinhour_supply; - }, error => { - this.translate.get('general.shortLoadingErrorMsg').subscribe((res: string) => { - this.loadingCoinSupplyMsg = res; - }); + }, () => { + this.loadingCoinSupplyMsg = 'general.shortLoadingErrorMsg'; }); } diff --git a/src/app/components/pages/richlist/richlist.component.html b/src/app/components/pages/richlist/richlist.component.html index 55f3b8e8..89a0e51c 100644 --- a/src/app/components/pages/richlist/richlist.component.html +++ b/src/app/components/pages/richlist/richlist.component.html @@ -9,7 +9,7 @@

{{ 'richlist.title' | translate }}

- +
diff --git a/src/app/components/pages/richlist/richlist.component.ts b/src/app/components/pages/richlist/richlist.component.ts index f6a42f33..009be40c 100644 --- a/src/app/components/pages/richlist/richlist.component.ts +++ b/src/app/components/pages/richlist/richlist.component.ts @@ -2,7 +2,6 @@ import { first } from 'rxjs/operators'; import { Component, OnInit } from '@angular/core'; import { ApiService } from '../../../services/api/api.service'; import { RichlistEntry } from '../../../app.datatypes'; -import { TranslateService } from '@ngx-translate/core'; @Component({ templateUrl: './richlist.component.html', @@ -15,16 +14,13 @@ export class RichlistComponent implements OnInit { constructor( private api: ApiService, - private translate: TranslateService ) {} ngOnInit() { this.api.getRichlist().pipe(first()).subscribe(entries => this.entries = entries, () => { - this.translate.get('general.longLoadingErrorMsg').subscribe((res: string) => { - this.longErrorMsg = res; - }); + this.longErrorMsg = 'general.longLoadingErrorMsg'; }); } diff --git a/src/app/components/pages/transaction-detail/transaction-detail.component.html b/src/app/components/pages/transaction-detail/transaction-detail.component.html index 578f1918..6cf5ba79 100644 --- a/src/app/components/pages/transaction-detail/transaction-detail.component.html +++ b/src/app/components/pages/transaction-detail/transaction-detail.component.html @@ -1,12 +1,12 @@

{{ 'transactionDetail.title' | translate }}

-
{{ 'transactionDetail.status' | translate }}
{{ transaction ? (transaction.status ? ('transactionDetail.confirmed' | translate) : ('transactionDetail.unconfirmed' | translate)) : loadingMsg }}
-
{{ 'transactionDetail.size' | translate }}
{{ transaction ? (transaction.length | number) + ' bytes' : loadingMsg }}
-
+
{{ 'transactionDetail.status' | translate }}
{{ transaction ? (transaction.status ? ('transactionDetail.confirmed' | translate) : ('transactionDetail.unconfirmed' | translate)) : (loadingMsg | translate) }}
+
{{ 'transactionDetail.size' | translate }}
{{ transaction ? (transaction.length | number) + ' bytes' : (loadingMsg | translate) }}
+
{{ 'transactionDetail.block' | translate }}
{{ transaction.block }} {{ loadingMsg | translate }}
- + \ No newline at end of file diff --git a/src/app/components/pages/transaction-detail/transaction-detail.component.ts b/src/app/components/pages/transaction-detail/transaction-detail.component.ts index 4046178d..627742b4 100644 --- a/src/app/components/pages/transaction-detail/transaction-detail.component.ts +++ b/src/app/components/pages/transaction-detail/transaction-detail.component.ts @@ -3,7 +3,6 @@ import { Component, OnInit } from '@angular/core'; import { ActivatedRoute, Params } from '@angular/router'; import { Transaction } from '../../../app.datatypes'; import { ExplorerService } from '../../../services/explorer/explorer.service'; -import { TranslateService } from '@ngx-translate/core'; @Component({ selector: 'app-transaction-detail', @@ -13,18 +12,13 @@ import { TranslateService } from '@ngx-translate/core'; export class TransactionDetailComponent implements OnInit { transaction: Transaction; - loadingMsg = ''; + loadingMsg = 'general.loadingMsg'; longErrorMsg: string; constructor( private explorer: ExplorerService, private route: ActivatedRoute, - private translate: TranslateService - ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingMsg = res; - }); - } + ) { } ngOnInit() { this.route.params.pipe(mergeMap((params: Params) => this.explorer.getTransaction(params['txid']))) @@ -32,15 +26,11 @@ export class TransactionDetailComponent implements OnInit { transaction => this.transaction = transaction, error => { if (error.status >= 400 && error.status < 500) { - this.translate.get(['general.noData', 'transactionDetail.canNotFind']).subscribe((res: string[]) => { - this.loadingMsg = res['general.noData']; - this.longErrorMsg = res['transactionDetail.canNotFind']; - }); + this.loadingMsg = 'general.noData'; + this.longErrorMsg = 'transactionDetail.canNotFind'; } else { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + this.loadingMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; } } ); diff --git a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.html b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.html index fdf11458..7866921e 100644 --- a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.html +++ b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.html @@ -1,13 +1,13 @@

{{ 'unconfirmedTx.title' | translate }}

-
{{ 'unconfirmedTx.quantity' | translate }}
{{ transactions ? (transactions.length > 0 ? transactions.length : ('unconfirmedTx.withoutTransactions' | translate)) : loadingMsg }}
-
{{ 'unconfirmedTx.size' | translate }}
{{ transactions ? (transactions.length > 0 ? (totalSize | number) + ' bytes' : ('unconfirmedTx.withoutTransactions' | translate)) : loadingMsg }}
-
{{ 'unconfirmedTx.newest' | translate }}
{{ 'unconfirmedTx.withoutTransactions' | translate }} {{ loadingMsg }}
-
{{ 'unconfirmedTx.oldest' | translate }}
{{ 'unconfirmedTx.withoutTransactions' | translate }} {{ loadingMsg }}
+
{{ 'unconfirmedTx.quantity' | translate }}
{{ transactions ? (transactions.length > 0 ? transactions.length : ('unconfirmedTx.withoutTransactions' | translate)) : (loadingMsg | translate) }}
+
{{ 'unconfirmedTx.size' | translate }}
{{ transactions ? (transactions.length > 0 ? (totalSize | number) + ' bytes' : ('unconfirmedTx.withoutTransactions' | translate)) : (loadingMsg | translate) }}
+
{{ 'unconfirmedTx.newest' | translate }}
{{ 'unconfirmedTx.withoutTransactions' | translate }} {{ loadingMsg | translate }}
+
{{ 'unconfirmedTx.oldest' | translate }}
{{ 'unconfirmedTx.withoutTransactions' | translate }} {{ loadingMsg | translate }}
- + \ No newline at end of file diff --git a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts index b0d3f62b..b90287c4 100644 --- a/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts +++ b/src/app/components/pages/unconfirmed-transactions/unconfirmed-transactions.component.ts @@ -1,7 +1,6 @@ import { Component, OnInit } from '@angular/core'; import { ExplorerService } from '../../../services/explorer/explorer.service'; import { Transaction } from '../../../app.datatypes'; -import { TranslateService } from '@ngx-translate/core'; @Component({ selector: 'app-unconfirmed-transactions', @@ -14,17 +13,12 @@ export class UnconfirmedTransactionsComponent implements OnInit { leastRecent: number; mostRecent: number; totalSize: number; - loadingMsg = ''; + loadingMsg = 'general.loadingMsg'; longErrorMsg: string; constructor( private explorer: ExplorerService, - private translate: TranslateService - ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingMsg = res; - }); - } + ) { } ngOnInit() { this.explorer.getUnconfirmedTransactions().subscribe(transactions => { @@ -35,11 +29,9 @@ export class UnconfirmedTransactionsComponent implements OnInit { this.leastRecent = orderedList[orderedList.length - 1].timestamp; this.totalSize = orderedList.map(tx => tx.length).reduce((sum, current) => sum + current); } - }, error => { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + }, () => { + this.loadingMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; }); } } diff --git a/src/app/components/pages/unspent-outputs/unspent-outputs.component.html b/src/app/components/pages/unspent-outputs/unspent-outputs.component.html index a4baddc2..50dd1bdf 100644 --- a/src/app/components/pages/unspent-outputs/unspent-outputs.component.html +++ b/src/app/components/pages/unspent-outputs/unspent-outputs.component.html @@ -1,14 +1,14 @@

{{ 'unspentOutputs.title' | translate }}

-
{{ 'unspentOutputs.address' | translate }}
{{ address }} {{ loadingMsg }}
-
{{ 'unspentOutputs.outputsNumber' | translate }}
{{ outputs ? outputs.head_outputs.length : loadingMsg }}
-
{{ 'unspentOutputs.totalCoins' | translate }}
{{ coins != null ? (coins.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) : loadingMsg }}
-
{{ 'unspentOutputs.totalHours' | translate }}
{{ hours != null ? (hours.decimalPlaces(0).toString() | number:'1.0-0') : loadingMsg }}
+
{{ 'unspentOutputs.address' | translate }}
{{ address }} {{ loadingMsg | translate }}
+
{{ 'unspentOutputs.outputsNumber' | translate }}
{{ outputs ? outputs.head_outputs.length : (loadingMsg | translate) }}
+
{{ 'unspentOutputs.totalCoins' | translate }}
{{ coins != null ? (coins.decimalPlaces(6).toString() | number:'1.0-6') + ' ' + ('general.coinIdentifier' | translate) : (loadingMsg | translate) }}
+
{{ 'unspentOutputs.totalHours' | translate }}
{{ hours != null ? (hours.decimalPlaces(0).toString() | number:'1.0-0') : (loadingMsg | translate) }}
- +
diff --git a/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts b/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts index b367b705..06baa00e 100644 --- a/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts +++ b/src/app/components/pages/unspent-outputs/unspent-outputs.component.ts @@ -16,18 +16,14 @@ export class UnspentOutputsComponent implements OnInit { outputs: GetCurrentBalanceResponse; coins: BigNumber = null; hours: BigNumber = null; - loadingMsg = ''; + loadingMsg = 'general.loadingMsg'; longErrorMsg: string; constructor( private api: ApiService, private route: ActivatedRoute, private translate: TranslateService - ) { - translate.get('general.loadingMsg').subscribe((res: string) => { - this.loadingMsg = res; - }); - } + ) { } ngOnInit() { this.route.params.pipe(switchMap((params: Params) => { @@ -43,15 +39,11 @@ export class UnspentOutputsComponent implements OnInit { response.head_outputs.map(o => this.hours = this.hours.plus(o.calculated_hours)); }, error => { if (error.status >= 400 && error.status < 500) { - this.translate.get(['general.noData', 'unspentOutputs.withoutOutputs']).subscribe((res: string[]) => { - this.loadingMsg = res['general.noData']; - this.longErrorMsg = res['unspentOutputs.withoutOutputs']; - }); + this.loadingMsg = 'general.noData'; + this.longErrorMsg = 'unspentOutputs.withoutOutputs'; } else { - this.translate.get(['general.shortLoadingErrorMsg', 'general.longLoadingErrorMsg']).subscribe((res: string[]) => { - this.loadingMsg = res['general.shortLoadingErrorMsg']; - this.longErrorMsg = res['general.longLoadingErrorMsg']; - }); + this.loadingMsg = 'general.shortLoadingErrorMsg'; + this.longErrorMsg = 'general.longLoadingErrorMsg'; } }); } From c8b9cdd5b3087e9d200bd311d929d318aebc0bda Mon Sep 17 00:00:00 2001 From: gz-c Date: Tue, 14 May 2019 11:18:03 +0800 Subject: [PATCH 14/15] Add simplified chinese translation --- src/assets/i18n/zh.json | 112 +++++++++++++++++++++++++++++++++++ src/assets/i18n/zh_base.json | 112 +++++++++++++++++++++++++++++++++++ 2 files changed, 224 insertions(+) create mode 100644 src/assets/i18n/zh.json create mode 100644 src/assets/i18n/zh_base.json diff --git a/src/assets/i18n/zh.json b/src/assets/i18n/zh.json new file mode 100644 index 00000000..63112d43 --- /dev/null +++ b/src/assets/i18n/zh.json @@ -0,0 +1,112 @@ +{ + "general": { + "coinIdentifier": "SKY", + "address": "地址", + "coins": "币", + "iniialHours": "原始币时", + "calculatedHours": "最终币时", + "currentHours": "当前币时", + "hours": "币时", + "pending": "待处理", + "loadingMsg": "加载...", + "shortLoadingErrorMsg": "加载错误", +"longLoadingErrorMsg": "加载数据时出错,请稍后重试...", + "waitingData": "等待数据...", + "noData": "没有可显示的数据" + }, + "txBoxes": { + "transactionID": "交易ID", + "inputs": "输入", + "outputs": "输出", + "date": "日期", + "balance": "更多信息", + "fee": "交易费用 (以币时计算)", + "initialBalance": "原始币时余额", + "finalBalance": "最终币余额", + "firstSeen": "首先看到", + "loadAll": "展示 {{total}} 元素", + "loading": "加载中, 请稍后..." + }, + "blocks": { + "blocksTitle": "区块", + "statsTitle": "统计", + "blockHeight": "区块高度", + "currentSupply": "目前供应量", + "totalSupply": "总供应量", + "currentCoinhourSupply": "目前币时供应", + "totalCoinhourSupply": "总币时供应", + "explorerApi": "Explorer API", + "unconfirmedTransactions": "未确认交易", + "richList": "富豪榜", + "time": "时间", + "blockNumber": "区块数量", + "blockNumberSmall": "区块 #", + "transactions": "交易", + "blockhash": "区块哈希" + }, + "blockDetails": { + "title": "区块详情", + "next": "下一个区块", + "previous": "上一个区块", + "height": "高度", + "timestamp": "时间戳", + "size": "大小", + "hash": "哈希", + "parentHash": "初始哈希", + "totalAmount": "总数值", + "withoutParent": "无初始哈希", + "doesNotExist": "区块 \"{{number}}\" 不存在" + }, + "addressDetail": { + "title": "地址", + "txsNumber": "# 的交易", + "totalReceived": "总共收取", + "totalSent": "总共发出", + "currentBalance": "当前币额", + "hoursBalance": "当前币时数", + "tools": "工具", + "unspentOutputs": "未花费输出", + "withoutTransactions": "没有交易" + }, + "unspentOutputs": { + "title": "未花费输出", + "address": "地址", + "outputsNumber": "# 的输出", + "totalCoins": "总币额", + "totalHours": "总币时", + "origin": "初始值", + "date": "日期", + "withoutOutputs": "没有输出" + }, + "transactionDetail": { + "title": "交易", + "status": "状态", + "timestamp": "时间戳", + "size": "大小", + "block": "区块", + "confirmed": "已确认", + "unconfirmed": "未确认", + "canNotFind": "没有找到交易" + }, + "unconfirmedTx": { + "title": "未确认交易", + "quantity": "数量", + "size": "总大小", + "newest": "最新的", + "oldest": "最旧的", + "withoutTransactions": "目前没有未确认交易" + }, + "richlist": { + "title": "富豪榜" + }, + "copy": { + "copied": "已复制" + }, + "searchBar": { + "hint": "地址,区块哈希或数量,或交易ID" + }, + "search": { + "title": "搜索", + "unableToFind": "未能找到 \"{{ term }}\"" + } +} diff --git a/src/assets/i18n/zh_base.json b/src/assets/i18n/zh_base.json new file mode 100644 index 00000000..67ec44c3 --- /dev/null +++ b/src/assets/i18n/zh_base.json @@ -0,0 +1,112 @@ +{ + "general": { + "coinIdentifier": "SKY", + "address": "Address", + "coins": "Coins", + "iniialHours": "Initial Hours", + "calculatedHours": "Final Hours", + "currentHours": "Current Hours", + "hours": "Hours", + "pending": "pending", + "loadingMsg": "Loading...", + "shortLoadingErrorMsg": "Loading error", + "longLoadingErrorMsg": "Error loading data, try again later...", + "waitingData": "Waiting for data...", + "noData": "No data to show" + }, + "txBoxes": { + "transactionID": "Transaction ID", + "inputs": "Inputs", + "outputs": "Outputs", + "date": "Date", + "balance": "More info", + "fee": "Transaction fee (in hours)", + "initialBalance": "Initial coins balance", + "finalBalance": "Final coins balance", + "firstSeen": "First seen at", + "loadAll": "Show all {{total}} elements", + "loading": "Loading, please wait..." + }, + "blocks": { + "blocksTitle": "Blocks", + "statsTitle": "Stats", + "blockHeight": "Block Height", + "currentSupply": "Current Supply", + "totalSupply": "Total Supply", + "currentCoinhourSupply": "Current Coinhour Supply", + "totalCoinhourSupply": "Total Coinhour Supply", + "explorerApi": "Explorer API", + "unconfirmedTransactions": "Unconfirmed Transactions", + "richList": "Rich List", + "time": "Time", + "blockNumber": "Block Number", + "blockNumberSmall": "Block #", + "transactions": "Transactions", + "blockhash": "Blockhash" + }, + "blockDetails": { + "title": "Block Details", + "next": "Next block", + "previous": "Previous block", + "height": "Height", + "timestamp": "Timestamp", + "size": "Size", + "hash": "Hash", + "parentHash": "Parent Hash", + "totalAmount": "Total Amount", + "withoutParent": "Without parent block", + "doesNotExist": "The block \"{{number}}\" does not exist" + }, + "addressDetail": { + "title": "Address", + "txsNumber": "# of Transactions", + "totalReceived": "Total Received", + "totalSent": "Total Sent", + "currentBalance": "Current Coins", + "hoursBalance": "Current Hours", + "tools": "Tools", + "unspentOutputs": "Unspent outputs", + "withoutTransactions": "Without transactions" + }, + "unspentOutputs": { + "title": "Unspent Outputs", + "address": "Address", + "outputsNumber": "# of outputs", + "totalCoins": "Total Coins", + "totalHours": "Total Hours", + "origin": "Origin", + "date": "Date", + "withoutOutputs": "Without outputs" + }, + "transactionDetail": { + "title": "Transaction", + "status": "Status", + "timestamp": "Timestamp", + "size": "Size", + "block": "Block", + "confirmed": "Confirmed", + "unconfirmed": "Unconfirmed", + "canNotFind": "Unable to find the transaction" + }, + "unconfirmedTx": { + "title": "Unconfirmed Transactions", + "quantity": "Quantity", + "size": "Total Size", + "newest": "Newest", + "oldest": "Oldest", + "withoutTransactions": "Currently there are no unconfirmed transactions" + }, + "richlist": { + "title": "Rich List" + }, + "copy": { + "copied": "Copied" + }, + "searchBar": { + "hint": "Address, block hash or number, or transaction ID" + }, + "search": { + "title": "Search", + "unableToFind": "Unable to find \"{{ term }}\"" + } +} \ No newline at end of file From 40d36dd6db231572f3a95a5e022b6782d2f17c7e Mon Sep 17 00:00:00 2001 From: gz-c Date: Tue, 14 May 2019 11:20:33 +0800 Subject: [PATCH 15/15] Add chinese to language menu --- src/app/app.config.ts | 5 +++++ src/assets/i18n/check.js | 22 +++++++++++----------- src/assets/img/lang/zh.png | Bin 0 -> 1059 bytes 3 files changed, 16 insertions(+), 11 deletions(-) create mode 100644 src/assets/img/lang/zh.png diff --git a/src/app/app.config.ts b/src/app/app.config.ts index ffe993dd..00f14907 100644 --- a/src/app/app.config.ts +++ b/src/app/app.config.ts @@ -45,6 +45,11 @@ export const languageConfig = { code: 'es', name: 'Español', iconName: 'es.png' + }, + { + code: 'zh', + name: '中文', + iconName: 'zh.png' } ], defaultLanguage: 'en' diff --git a/src/assets/i18n/check.js b/src/assets/i18n/check.js index 3a47eac2..b70f022d 100644 --- a/src/assets/i18n/check.js +++ b/src/assets/i18n/check.js @@ -6,22 +6,22 @@ const fs = require('fs'); // Initial configuration ///////////////////////////////////////////// -console.log('Starting to check the languaje files.', '\n'); +console.log('Starting to check the language files.', '\n'); // Load the current English file. if (!fs.existsSync('en.json')) { - exitWithError('Unable to find the English languaje file.'); + exitWithError('Unable to find the English language file.'); } let currentData = JSON.parse(fs.readFileSync('en.json', 'utf8')); -// 2 charaters code of the languajes that will be checked. +// 2 charaters code of the languages that will be checked. const langs = []; // If false, the code will only verify the differences in the elements (ignoring its contents) of the // base files and the files with the translations. If not, the code will also verify the differences // in the elements and contents of the base files and the current English file. let checkFull = false; -// If a param was send, it must be "all" or the 2 charaters code of the languaje that must be checked. +// If a param was send, it must be "all" or the 2 charaters code of the language that must be checked. // If a param is provided, checkFull is set to true. if (process.argv.length > 2) { if (process.argv.length > 3) { @@ -38,7 +38,7 @@ if (process.argv.length > 2) { checkFull = true; } -// If no languaje code was send as param, the code will check all languajes. +// If no language code was send as param, the code will check all languages. if (langs.length === 0) { let localFiles = fs.readdirSync('./'); @@ -69,11 +69,11 @@ if (langs.length === 0) { }); if (langs.length === 0) { - exitWithError('No languaje files to check.'); + exitWithError('No language files to check.'); } } -console.log('Checking the following languajes:'); +console.log('Checking the following languages:'); langs.forEach(lang => { console.log(lang); }); @@ -119,7 +119,7 @@ langs.forEach(lang => { let translationData = JSON.parse(fs.readFileSync(lang + '.json', 'utf8')); if (!fs.existsSync(lang + '_base.json')) { - exitWithError('Unable to find the ' + lang + '_base.json languaje file.'); + exitWithError('Unable to find the ' + lang + '_base.json language file.'); } let baseTranslationData = JSON.parse(fs.readFileSync(lang + '_base.json', 'utf8')); @@ -189,7 +189,7 @@ function updateErrorSumary() { } } -// Checks all arrays for errors. This loop is for the languajes. +// Checks all arrays for errors. This loop is for the languages. for (let i = 0; i < baseFileOnly.length; i++) { // This loop if for checking all the arrays. @@ -197,7 +197,7 @@ for (let i = 0; i < baseFileOnly.length; i++) { // If the array has elements, it means that errors were found. if (array[i].elements.length > 0) { updateErrorSumary(); - + // Show the appropriate error text according to the current array. if (idx === 0) { console.log('The \"' + baseFileOnly[i].lang + '_base.json\" base file has elements that are not present in \"' + baseFileOnly[i].lang + '.json\":'); @@ -227,4 +227,4 @@ if (!failedValidation) { function exitWithError(errorMessage) { console.log('Error: ' + errorMessage) process.exit(1); -} \ No newline at end of file +} diff --git a/src/assets/img/lang/zh.png b/src/assets/img/lang/zh.png new file mode 100644 index 0000000000000000000000000000000000000000..ba5615b54940818a7a51008bd591e01a7a40d4a0 GIT binary patch literal 1059 zcmV+;1l;?HP)&aUSrmr>#I zj4kWxA|h%azA!K`bAv^}U?a0NGBFdujdrsIF)>gCVHo&xJeHUDb7G&UgOvxHU6IL@>z1V!($2Pyh-*0Vn_kpa2xW zzz*|tORZCYc=LnXTH{<@yw2zBjf?3<^M8MfJRF2a6PI53&EACo_fy7ju@wSS0V*2> z()p2c01cFMsX(IhTh!RT9Lv2jJxFyt+C6PvQ$QqOs91P~DTGwkt+^tQg%V1thWJ|mRJY}*AIuPs z#pt{+UJ+l1fb;h3Ba7L`q{@72>pab)q2c)?-#5Zqi$W}o0^AQg%{djOFt+Ra8PjVS z_B@ffh`SnA_lT69-J0DJl7 z6EOTc4XK6_XBvY1BQSM6_6g9~c{TXF!TW}&niWSfq_1*(x>^Z2Bq}igXGBg9%M37b zGKCrCNqQTtaCC`n^iNtrIj0X8@BbwJvnEH=;;n>J85uQBrzH$v|;L6go*PpvJZx}e~Hz3pJnfry@gj&8Ji=!P))b1fc8U! zH_YhSxS8)4DgX98i?@F#J_oqOww%6P&hWV*>9;b-E7cu2qA>}cZwD_X8wANu5@LP1 z(w1RfAz42GkdVk4hxla#n7k6>1!e37>|(V) z`B@ONryoC^VEkN+Hf#LrlNEft5TkyeFldR^*~Ne3*9>czOh;J?ll6Hi_Xi86CAYD0 z&Ca{OX!t|xW8GBK*`r-G^ zz3I)0u$aEdq<1&*C(>6%mnee(0Ab%RlLl?J$4>Tks6UC;$bZ02F`%Pyh-*0Vsfh8}5-