From 1590953e48dd9fc10ff96f6b232707947b47710c Mon Sep 17 00:00:00 2001 From: Thomas Desvenain Date: Wed, 3 Jan 2018 14:57:55 +0100 Subject: [PATCH] Add an edit view with angular2-schema-form on test app. --- CHANGELOG.md | 10 ++ src/module.ts | 1 + src/views/edit.spec.ts | 3 +- src/views/edit.ts | 6 +- tests/package.json | 1 + tests/src/app/app.component.spec.ts | 10 +- tests/src/app/app.component.ts | 2 +- tests/src/app/app.module.ts | 8 +- tests/src/app/custom/index.ts | 81 +++++++++- tests/src/app/custom/view.html | 8 +- tests/yarn.lock | 41 ++++- yarn.lock | 243 ++++------------------------ 12 files changed, 181 insertions(+), 233 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8b02cc3..00e8680 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,10 @@ - By default, patch request returns a 200 with full modified content representation. No effect with plone.restapi <= 1.0a25 +- Since angular2-schema-form dependency has been removed, + edit forms are not anymore auto-generated by angular2-schema-form by default. + + ## New features - Add plone-workflow component. [Thomas Desvenain] @@ -36,6 +40,12 @@ - url was missing from navlink interface. [Thomas Desvenain] +## Refactor + +- Remove dependency on angular2-schema-form. [Eric Brehault] + +- Add an edit view with angular2-schema-form on test app. [Thomas Desvenain] + # 1.3.1 (2017-11-08) diff --git a/src/module.ts b/src/module.ts index 9378540..de4d390 100644 --- a/src/module.ts +++ b/src/module.ts @@ -1,4 +1,5 @@ import 'rxjs/add/operator/delayWhen'; +import 'rxjs/add/operator/do'; import 'rxjs/add/operator/filter'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/merge'; diff --git a/src/views/edit.spec.ts b/src/views/edit.spec.ts index ae5900b..1f6c5c1 100644 --- a/src/views/edit.spec.ts +++ b/src/views/edit.spec.ts @@ -5,6 +5,7 @@ import { } from '@angular/common/http/testing'; import { APP_BASE_HREF } from '@angular/common'; +import { FormsModule } from '@angular/forms'; import { ConfigurationService } from '../services/configuration.service'; import { APIService } from '../services/api.service'; @@ -26,7 +27,7 @@ describe('EditView', () => { beforeEach(async(() => { TestBed.configureTestingModule({ declarations: [EditView], - imports: [HttpClientTestingModule, TraversalModule], + imports: [HttpClientTestingModule, TraversalModule, FormsModule], providers: [ APIService, AuthenticationService, diff --git a/src/views/edit.ts b/src/views/edit.ts index 0dc9643..2b8a2e7 100644 --- a/src/views/edit.ts +++ b/src/views/edit.ts @@ -1,4 +1,5 @@ import { Component } from '@angular/core'; +import { Target } from 'angular-traversal'; import { TraversingComponent } from '../traversing'; import { Services } from '../services'; @@ -14,20 +15,19 @@ import { Services } from '../services'; export class EditView extends TraversingComponent { model: any = {}; - actions: any = {}; path: string; constructor(services: Services) { super(services); } - onTraverse(target: any) { + onTraverse(target: Target) { this.path = target.contextPath; this.model = target.context; } onSave(data: any) { - this.services.resource.update(this.path, data).subscribe(res => { + this.services.resource.update(this.path, data).subscribe(() => { this.services.traverser.traverse(this.path); }); } diff --git a/tests/package.json b/tests/package.json index 9525318..1513a8a 100644 --- a/tests/package.json +++ b/tests/package.json @@ -23,6 +23,7 @@ "@angular/platform-server": "^5.0.0", "@angular/router": "^5.0.0", "angular-traversal": "^1.0.4", + "angular2-schema-form": "^1.2.0", "core-js": "^2.4.1", "rxjs": "^5.5.2", "zone.js": "^0.8.12" diff --git a/tests/src/app/app.component.spec.ts b/tests/src/app/app.component.spec.ts index 77e7ea2..a85c97b 100644 --- a/tests/src/app/app.component.spec.ts +++ b/tests/src/app/app.component.spec.ts @@ -7,17 +7,19 @@ import { BrowserDynamicTestingModule } from '@angular/platform-browser-dynamic/t import { APP_BASE_HREF } from '@angular/common'; import { FormsModule } from '@angular/forms'; import { RESTAPIModule } from '@plone/restapi-angular'; +import { SchemaFormModule } from 'angular2-schema-form'; import { AppComponent } from './app.component'; import { Search } from './components/search'; -import { CustomViewView } from './custom'; +import { CustomSfEditView, CustomViewView } from './custom'; import { CustomGlobalNavigation } from './custom'; @Component({ selector: 'custom-breadcrumbs', template: '' }) -export class FakeCustomBreadcrumbs {} +export class FakeCustomBreadcrumbs { +} describe('AppComponent', () => { beforeEach(() => { @@ -25,6 +27,7 @@ describe('AppComponent', () => { declarations: [ AppComponent, CustomViewView, + CustomSfEditView, FakeCustomBreadcrumbs, CustomGlobalNavigation, Search, @@ -32,6 +35,7 @@ describe('AppComponent', () => { imports: [ HttpClientTestingModule, RESTAPIModule, + SchemaFormModule.forRoot(), FormsModule, ], providers: [ @@ -46,7 +50,7 @@ describe('AppComponent', () => { TestBed.overrideModule(BrowserDynamicTestingModule, { set: { - entryComponents: [ CustomViewView ], + entryComponents: [CustomViewView], }, }); }); diff --git a/tests/src/app/app.component.ts b/tests/src/app/app.component.ts index f01b292..30a7b0f 100644 --- a/tests/src/app/app.component.ts +++ b/tests/src/app/app.component.ts @@ -1,7 +1,7 @@ import { Component, OnInit } from '@angular/core'; import { PloneViews, Services } from '@plone/restapi-angular'; -import { CustomViewView } from './custom'; +import { CustomSfEditView, CustomViewView } from './custom'; import { AuthenticatedStatus, LoadingStatus, Vocabulary, SearchView } from '@plone/restapi-angular'; import { BehaviorSubject } from 'rxjs/BehaviorSubject'; diff --git a/tests/src/app/app.module.ts b/tests/src/app/app.module.ts index c8025fc..7410eb2 100644 --- a/tests/src/app/app.module.ts +++ b/tests/src/app/app.module.ts @@ -1,19 +1,20 @@ import { NgModule } from '@angular/core'; import { FormsModule } from '@angular/forms'; -import { HttpModule } from '@angular/http'; import { BrowserModule } from '@angular/platform-browser'; import { RESTAPIModule } from '@plone/restapi-angular'; +import { DefaultWidgetRegistry, SchemaFormModule, WidgetRegistry } from 'angular2-schema-form'; import { environment } from '../environments/environment'; import { AppComponent } from './app.component'; import { Search } from './components/search'; -import { CustomBreadcrumbs, CustomGlobalNavigation, CustomViewView } from './custom'; +import { CustomBreadcrumbs, CustomGlobalNavigation, CustomSfEditView, CustomViewView } from './custom'; @NgModule({ declarations: [ AppComponent, CustomViewView, + CustomSfEditView, CustomBreadcrumbs, CustomGlobalNavigation, Search, @@ -24,8 +25,8 @@ import { CustomBreadcrumbs, CustomGlobalNavigation, CustomViewView } from './cus imports: [ BrowserModule, FormsModule, + SchemaFormModule.forRoot(), RESTAPIModule, - HttpModule ], providers: [ { @@ -33,6 +34,7 @@ import { CustomBreadcrumbs, CustomGlobalNavigation, CustomViewView } from './cus BACKEND_URL: environment.backendUrl, } }, + { provide: WidgetRegistry, useClass: DefaultWidgetRegistry } ], bootstrap: [AppComponent] }) diff --git a/tests/src/app/custom/index.ts b/tests/src/app/custom/index.ts index 113d1d8..a166bb7 100644 --- a/tests/src/app/custom/index.ts +++ b/tests/src/app/custom/index.ts @@ -1,29 +1,96 @@ -import { Component } from '@angular/core'; +import { Component, OnInit } from '@angular/core'; -import { GlobalNavigation, Breadcrumbs } from '@plone/restapi-angular'; -import { ViewView } from '@plone/restapi-angular'; +import { Breadcrumbs, EditView, GlobalNavigation, Services, ViewView } from '@plone/restapi-angular'; +import { Target } from 'angular-traversal'; @Component({ selector: 'custom-breadcrumbs', templateUrl: './breadcrumbs.html' }) -export class CustomBreadcrumbs extends Breadcrumbs {} +export class CustomBreadcrumbs extends Breadcrumbs { +} @Component({ selector: 'custom-navigation', templateUrl: './navigation.html' }) -export class CustomGlobalNavigation extends GlobalNavigation {} +export class CustomGlobalNavigation extends GlobalNavigation { +} @Component({ selector: 'custom-view', templateUrl: './view.html' }) export class CustomViewView extends ViewView { - mode: 'view' | 'edit' = 'view'; + mode: 'view' | 'edit' | 'advanced-edit' = 'view'; downloaded = false; - changeMode(mode: 'view' | 'edit') { + + changeMode(mode: 'view' | 'edit' | 'advanced-edit') { this.mode = mode; } } + +@Component({ + selector: 'custom-sf-edit', + template: `` +}) +export class CustomSfEditView extends EditView implements OnInit { + + schema: any; + actions: any = {}; + + constructor(services: Services) { + super(services); + this.schema = { + 'properties': {}, + 'buttons': [ + { id: 'save', label: 'Save' }, + { id: 'cancel', label: 'Cancel' } + ] + }; + } + + onTraverse(target: Target) { + super.onTraverse(target); + const model = target.context; + this.actions = { + save: this.onSave.bind(this), + cancel: this.onCancel.bind(this) + }; + this.services.resource.type(target.context['@type']).subscribe(schema => { + schema.buttons = [ + { id: 'save', label: 'Save' }, + { id: 'cancel', label: 'Cancel' } + ]; + // FIX THE SCHEMA AND THE MODEL + for (const property in schema.properties) { + if (!schema.properties.hasOwnProperty(property)) { + continue; + } + if (property === 'allow_discussion') { + schema.properties[property].type = 'boolean'; + } + if (property === 'effective' || property === 'expires') { + schema.properties[property].widget = 'date'; + } + } + + this.schema = schema; + this.model = model; + }); + } + + onSave(schemaForm: any) { + const model = schemaForm.value; + Object.keys(model).forEach((key: string) => { + if (model[key] === '' && this.schema.properties[key].widget.id === 'date') { + model[key] = null; + } + }); + this.services.resource.update(this.path, model).subscribe(() => { + this.services.traverser.traverse(this.path); + }); + } + +} diff --git a/tests/src/app/custom/view.html b/tests/src/app/custom/view.html index 38c7958..6acfd84 100644 --- a/tests/src/app/custom/view.html +++ b/tests/src/app/custom/view.html @@ -1,4 +1,7 @@ - + +

{{ context.title }}

@@ -27,3 +30,6 @@

Workflow

+ + + diff --git a/tests/yarn.lock b/tests/yarn.lock index 0bdd018..8d3e701 100644 --- a/tests/yarn.lock +++ b/tests/yarn.lock @@ -295,6 +295,15 @@ angular-traversal@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/angular-traversal/-/angular-traversal-1.0.4.tgz#cfc739e0e328027fd3ec8635fb6ee387555392d0" +angular2-schema-form@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/angular2-schema-form/-/angular2-schema-form-1.2.0.tgz#af4a409cb612039bd210c689e03e2392b69035c8" + dependencies: + body-parser "^1.15.1" + methods "^1.1.2" + raw-loader "0.5.1" + z-schema "^3.17.0" + ansi-html@0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ansi-html/-/ansi-html-0.0.7.tgz#813584021962a9e9e6fd039f940d12f56ca7859e" @@ -636,7 +645,7 @@ bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4.4.0: version "4.11.8" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.11.8.tgz#2cde09eb5ee341f484746bb0309b3253b1b1442f" -body-parser@^1.16.1: +body-parser@^1.15.1, body-parser@^1.16.1: version "1.18.2" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" dependencies: @@ -1066,6 +1075,10 @@ commander@2.11.x, commander@~2.11.0: version "2.11.0" resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" +commander@^2.7.1: + version "2.12.2" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.12.2.tgz#0f5946c427ed9ec0d91a46bb9def53e54650e555" + common-tags@^1.3.1: version "1.4.0" resolved "https://registry.yarnpkg.com/common-tags/-/common-tags-1.4.0.tgz#1187be4f3d4cf0c0427d43f74eef1f73501614c0" @@ -3286,6 +3299,14 @@ lodash.clonedeep@^4.3.2, lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" +lodash.get@^4.0.0: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + +lodash.isequal@^4.0.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + lodash.memoize@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" @@ -3432,7 +3453,7 @@ merge-descriptors@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" -methods@~1.1.2: +methods@^1.1.2, methods@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" @@ -4532,7 +4553,7 @@ raw-body@2.3.2: iconv-lite "0.4.19" unpipe "1.0.0" -raw-loader@^0.5.1: +raw-loader@0.5.1, raw-loader@^0.5.1: version "0.5.1" resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" @@ -5743,6 +5764,10 @@ validate-npm-package-license@^3.0.1: spdx-correct "~1.0.0" spdx-expression-parse "~1.0.0" +validator@^9.0.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/validator/-/validator-9.2.0.tgz#ad216eed5f37cac31a6fe00ceab1f6b88bded03e" + vary@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.1.tgz#67535ebb694c1d52257457984665323f587e8d37" @@ -6134,6 +6159,16 @@ yn@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/yn/-/yn-2.0.0.tgz#e5adabc8acf408f6385fc76495684c88e6af689a" +z-schema@^3.17.0: + version "3.19.0" + resolved "https://registry.yarnpkg.com/z-schema/-/z-schema-3.19.0.tgz#d86e90e5d02113c7b8824ae477dd57208d17a5a8" + dependencies: + lodash.get "^4.0.0" + lodash.isequal "^4.0.0" + validator "^9.0.0" + optionalDependencies: + commander "^2.7.1" + zone.js@^0.8.12: version "0.8.17" resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.8.17.tgz#4c5e5185a857da8da793daf3919371c5a36b2a0b" diff --git a/yarn.lock b/yarn.lock index c72ef4b..e359e73 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2,54 +2,18 @@ # yarn lockfile v1 -"@angular/common@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/common/-/common-5.0.0.tgz#f96d66a517b995d1ba9b28309f15c2e359675825" - dependencies: - tslib "^1.7.1" - "@angular/compiler-cli@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.0.0.tgz#0ecbb937d84a4f8dd94f0c2a47b07d2e4694c853" + version "5.1.2" + resolved "https://registry.yarnpkg.com/@angular/compiler-cli/-/compiler-cli-5.1.2.tgz#70addc11b6528f087abe809f94acedecdfc9c8f6" dependencies: chokidar "^1.4.2" minimist "^1.2.0" reflect-metadata "^0.1.2" - tsickle "^0.24.0" - -"@angular/compiler@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/compiler/-/compiler-5.0.0.tgz#b9ffbf18c8a39d8b7dacec473193a90e24cc2bc9" - dependencies: - tslib "^1.7.1" - -"@angular/core@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/core/-/core-5.0.0.tgz#4f976a225f7dddf34992f2cad824c9543a46f4c8" - dependencies: - tslib "^1.7.1" - -"@angular/forms@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/forms/-/forms-5.0.0.tgz#c7fddfa35396759ae9852920a30cdda8c41ed1de" - dependencies: - tslib "^1.7.1" - -"@angular/http@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/http/-/http-5.0.0.tgz#0728a2be0cfbb078727c5eb87d4c85d53fec9a51" - dependencies: - tslib "^1.7.1" - -"@angular/platform-browser@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/platform-browser/-/platform-browser-5.0.0.tgz#c7038f7cde80705b62014897231e182eec976fed" - dependencies: - tslib "^1.7.1" + tsickle "^0.25.5" "@angular/platform-server@^5.0.0": - version "5.0.0" - resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-5.0.0.tgz#877d25ef814af92fffc7b0b523b971a6ff222018" + version "5.1.2" + resolved "https://registry.yarnpkg.com/@angular/platform-server/-/platform-server-5.1.2.tgz#a6fc8a8a180c6a71c60f269e0f646c54de38e18b" dependencies: domino "^1.0.29" tslib "^1.7.1" @@ -68,8 +32,8 @@ resolved "https://registry.yarnpkg.com/@types/jasmine/-/jasmine-2.5.38.tgz#a4379124c4921d4e21de54ec74669c9e9b356717" "@types/node@^6.0.42": - version "6.0.88" - resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.88.tgz#f618f11a944f6a18d92b5c472028728a3e3d4b66" + version "6.0.95" + resolved "https://registry.yarnpkg.com/@types/node/-/node-6.0.95.tgz#0d027612a77c55b84497ff90a4a7d597e5ac0fab" abbrev@1: version "1.1.1" @@ -86,15 +50,6 @@ angular-traversal@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/angular-traversal/-/angular-traversal-1.0.4.tgz#cfc739e0e328027fd3ec8635fb6ee387555392d0" -angular2-schema-form@^1.0.0-beta.12: - version "1.0.1" - resolved "https://registry.yarnpkg.com/angular2-schema-form/-/angular2-schema-form-1.0.1.tgz#afe2af8861e428363a7bed1dab275b73741a188a" - dependencies: - body-parser "^1.15.1" - methods "^1.1.2" - raw-loader "0.5.1" - z-schema "^3.17.0" - ansi-regex@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" @@ -170,8 +125,8 @@ bcrypt-pbkdf@^1.0.0: tweetnacl "^0.14.3" binary-extensions@^1.0.0: - version "1.10.0" - resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.10.0.tgz#9aeb9a6c5e88638aad171e167f5900abe24835d0" + version "1.11.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.11.0.tgz#46aa1751fb6a2f93ee5e689bb1087d4b14c6c205" block-stream@*: version "0.0.9" @@ -179,21 +134,6 @@ block-stream@*: dependencies: inherits "~2.0.0" -body-parser@^1.15.1: - version "1.18.2" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.2.tgz#87678a19d84b47d859b83199bd59bce222b10454" - dependencies: - bytes "3.0.0" - content-type "~1.0.4" - debug "2.6.9" - depd "~1.1.1" - http-errors "~1.6.2" - iconv-lite "0.4.19" - on-finished "~2.3.0" - qs "6.5.1" - raw-body "2.3.2" - type-is "~1.6.15" - boom@2.x.x: version "2.10.1" resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" @@ -215,10 +155,6 @@ braces@^1.8.2: preserve "^0.2.0" repeat-element "^1.1.2" -bytes@3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" - caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" @@ -252,10 +188,6 @@ combined-stream@^1.0.5, combined-stream@~1.0.5: dependencies: delayed-stream "~1.0.0" -commander@^2.7.1: - version "2.11.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563" - concat-map@0.0.1: version "0.0.1" resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" @@ -264,14 +196,6 @@ console-control-strings@^1.0.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" -content-type@~1.0.4: - version "1.0.4" - resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" - -core-js@^2.4.1: - version "2.5.1" - resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.5.1.tgz#ae6874dc66937789b80754ff5428df66819ca50b" - core-util-is@1.0.2, core-util-is@~1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -296,7 +220,7 @@ dashdash@^1.12.0: dependencies: assert-plus "^1.0.0" -debug@2.6.9, debug@^2.2.0: +debug@^2.2.0: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" dependencies: @@ -314,13 +238,9 @@ delegates@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" -depd@1.1.1, depd@~1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.1.tgz#5783b4e1c459f06fa5ca27f991f3d06e7a310359" - detect-libc@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.2.tgz#71ad5d204bf17a6a6ca8f450c61454066ef461e1" + version "1.0.3" + resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" domino@^1.0.29: version "1.0.30" @@ -332,10 +252,6 @@ ecc-jsbn@~0.1.1: dependencies: jsbn "~0.1.0" -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" - expand-brackets@^0.1.4: version "0.1.5" resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-0.1.5.tgz#df07284e342a807cd733ac5af72411e581d1177b" @@ -358,10 +274,14 @@ extglob@^0.3.1: dependencies: is-extglob "^1.0.0" -extsprintf@1.3.0, extsprintf@^1.2.0: +extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" +extsprintf@^1.2.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f" + filename-regex@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/filename-regex/-/filename-regex-2.0.1.tgz#c1c4b9bee3e09725ddb106b75c1e301fe2f18b26" @@ -403,11 +323,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" fsevents@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.2.tgz#3282b713fb3ad80ede0e9fcf4611b5aa6fc033f4" + version "1.1.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-1.1.3.tgz#11f82318f5fe7bb2cd22965a108e9306208216d8" dependencies: nan "^2.3.0" - node-pre-gyp "^0.6.36" + node-pre-gyp "^0.6.39" fstream-ignore@^1.0.5: version "1.0.5" @@ -501,15 +421,6 @@ hoek@2.x.x: version "2.16.3" resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" -http-errors@1.6.2, http-errors@~1.6.2: - version "1.6.2" - resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.6.2.tgz#0a002cc85707192a7e7946ceedc11155f60ec736" - dependencies: - depd "1.1.1" - inherits "2.0.3" - setprototypeof "1.0.3" - statuses ">= 1.3.1 < 2" - http-signature@~1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" @@ -518,10 +429,6 @@ http-signature@~1.1.0: jsprim "^1.2.2" sshpk "^1.7.0" -iconv-lite@0.4.19: - version "0.4.19" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.19.tgz#f7468f60135f5e5dad3399c0a81be9a1603a082b" - inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -529,13 +436,13 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.3, inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.3: +inherits@2, inherits@^2.0.1, inherits@~2.0.0, inherits@~2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" ini@~1.3.0: - version "1.3.4" - resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.4.tgz#0537cb79daf59b59a1a517dff706c86ec039162e" + version "1.3.5" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927" is-binary-path@^1.0.0: version "1.0.1" @@ -662,14 +569,6 @@ kind-of@^4.0.0: dependencies: is-buffer "^1.1.5" -lodash.get@^4.0.0: - version "4.4.2" - resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" - -lodash.isequal@^4.0.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" - lru-cache@^4.0.1: version "4.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.1.tgz#622e32e82488b49279114a4f9ecf45e7cd6bba55" @@ -677,14 +576,6 @@ lru-cache@^4.0.1: pseudomap "^1.0.2" yallist "^2.1.2" -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - -methods@^1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - micromatch@^2.1.5: version "2.3.11" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-2.3.11.tgz#86677c97d1720b363431d04d0d15293bd38c1565" @@ -707,7 +598,7 @@ mime-db@~1.30.0: version "1.30.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.30.0.tgz#74c643da2dd9d6a45399963465b26d5ca7d71f01" -mime-types@^2.1.12, mime-types@~2.1.15, mime-types@~2.1.7: +mime-types@^2.1.12, mime-types@~2.1.7: version "2.1.17" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.17.tgz#09d7a393f03e995a79f8af857b70a9e0ab16557a" dependencies: @@ -738,10 +629,10 @@ ms@2.0.0: resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" nan@^2.3.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/nan/-/nan-2.7.0.tgz#d95bf721ec877e08db276ed3fc6eb78f9083ad46" + version "2.8.0" + resolved "https://registry.yarnpkg.com/nan/-/nan-2.8.0.tgz#ed715f3fe9de02b57a5e6252d90a96675e1f085a" -node-pre-gyp@^0.6.36: +node-pre-gyp@^0.6.39: version "0.6.39" resolved "https://registry.yarnpkg.com/node-pre-gyp/-/node-pre-gyp-0.6.39.tgz#c00e96860b23c0e1420ac7befc5044e1d78d8649" dependencies: @@ -798,12 +689,6 @@ object.omit@^2.0.0: for-own "^0.1.4" is-extendable "^0.1.1" -on-finished@~2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" - dependencies: - ee-first "1.1.1" - once@^1.3.0, once@^1.3.3: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" @@ -858,10 +743,6 @@ punycode@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" -qs@6.5.1: - version "6.5.1" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.1.tgz#349cdf6eef89ec45c12d7d5eb3fc0c870343a6d8" - qs@~6.4.0: version "6.4.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" @@ -877,19 +758,6 @@ randomatic@^1.1.3: is-number "^3.0.0" kind-of "^4.0.0" -raw-body@2.3.2: - version "2.3.2" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.3.2.tgz#bcd60c77d3eb93cde0050295c3f379389bc88f89" - dependencies: - bytes "3.0.0" - http-errors "1.6.2" - iconv-lite "0.4.19" - unpipe "1.0.0" - -raw-loader@0.5.1: - version "0.5.1" - resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-0.5.1.tgz#0c3d0beaed8a01c966d9787bf778281252a979aa" - rc@^1.1.7: version "1.2.2" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.2.tgz#d8ce9cb57e8d64d9c7badd9876c7c34cbe3c7077" @@ -975,12 +843,6 @@ rimraf@2, rimraf@^2.5.1, rimraf@^2.5.4, rimraf@^2.6.1: dependencies: glob "^7.0.5" -rxjs@^5.5.2: - version "5.5.2" - resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-5.5.2.tgz#28d403f0071121967f18ad665563255d54236ac3" - dependencies: - symbol-observable "^1.0.1" - safe-buffer@^5.0.1, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.1.tgz#893312af69b2123def71f57889001671eeb2c853" @@ -997,10 +859,6 @@ set-immediate-shim@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/set-immediate-shim/-/set-immediate-shim-1.0.1.tgz#4b2b1b27eb808a9f8dcc481a58e5e56f599f3f61" -setprototypeof@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.0.3.tgz#66567e37043eeb4f04d91bd658c0cbefb55b8e04" - shebang-command@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" @@ -1045,10 +903,6 @@ sshpk@^1.7.0: jsbn "~0.1.0" tweetnacl "~0.14.0" -"statuses@>= 1.3.1 < 2": - version "1.3.1" - resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.3.1.tgz#faf51b9eb74aaef3b3acf4ad5f61abf24cb7b93e" - string-width@^1.0.1, string-width@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -1077,10 +931,6 @@ strip-json-comments@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" -symbol-observable@^1.0.1: - version "1.0.4" - resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.0.4.tgz#29bf615d4aa7121bdd898b22d4b3f9bc4e2aa03d" - tar-pack@^3.4.0: version "3.4.1" resolved "https://registry.yarnpkg.com/tar-pack/-/tar-pack-3.4.1.tgz#e1dbc03a9b9d3ba07e896ad027317eb679a10a1f" @@ -1108,9 +958,9 @@ tough-cookie@~2.3.0: dependencies: punycode "^1.4.1" -tsickle@^0.24.0: - version "0.24.1" - resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.24.1.tgz#039343b205bf517a333b0703978892f80a7d848e" +tsickle@^0.25.5: + version "0.25.6" + resolved "https://registry.yarnpkg.com/tsickle/-/tsickle-0.25.6.tgz#b595db16b236721824eeeda8bb262365b47ef334" dependencies: minimist "^1.2.0" mkdirp "^0.5.1" @@ -1118,8 +968,8 @@ tsickle@^0.24.0: source-map-support "^0.4.2" tslib@^1.7.1: - version "1.7.1" - resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.7.1.tgz#bc8004164691923a79fe8378bbeb3da2017538ec" + version "1.8.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.8.1.tgz#6946af2d1d651a7b1863b531d6e5afa41aa44eac" tunnel-agent@^0.6.0: version "0.6.0" @@ -1131,13 +981,6 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" -type-is@~1.6.15: - version "1.6.15" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.15.tgz#cab10fb4909e441c82842eafe1ad646c81804410" - dependencies: - media-typer "0.3.0" - mime-types "~2.1.15" - typescript@2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.4.2.tgz#f8395f85d459276067c988aa41837a8f82870844" @@ -1146,10 +989,6 @@ uid-number@^0.0.6: version "0.0.6" resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" -unpipe@1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" - util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -1158,10 +997,6 @@ uuid@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.1.0.tgz#3dd3d3e790abc24d7b0d3a034ffababe28ebbc04" -validator@^8.0.0: - version "8.2.0" - resolved "https://registry.yarnpkg.com/validator/-/validator-8.2.0.tgz#3c1237290e37092355344fef78c231249dab77b9" - verror@1.10.0: version "1.10.0" resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" @@ -1193,17 +1028,3 @@ xhr2@^0.1.4: yallist@^2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" - -z-schema@^3.17.0: - version "3.18.4" - resolved "https://registry.yarnpkg.com/z-schema/-/z-schema-3.18.4.tgz#ea8132b279533ee60be2485a02f7e3e42541a9a2" - dependencies: - lodash.get "^4.0.0" - lodash.isequal "^4.0.0" - validator "^8.0.0" - optionalDependencies: - commander "^2.7.1" - -zone.js@^0.8.12: - version "0.8.18" - resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.8.18.tgz#8cecb3977fcd1b3090562ff4570e2847e752b48d"