Denys Vuika 251b6a0ec7
[ACS-5308] cleanup content common module and move to standalone components (#3234)
* language picker

* location link

* logout component

* logout: fix tests

* toggle shared component

* user info component

* cleanup common module

* migrate generic error to standalone

* thumbnail column component

* name column component

* tags column component

* locked by component

* cleanup module dependencies

* comments tab component

* info drawer and details

* cleanup infodrawer module

* remove useless test

* reduce useless imports

* info drawer module

* context menu component
2023-05-29 10:28:26 +01:00

78 lines
2.7 KiB
TypeScript

/*!
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
*
* Alfresco Example Content Application
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
*/
import { Component, Input, OnChanges, OnInit } from '@angular/core';
import { MinimalNodeEntryEntity } from '@alfresco/js-api';
import { CommonModule } from '@angular/common';
import { VersionManagerModule } from '@alfresco/adf-content-services';
import { AppConfigModule } from '@alfresco/adf-core';
import { MatIconModule } from '@angular/material/icon';
import { TranslateModule } from '@ngx-translate/core';
@Component({
standalone: true,
imports: [CommonModule, VersionManagerModule, AppConfigModule, MatIconModule, TranslateModule],
selector: 'app-versions-tab',
template: `
<ng-container *ngIf="isFileSelected; else empty">
<adf-version-manager
[showComments]="'adf-version-manager.allowComments' | adfAppConfig : true"
[allowDownload]="'adf-version-manager.allowDownload' | adfAppConfig : true"
[node]="node"
>
</adf-version-manager>
</ng-container>
<ng-template #empty>
<div class="adf-manage-versions-empty">
<mat-icon class="adf-manage-versions-empty-icon">face</mat-icon>
{{ 'VERSION.SELECTION.EMPTY' | translate }}
</div>
</ng-template>
`
})
export class VersionsTabComponent implements OnInit, OnChanges {
@Input()
node: MinimalNodeEntryEntity;
isFileSelected = false;
ngOnInit() {
this.updateState();
}
ngOnChanges() {
this.updateState();
}
private updateState() {
if (this.node && (this.node as any).nodeId) {
// workaround for shared files type.
this.isFileSelected = true;
} else {
this.isFileSelected = this.node.isFile;
}
}
}