diff --git a/src/Squidex/app/features/content/shared/references-editor.component.ts b/src/Squidex/app/features/content/shared/references-editor.component.ts index fd5befd25..9e5bfdf32 100644 --- a/src/Squidex/app/features/content/shared/references-editor.component.ts +++ b/src/Squidex/app/features/content/shared/references-editor.component.ts @@ -30,7 +30,6 @@ export const SQX_REFERENCES_EDITOR_CONTROL_VALUE_ACCESSOR: any = { interface State { schema?: SchemaDetailsDto | null; - schemaInvalid: boolean; contentItems: ImmutableArray; diff --git a/src/Squidex/app/framework/angular/forms/autocomplete.component.ts b/src/Squidex/app/framework/angular/forms/autocomplete.component.ts index 5586ef6d4..09d576832 100644 --- a/src/Squidex/app/framework/angular/forms/autocomplete.component.ts +++ b/src/Squidex/app/framework/angular/forms/autocomplete.component.ts @@ -27,7 +27,6 @@ export const SQX_AUTOCOMPLETE_CONTROL_VALUE_ACCESSOR: any = { interface State { suggestedItems: any[]; - suggestedIndex: number; } diff --git a/src/Squidex/app/framework/angular/forms/stars.component.ts b/src/Squidex/app/framework/angular/forms/stars.component.ts index 59be6fac2..69a0e24ca 100644 --- a/src/Squidex/app/framework/angular/forms/stars.component.ts +++ b/src/Squidex/app/framework/angular/forms/stars.component.ts @@ -16,7 +16,6 @@ export const SQX_STARS_CONTROL_VALUE_ACCESSOR: any = { interface State { stars: number; - starsArray: number[]; value: number | null; diff --git a/src/Squidex/app/framework/angular/forms/tag-editor.component.ts b/src/Squidex/app/framework/angular/forms/tag-editor.component.ts index ee11740f8..82fd874e8 100644 --- a/src/Squidex/app/framework/angular/forms/tag-editor.component.ts +++ b/src/Squidex/app/framework/angular/forms/tag-editor.component.ts @@ -78,7 +78,6 @@ interface State { hasFocus: boolean; suggestedItems: string[]; - suggestedIndex: number; items: any[]; diff --git a/src/Squidex/app/framework/angular/modals/modal-dialog.component.ts b/src/Squidex/app/framework/angular/modals/modal-dialog.component.ts index c31acf01f..cfa494a2f 100644 --- a/src/Squidex/app/framework/angular/modals/modal-dialog.component.ts +++ b/src/Squidex/app/framework/angular/modals/modal-dialog.component.ts @@ -11,7 +11,6 @@ import { fadeAnimation, StatefulComponent } from '@app/framework/internal'; interface State { hasTabs: boolean; - hasFooter: boolean; } diff --git a/src/Squidex/app/framework/angular/stateful.component.ts b/src/Squidex/app/framework/angular/stateful.component.ts index b8d78970e..a88edd1dc 100644 --- a/src/Squidex/app/framework/angular/stateful.component.ts +++ b/src/Squidex/app/framework/angular/stateful.component.ts @@ -5,10 +5,10 @@ * Copyright (c) Squidex UG (haftungsbeschränkt). All rights reserved. */ -import { ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core'; +import { ChangeDetectorRef, OnDestroy } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { Observable, Subscription } from 'rxjs'; -import { onErrorResumeNext } from 'rxjs/operators'; +import { onErrorResumeNext, skip } from 'rxjs/operators'; import { Types } from './../utils/types'; @@ -46,7 +46,7 @@ export class ResourceOwner implements OnDestroy { } } -export abstract class StatefulComponent extends State implements OnDestroy, OnInit { +export abstract class StatefulComponent extends State implements OnDestroy { private readonly subscriptions = new ResourceOwner(); constructor( @@ -54,18 +54,17 @@ export abstract class StatefulComponent extends State implements OnD state: T ) { super(state); + + this.takeOver( + this.changes.pipe(skip(1)).subscribe(() => { + this.changeDetector.detectChanges(); + })); } public ngOnDestroy() { this.subscriptions.ngOnDestroy(); } - public ngOnInit() { - this.changes.subscribe(() => { - this.changeDetector.detectChanges(); - }); - } - public takeOver(subscription: Subscription | UnsubscribeFunction | Observable) { this.subscriptions.takeOver(subscription); } diff --git a/src/Squidex/app/shared/components/asset.component.ts b/src/Squidex/app/shared/components/asset.component.ts index f96bc6475..36a933269 100644 --- a/src/Squidex/app/shared/components/asset.component.ts +++ b/src/Squidex/app/shared/components/asset.component.ts @@ -27,7 +27,6 @@ import { interface State { isTagging: boolean; - isRenaming: boolean; progress: number; diff --git a/src/Squidex/app/shared/components/assets-selector.component.ts b/src/Squidex/app/shared/components/assets-selector.component.ts index 416b85380..09570bb20 100644 --- a/src/Squidex/app/shared/components/assets-selector.component.ts +++ b/src/Squidex/app/shared/components/assets-selector.component.ts @@ -20,7 +20,6 @@ import { interface State { selectedAssets: { [id: string]: AssetDto }; - selectionCount: number; isListView: boolean; diff --git a/src/Squidex/app/shared/components/geolocation-editor.component.ts b/src/Squidex/app/shared/components/geolocation-editor.component.ts index 02f83919d..00de85805 100644 --- a/src/Squidex/app/shared/components/geolocation-editor.component.ts +++ b/src/Squidex/app/shared/components/geolocation-editor.component.ts @@ -25,7 +25,6 @@ export const SQX_GEOLOCATION_EDITOR_CONTROL_VALUE_ACCESSOR: any = { interface Geolocation { latitude: number; - longitude: number; } diff --git a/src/Squidex/app/shared/components/markdown-editor.component.ts b/src/Squidex/app/shared/components/markdown-editor.component.ts index c2789578d..7da36b98b 100644 --- a/src/Squidex/app/shared/components/markdown-editor.component.ts +++ b/src/Squidex/app/shared/components/markdown-editor.component.ts @@ -56,8 +56,6 @@ export class MarkdownEditorComponent extends StatefulControlComponent { this.simplemde = new SimpleMDE({ toolbar: [ diff --git a/src/Squidex/app/shared/components/schema-category.component.ts b/src/Squidex/app/shared/components/schema-category.component.ts index 767b2ed47..9b17d2e59 100644 --- a/src/Squidex/app/shared/components/schema-category.component.ts +++ b/src/Squidex/app/shared/components/schema-category.component.ts @@ -23,7 +23,6 @@ interface State { displayName?: string; schemasFiltered: ImmutableArray; - schemasForCategory: ImmutableArray; isOpen: boolean;