From 061a2e5567fe7888f3a9dd5006fdb397405db9fc Mon Sep 17 00:00:00 2001 From: Denys Vuika Date: Wed, 20 Jun 2018 08:22:09 +0100 Subject: [PATCH] undo ADF-3176 changes --- .../content-metadata.component.ts | 30 +++++++++++-------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/lib/content-services/content-metadata/components/content-metadata/content-metadata.component.ts b/lib/content-services/content-metadata/components/content-metadata/content-metadata.component.ts index 92911c0d41..4e725856bc 100644 --- a/lib/content-services/content-metadata/components/content-metadata/content-metadata.component.ts +++ b/lib/content-services/content-metadata/components/content-metadata/content-metadata.component.ts @@ -21,7 +21,7 @@ import { Observable } from 'rxjs/Observable'; import { CardViewItem, NodesApiService, LogService, CardViewUpdateService, AlfrescoApiService } from '@alfresco/adf-core'; import { ContentMetadataService } from '../../services/content-metadata.service'; import { CardViewGroup } from '../../interfaces/content-metadata.interfaces'; -import { Subscription } from 'rxjs/Subscription'; +import { Subscription } from 'rxjs/Rx'; @Component({ selector: 'adf-content-metadata', @@ -57,7 +57,6 @@ export class ContentMetadataComponent implements OnChanges, OnInit, OnDestroy { @Input() preset: string; - componentInited: boolean = false; basicProperties$: Observable; groupedProperties$: Observable; disposableNodeUpdate: Subscription; @@ -71,22 +70,27 @@ export class ContentMetadataComponent implements OnChanges, OnInit, OnDestroy { ) {} ngOnInit() { - this.disposableNodeUpdate = this.cardViewUpdateService.itemUpdated$.switchMap(this.saveNode.bind(this)).subscribe( - updatedNode => { - Object.assign(this.node, updatedNode); - this.alfrescoApiService.nodeUpdated.next(this.node); - }, - error => this.logService.error(error) - ); + this.disposableNodeUpdate = this.cardViewUpdateService.itemUpdated$ + .switchMap(this.saveNode.bind(this)) + .subscribe( + updatedNode => { + Object.assign(this.node, updatedNode); + this.alfrescoApiService.nodeUpdated.next(this.node); + }, + error => this.logService.error(error) + ); - this.componentInited = true; + this.loadProperties(this.node); } ngOnChanges(changes: SimpleChanges) { - const changedNode: MinimalNodeEntryEntity = changes['node'] && changes['node'].currentValue; + if (changes.node && !changes.node.firstChange) { + this.loadProperties(changes.node.currentValue); + } + } - if (!this.componentInited || (changedNode && changedNode !== this.node)) { - const node = changedNode || this.node; + private loadProperties(node: MinimalNodeEntryEntity) { + if (node) { this.basicProperties$ = this.contentMetadataService.getBasicProperties(node); this.groupedProperties$ = this.contentMetadataService.getGroupedProperties(node, this.preset); }