[ACS-7414] - manage versions dialog (#9545)

This commit is contained in:
dominikiwanekhyland
2024-04-12 15:31:37 +02:00
committed by VitoAlbano
parent 26310858ae
commit ef173c65c1
2 changed files with 84 additions and 49 deletions

View File

@@ -2,26 +2,28 @@
color="accent"></mat-progress-bar>
<mat-list class="adf-version-list adf-version-list-element" [hidden]="isLoading">
<cdk-virtual-scroll-viewport #viewport itemSize="88" class="adf-version-list-viewport">
<mat-list-item class="adf-version-list-item" *cdkVirtualFor="let version of versionsDataSource; let idx = index; let latestVersion = first">
<mat-icon matListItemLine>insert_drive_file</mat-icon>
<p matListItemLine class="adf-version-list-item-line adf-version-list-item-name"
[id]="'adf-version-list-item-name-' + version.entry.id">{{ version.entry.name }}</p>
<p matListItemLine>
<span class="adf-version-list-item-line adf-version-list-item-version"
[id]="'adf-version-list-item-version-' + version.entry.id">{{ version.entry.id }}</span> -
<span class="adf-version-list-item-line adf-version-list-item-date"
[id]="'adf-version-list-item-date-' + version.entry.id">{{ version.entry.modifiedAt | date }}</span>
</p>
<p
matListItemLine
[id]="'adf-version-list-item-comment-' + version.entry.id"
class="adf-version-list-item-comment"
*ngIf="showComments"
[title]="version.entry.versionComment">
{{ version.entry.versionComment }}
</p>
<div *ngIf="showActions">
<mat-list-item class="adf-version-list-item"
*cdkVirtualFor="let version of versionsDataSource; let idx = index; let latestVersion = first">
<mat-icon class="adf-version-list-icon" matListItemIcon>insert_drive_file</mat-icon>
<div class="adf-version-list-content">
<div class="adf-version-list-item-details">
<p class="adf-version-list-item-line adf-version-list-item-name"
[id]="'adf-version-list-item-name-' + version.entry.id">{{ version.entry.name }}</p>
<p>
<span class="adf-version-list-item-line adf-version-list-item-version"
[id]="'adf-version-list-item-version-' + version.entry.id">{{ version.entry.id }}</span> -
<span class="adf-version-list-item-line adf-version-list-item-date"
[id]="'adf-version-list-item-date-' + version.entry.id">{{ version.entry.modifiedAt | date }}</span>
</p>
<p
[id]="'adf-version-list-item-comment-' + version.entry.id"
class="adf-version-list-item-comment"
*ngIf="showComments"
[title]="version.entry.versionComment">
{{ version.entry.versionComment }}
</p>
</div>
<ng-container *ngIf="showActions">
<mat-menu [id]="'adf-version-list-action-menu-' + version.entry.id"
#versionMenu="matMenu"
yPosition="below"
@@ -30,25 +32,38 @@
<button *ngIf="allowViewVersions"
[id]="'adf-version-list-action-view-' + version.entry.id"
mat-menu-item
(click)="downloadVersion(version.entry.id)">
{{ 'ADF_VERSION_LIST.ACTIONS.DOWNLOAD' | translate }}
(click)="onViewVersion(version.entry.id)">
{{ 'ADF_VERSION_LIST.ACTIONS.VIEW' | translate }}
</button>
<button
[disabled]="!canDelete()"
[id]="'adf-version-list-action-delete-' + version.entry.id"
(click)="deleteVersion(version.entry.id)"
mat-menu-item>
{{ 'ADF_VERSION_LIST.ACTIONS.DELETE' | translate }}
</button>
</mat-menu>
<button mat-icon-button
</ng-container>
<button
[id]="'adf-version-list-action-restore-' + version.entry.id"
[disabled]="!canUpdate() || latestVersion"
mat-menu-item
(click)="restore(version.entry.id)">
{{ 'ADF_VERSION_LIST.ACTIONS.RESTORE' | translate }}
</button>
<button *ngIf="allowDownload"
[id]="'adf-version-list-action-download-' + version.entry.id"
mat-menu-item
(click)="downloadVersion(version.entry.id)">
{{ 'ADF_VERSION_LIST.ACTIONS.DOWNLOAD' | translate }}
</button>
<button
[disabled]="!canDelete()"
[id]="'adf-version-list-action-delete-' + version.entry.id"
(click)="deleteVersion(version.entry.id)"
mat-menu-item>
{{ 'ADF_VERSION_LIST.ACTIONS.DELETE' | translate }}
</button>
</mat-menu>
<button mat-icon-button
[matMenuTriggerFor]="versionMenu"
[id]="'adf-version-list-action-menu-button-' + version.entry.id"
title="{{ 'ADF_VERSION_LIST.MANAGE_VERSION_OPTIONS' | translate }}">
<mat-icon>more_vert</mat-icon>
</button>
</div>
</ng-container>
</div>
</mat-list-item>
</cdk-virtual-scroll-viewport>

View File

@@ -1,19 +1,39 @@
/* stylelint-disable selector-class-pattern */
/* stylelint-disable no-descending-specificity */
@import 'styles/mat-selectors';
.adf-version-list {
height: 100%;
overflow-x: hidden;
display: flex;
&-viewport {
height: 100%;
overflow-x: hidden;
display: flex;
:first-child {
max-width: 100%;
:first-child {
max-width: 100%;
}
}
&-item {
border-bottom: 1px solid var(--adf-theme-foreground-divider-color);
width: 100%;
&-item-details {
flex: 1;
width: 90%;
}
&-content {
display: flex;
p {
margin: 0;
overflow: hidden;
}
}
.adf-version-list-icon {
margin: 0 16px;
color: var(--theme-sidenav-user-menu-color);
}
&.adf-version-list-element {
.adf-version-list-item {
border-bottom: 1px solid var(--adf-theme-foreground-divider-color);
width: 100%;
height: 88px;
}
}
&-item-version {
@@ -22,20 +42,20 @@
&-item-date {
opacity: 0.6;
white-space: normal;
}
&-item-comment {
width: 100%;
width: auto;
opacity: 0.5;
margin: 0;
@media screen and (width <= 629px) {
width: 97%;
}
}
&-item-name,
&-item-date {
&-item-name {
white-space: normal;
font-size: 16px;
}
}