[ACA-1529] performance fixes for permission checks (#498)

* fix recent files

* fix files component

* fix shared files

* don't evaluate permissions for empty selection

* fix info drawer

* fix viewer

* fix tests

* reduce one more check

* track upload errors on app level

* remove console log

* reduce service dependencies
This commit is contained in:
Denys Vuika
2018-07-08 12:25:20 +01:00
committed by GitHub
parent fe683015c5
commit 718a32a907
23 changed files with 171 additions and 151 deletions

View File

@@ -31,7 +31,6 @@ import { MinimalNodeEntity, MinimalNodeEntryEntity, NodePaging, PathElement, Pat
import { Observable } from 'rxjs/Rx';
import { ContentManagementService } from '../../common/services/content-management.service';
import { NodeActionsService } from '../../common/services/node-actions.service';
import { NodePermissionService } from '../../common/services/node-permission.service';
import { AppStore } from '../../store/states/app.state';
import { PageComponent } from '../page.component';
import { ContentApiService } from '../../services/content-api.service';
@@ -53,16 +52,15 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
store: Store<AppStore>,
private nodeActionsService: NodeActionsService,
private uploadService: UploadService,
private contentManagementService: ContentManagementService,
public permission: NodePermissionService,
content: ContentManagementService,
extensions: ExtensionService) {
super(store, extensions);
super(store, extensions, content);
}
ngOnInit() {
super.ngOnInit();
const { route, contentManagementService, nodeActionsService, uploadService } = this;
const { route, content, nodeActionsService, uploadService } = this;
const { data } = route.snapshot;
this.title = data.title;
@@ -89,14 +87,13 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
this.subscriptions = this.subscriptions.concat([
nodeActionsService.contentCopied.subscribe((nodes) => this.onContentCopied(nodes)),
contentManagementService.folderCreated.subscribe(() => this.documentList.reload()),
contentManagementService.folderEdited.subscribe(() => this.documentList.reload()),
contentManagementService.nodesDeleted.subscribe(() => this.documentList.reload()),
contentManagementService.nodesMoved.subscribe(() => this.documentList.reload()),
contentManagementService.nodesRestored.subscribe(() => this.documentList.reload()),
content.folderCreated.subscribe(() => this.documentList.reload()),
content.folderEdited.subscribe(() => this.documentList.reload()),
content.nodesDeleted.subscribe(() => this.documentList.reload()),
content.nodesMoved.subscribe(() => this.documentList.reload()),
content.nodesRestored.subscribe(() => this.documentList.reload()),
uploadService.fileUploadComplete.debounceTime(300).subscribe(file => this.onFileUploadedEvent(file)),
uploadService.fileUploadDeleted.debounceTime(300).subscribe((file) => this.onFileUploadedEvent(file)),
uploadService.fileUploadError.subscribe((error) => this.onFileUploadedError(error))
]);
}