From bea3623c3ec176e89419b93d3aa9aaccc5e349eb Mon Sep 17 00:00:00 2001 From: RIHTARSIC Joze <joze.rihtarsic@ext.ec.europa.eu> Date: Mon, 21 Oct 2024 08:01:36 +0200 Subject: [PATCH] [EDELIVERY-13955] fix table headers --- .../smp-table/smp-table-coldef.model.ts | 3 ++- .../components/smp-table/smp-table.component.css | 16 +++++++++++++++- .../smp-table/smp-table.component.html | 6 ++++-- .../components/smp-table/smp-table.component.ts | 7 +++++++ .../document-events-panel.component.ts | 10 +++++----- .../document-properties-panel.component.ts | 4 ++-- .../document-versions-panel.component.ts | 8 ++++---- .../admin-domain/admin-domain.component.css | 7 +++++++ .../admin-domain/admin-domain.component.html | 2 +- .../domain-properties-panel.component.html | 6 +++--- .../domain-properties-panel.component.scss | 8 ++++++++ .../admin-extension/extension.component.css | 8 ++++++++ .../admin-extension/extension.component.html | 6 +++--- .../admin-keystore/admin-keystore.component.css | 8 ++++++++ .../admin-keystore/admin-keystore.component.html | 4 ++-- .../admin-truststore.component.css | 8 +++++++- .../admin-truststore.component.html | 2 +- .../admin-users/admin-user.component.css | 7 +++++++ .../admin-users/admin-user.component.html | 4 ++-- smp-angular/src/assets/i18n/en.json | 3 +++ 20 files changed, 99 insertions(+), 28 deletions(-) diff --git a/smp-angular/src/app/common/components/smp-table/smp-table-coldef.model.ts b/smp-angular/src/app/common/components/smp-table/smp-table-coldef.model.ts index 6c6b0ec5a..c07f9f957 100644 --- a/smp-angular/src/app/common/components/smp-table/smp-table-coldef.model.ts +++ b/smp-angular/src/app/common/components/smp-table/smp-table-coldef.model.ts @@ -7,5 +7,6 @@ export interface SmpTableColDef { header: string; cell?: (row: any) => any; tooltip?: (row: any) => any; - style?:string ; + style?:string; + headerStyle?: string; } diff --git a/smp-angular/src/app/common/components/smp-table/smp-table.component.css b/smp-angular/src/app/common/components/smp-table/smp-table.component.css index 2dd459cb2..570453242 100644 --- a/smp-angular/src/app/common/components/smp-table/smp-table.component.css +++ b/smp-angular/src/app/common/components/smp-table/smp-table.component.css @@ -16,9 +16,19 @@ padding-right: 5px; } -.smp-table-cell { +.smp-table-cell { word-break: break-all; word-wrap: break-word; + font-size: 0.8em; + padding: 1px 5px; + +} + +.smp-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: left; } .smp-table-row { @@ -40,4 +50,8 @@ padding-top: 1em; } +.smp-table-header-row{ + min-height: 36px; +} + diff --git a/smp-angular/src/app/common/components/smp-table/smp-table.component.html b/smp-angular/src/app/common/components/smp-table/smp-table.component.html index 46eb8d088..abef78ba5 100644 --- a/smp-angular/src/app/common/components/smp-table/smp-table.component.html +++ b/smp-angular/src/app/common/components/smp-table/smp-table.component.html @@ -14,7 +14,8 @@ <ng-container *ngFor="let colDef of columnDefList; let colIndex = index" matColumnDef="{{colDef.columnDef}}"> <mat-header-cell *matHeaderCellDef - [style]="colDef.style">{{ colDef.header | translate }} + class="smp-table-cell-header" + [style]="getHeaderStyle(colDef)">{{ colDef.header | translate }} </mat-header-cell> <mat-cell class="smp-table-cell" *matCellDef="let row" @@ -23,7 +24,8 @@ >{{ colDef.cell(row) }}</mat-cell> </ng-container> <!-- configure table header --> - <mat-header-row *matHeaderRowDef="displayedColumns;sticky: true"></mat-header-row> + <mat-header-row *matHeaderRowDef="displayedColumns;sticky: true" + class="smp-table-header-row"></mat-header-row> <!-- configure table rows --> <mat-row class="smp-table-row" *matRowDef="let odd = odd; let row; columns: displayedColumns;" (click)="onRowClickedEvent(row)" diff --git a/smp-angular/src/app/common/components/smp-table/smp-table.component.ts b/smp-angular/src/app/common/components/smp-table/smp-table.component.ts index c4e3667d4..dfb2aebe7 100644 --- a/smp-angular/src/app/common/components/smp-table/smp-table.component.ts +++ b/smp-angular/src/app/common/components/smp-table/smp-table.component.ts @@ -114,4 +114,11 @@ export class SmpTableComponent implements AfterViewInit { } } + getHeaderStyle(col: SmpTableColDef): string { + if (!col) { + return ''; + } + return ( col?.style?col.style:'') + ' ' +( col?.headerStyle?col.headerStyle:'') ; + } + } diff --git a/smp-angular/src/app/common/panels/document-events-panel/document-events-panel.component.ts b/smp-angular/src/app/common/panels/document-events-panel/document-events-panel.component.ts index 14728cb91..052f5a201 100644 --- a/smp-angular/src/app/common/panels/document-events-panel/document-events-panel.component.ts +++ b/smp-angular/src/app/common/panels/document-events-panel/document-events-panel.component.ts @@ -80,33 +80,33 @@ export class DocumentEventsPanelComponent implements AfterViewInit, BeforeLeaveG columnDef: 'date', header: 'document.events.panel.label.date', cell: (row: DocumentVersionEventRo) => this.dateTimeService.formatDateTimeForUserLocal(row.eventOn), - style: 'font-size: 0.8em; flex-grow: 0;flex-basis: 80px; padding: 5px;justify-content : center;' + style: 'flex-basis: 150px;flex-grow: 0;' } as SmpTableColDef, { columnDef: 'eventType', header: 'document.events.panel.label.type', cell: (row: DocumentVersionEventRo) => row.eventType, - style: 'font-size: 0.8em; padding: 5px;justify-content : center;flex-grow: 0;flex-basis:80px;' + style: 'flex-basis:80px;flex-grow: 0;' } as SmpTableColDef, { columnDef: 'status', header: 'document.events.panel.label.status', cell: (row: DocumentVersionEventRo) => row.documentVersionStatus, - style: 'font-size: 0.8em; padding: 5px;justify-content : center;flex-grow: 0;flex-basis:80px;' + style: 'flex-basis:80px;flex-grow: 0;' } as SmpTableColDef, { columnDef: 'username', header: 'document.events.panel.label.username', cell: (row: DocumentVersionEventRo) => row.username, - style: 'font-size: 0.8em; padding: 5px;justify-content : center;' + style: 'flex-grow: 1;' } as SmpTableColDef, { columnDef: 'eventSource', header: 'document.events.panel.label.source', cell: (row: DocumentVersionEventRo) => row.eventSourceType, - style: 'font-size: 0.8em; flex-grow: 0;flex-basis:100px;padding: 5px;justify-content : center;' + style: 'flex-basis:60px;flex-grow: 0;' } as SmpTableColDef, ]; } diff --git a/smp-angular/src/app/common/panels/document-properties-panel/document-properties-panel.component.ts b/smp-angular/src/app/common/panels/document-properties-panel/document-properties-panel.component.ts index 0ddbb73be..cb2ec0004 100644 --- a/smp-angular/src/app/common/panels/document-properties-panel/document-properties-panel.component.ts +++ b/smp-angular/src/app/common/panels/document-properties-panel/document-properties-panel.component.ts @@ -76,13 +76,13 @@ export class DocumentPropertiesPanelComponent implements BeforeLeaveGuard, Contr header: 'document.properties.panel.label.property', cell: (row: DocumentPropertyRo) => row.property, tooltip: (row: DocumentPropertyRo) => row.desc, - style: 'font-size: 0.8em; padding: 0 5px;flex-grow: 0;flex-basis:40%;' + style: 'flex-grow: 0;flex-basis:40%;' } as SmpTableColDef, { columnDef: 'value', header: 'document.properties.panel.label.value', cell: (row: DocumentPropertyRo) => row.value, - style: 'font-size: 0.8em; padding: 0 5px;' + style: 'flex-grow: 1;' } as SmpTableColDef ]; } diff --git a/smp-angular/src/app/common/panels/document-versions-panel/document-versions-panel.component.ts b/smp-angular/src/app/common/panels/document-versions-panel/document-versions-panel.component.ts index 7bc7d181d..7fbc82ca9 100644 --- a/smp-angular/src/app/common/panels/document-versions-panel/document-versions-panel.component.ts +++ b/smp-angular/src/app/common/panels/document-versions-panel/document-versions-panel.component.ts @@ -82,25 +82,25 @@ export class DocumentVersionsPanelComponent implements BeforeLeaveGuard, Control columnDef: 'version', header: 'document.versions.panel.label.version', cell: (row: DocumentVersionRo) => row.version, - style: 'font-size: 0.8em;padding: 5px;justify-content : center;flex-grow: 0;flex-basis:70px;' + style: 'flex-grow: 0;flex-basis:70px;' } as SmpTableColDef, { columnDef: 'status', header: 'document.versions.panel.label.status', cell: (row: DocumentVersionRo) => row.versionStatus, - style: 'font-size: 0.8em;padding: 5px;justify-content:center;flex-grow: 0;flex-basis:100px;' + style: 'flex-grow: 1;' } as SmpTableColDef, { columnDef: 'createdOn', header: 'document.versions.panel.label.created', cell: (row: DocumentVersionRo) => this.dateTimeService.formatDateTimeForUserLocal(row.createdOn), - style: 'font-size: 0.8em; padding: 5px;justify-content:center;' + style: 'flex-basis: 150px;flex-grow: 0;' } as SmpTableColDef, { columnDef: 'lastUpdatedOn', header: 'document.versions.panel.label.updated', cell: (row: DocumentVersionRo) => this.dateTimeService.formatDateTimeForUserLocal(row.lastUpdatedOn), - style: 'font-size: 0.8em; padding: 5px;justify-content:center;' + style: 'flex-basis: 150px;flex-grow: 0;' } as SmpTableColDef ]; } diff --git a/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.css b/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.css index 6957aefc1..7151e5ab7 100644 --- a/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.css +++ b/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.css @@ -31,3 +31,10 @@ height: 100%; max-width: 800px } + +.domain-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: center; +} diff --git a/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.html b/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.html index 02515ab53..b28d87f30 100644 --- a/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.html +++ b/smp-angular/src/app/system-settings/admin-domain/admin-domain.component.html @@ -92,7 +92,7 @@ <table class="mat-elevation-z2" id="admin-domain-table" mat-table [dataSource]="dataSource" matSort> <ng-container matColumnDef="domainCode"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "admin.domain.label.domain.code" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="domain-table-cell-header">{{ "admin.domain.label.domain.code" | translate }}</th> <td mat-cell *matCellDef="let row" [matTooltip]="row.domainCode">{{ row.domainCode }} </td> diff --git a/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.html b/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.html index 1e930d08e..ba9d9ed3b 100644 --- a/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.html +++ b/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.html @@ -4,19 +4,19 @@ <table id="admin-domain-properties-table" mat-table [dataSource]="propertyDataSource" matSort> <ng-container matColumnDef="systemDefault"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "domain.properties.label.system.default" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="domprop-table-cell-header">{{ "domain.properties.label.system.default" | translate }}</th> <td mat-cell *matCellDef="let row"> <mat-checkbox checked="{{row.systemDefault}}" disabled></mat-checkbox> </td> </ng-container> <ng-container matColumnDef="property"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "domain.properties.label.domain.property" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="domprop-table-cell-header">{{ "domain.properties.label.domain.property" | translate }}</th> <td mat-cell *matCellDef="let row" [matTooltip]="row.desc">{{ row.property }} </td> </ng-container> <ng-container matColumnDef="value"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "domain.properties.label.domain.value" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="domprop-table-cell-header">{{ "domain.properties.label.domain.value" | translate }}</th> <td mat-cell *matCellDef="let row">{{ getTableRowValue(row) }}</td> </ng-container> <tr mat-header-row *matHeaderRowDef="displayedColumns"></tr> diff --git a/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.scss b/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.scss index 5c3239f12..35ce0c474 100644 --- a/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.scss +++ b/smp-angular/src/app/system-settings/admin-domain/domain-properties-panel/domain-properties-panel.component.scss @@ -24,3 +24,11 @@ .table-row { font-weight: normal; } + + +.domprop-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: left; +} diff --git a/smp-angular/src/app/system-settings/admin-extension/extension.component.css b/smp-angular/src/app/system-settings/admin-extension/extension.component.css index 0e0da6ace..0565053d9 100644 --- a/smp-angular/src/app/system-settings/admin-extension/extension.component.css +++ b/smp-angular/src/app/system-settings/admin-extension/extension.component.css @@ -19,3 +19,11 @@ padding-top: 1em; } + +.extension-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: left; + align-self: start; +} diff --git a/smp-angular/src/app/system-settings/admin-extension/extension.component.html b/smp-angular/src/app/system-settings/admin-extension/extension.component.html index 2e3c841b4..e01c66539 100644 --- a/smp-angular/src/app/system-settings/admin-extension/extension.component.html +++ b/smp-angular/src/app/system-settings/admin-extension/extension.component.html @@ -22,13 +22,13 @@ <!-- Name Column --> <ng-container matColumnDef="name"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "extensions.label.name" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="extension-table-cell-header">{{ "extensions.label.name" | translate }}</th> <td mat-cell *matCellDef="let row"> {{row.name}} </td> </ng-container> <!-- Version Column --> - <ng-container matColumnDef="version"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "extensions.label.version" | translate }}</th> + <ng-container matColumnDef="version" class="extension-table-cell-header"> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="extension-table-cell-header">{{ "extensions.label.version" | translate }}</th> <td mat-cell *matCellDef="let row"> {{row.version}}</td> </ng-container> diff --git a/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.css b/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.css index 21030caf7..02ce8bc3f 100644 --- a/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.css +++ b/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.css @@ -26,3 +26,11 @@ display: block; cursor: pointer; } + +.keystore-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: left; + align-self: start; +} diff --git a/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.html b/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.html index 7ed7c193f..046f4a11d 100644 --- a/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.html +++ b/smp-angular/src/app/system-settings/admin-keystore/admin-keystore.component.html @@ -37,14 +37,14 @@ <table class="mat-elevation-z2" id="admin-keystore-table" mat-table [dataSource]="dataSource" matSort> <ng-container matColumnDef="alias" [matTooltip]="selected?.certificateId"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "admin.keystore.label.alias" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="keystore-table-cell-header">{{ "admin.keystore.label.alias" | translate }}</th> <td mat-cell *matCellDef="let row" [ngClass]="{'datatable-row-error': row.invalid}" [matTooltip]="row.certificateId">{{row.alias}}</td> </ng-container> <ng-container matColumnDef="entry-type"> - <th mat-header-cell *matHeaderCellDef>{{ "admin.keystore.label.type" | translate }}</th> + <th mat-header-cell *matHeaderCellDef class="keystore-table-cell-header">{{ "admin.keystore.label.type" | translate }}</th> <td mat-cell *matCellDef="let row" [ngClass]="{'datatable-row-error': row.invalid}" [matTooltip]="(row.containingKey ? 'admin.keystore.label.key.pair': 'admin.keystore.label.certificate') | translate"> diff --git a/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.css b/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.css index b37a8e949..bd7605689 100644 --- a/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.css +++ b/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.css @@ -12,7 +12,6 @@ padding-top: 1em; } - #admin-truststore-table { width: 100%; padding-top: 1em; @@ -26,3 +25,10 @@ display: block; cursor: pointer; } + +.truststore-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: center; +} diff --git a/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.html b/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.html index 42a6b5075..aadc7e90a 100644 --- a/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.html +++ b/smp-angular/src/app/system-settings/admin-truststore/admin-truststore.component.html @@ -49,7 +49,7 @@ <!-- Name Column --> <ng-container matColumnDef="alias"> - <th mat-header-cell *matHeaderCellDef mat-sort-header>{{ "admin.truststore.label.alias" | translate }}</th> + <th mat-header-cell *matHeaderCellDef mat-sort-header class="truststore-table-cell-header">{{ "admin.truststore.label.alias" | translate }}</th> <td mat-cell *matCellDef="let row" [ngClass]="{'datatable-row-error': row.invalid}" [matTooltip]="row.certificateId">{{row.alias}}</td> diff --git a/smp-angular/src/app/system-settings/admin-users/admin-user.component.css b/smp-angular/src/app/system-settings/admin-users/admin-user.component.css index b65965b4b..0283c14de 100644 --- a/smp-angular/src/app/system-settings/admin-users/admin-user.component.css +++ b/smp-angular/src/app/system-settings/admin-users/admin-user.component.css @@ -17,3 +17,10 @@ width: 100%; padding-top: 1em; } + +.user-table-cell-header { + font-weight: bold; + font-size: 0.9em; + padding: 1px 5px; + text-align: left; +} diff --git a/smp-angular/src/app/system-settings/admin-users/admin-user.component.html b/smp-angular/src/app/system-settings/admin-users/admin-user.component.html index 0dbddc6cc..287dc0a32 100644 --- a/smp-angular/src/app/system-settings/admin-users/admin-user.component.html +++ b/smp-angular/src/app/system-settings/admin-users/admin-user.component.html @@ -41,12 +41,12 @@ </mat-toolbar> <table class="mat-elevation-z2" id="admin-user-table" mat-table [dataSource]="userData" > <ng-container matColumnDef="username"> - <th mat-header-cell *matHeaderCellDef >{{ "admin.user.label.username" | translate }}</th> + <th mat-header-cell *matHeaderCellDef class="user-table-cell-header" >{{ "admin.user.label.username" | translate }}</th> <td mat-cell *matCellDef="let row" [matTooltip]="row.username">{{row.username}}</td> </ng-container> <ng-container matColumnDef="fullName"> - <th mat-header-cell *matHeaderCellDef >{{ "admin.user.label.full.name" | translate }}</th> + <th mat-header-cell *matHeaderCellDef class="user-table-cell-header" >{{ "admin.user.label.full.name" | translate }}</th> <td mat-cell *matCellDef="let row" [matTooltip]="row.username">{{row.fullName}}</td> </ng-container> diff --git a/smp-angular/src/assets/i18n/en.json b/smp-angular/src/assets/i18n/en.json index 3a9d41d65..1b233fc15 100644 --- a/smp-angular/src/assets/i18n/en.json +++ b/smp-angular/src/assets/i18n/en.json @@ -634,10 +634,13 @@ "domain.properties.button.reset": "Reset", "domain.properties.button.save": "Save", + "domain.properties.label.filter": "Filter by prop. name", + "domain.properties.placeholder.filter": "Filter by property name", "domain.properties.label.domain.property": "Domain property", "domain.properties.label.domain.value": "Domain value", "domain.properties.label.system.default": "Sys. Def.", "domain.properties.label.no.properties.found": "No Domain properties found", + "domain.properties.label.no.filter.found": "No data matching the filter {{filterValue}}\"", "domain.properties.panel.title": "Domain properties", "domain.resource.type.panel.button.reset": "Reset", -- GitLab