Merge branch 'master' into VM/RED-9260

This commit is contained in:
Valentin Mihai 2024-07-30 20:40:10 +03:00
commit d445c5f31c
4 changed files with 25 additions and 9 deletions

View File

@ -6,7 +6,7 @@ import { MatIcon } from '@angular/material/icon';
import { FilterService } from '@common-ui/filtering';
import { CircleButtonComponent, IconButtonComponent, IconButtonTypes, IqserDialog } from '@iqser/common-ui';
import { TranslateModule } from '@ngx-translate/core';
import { IComponentLogEntry } from '@red/domain';
import { IComponentLogEntry, IComponentValue } from '@red/domain';
import { RevertValueDialogComponent } from '../../dialogs/docu-mine/revert-value-dialog/revert-value-dialog.component';
@Component({
@ -152,8 +152,15 @@ export class EditableStructuredComponentValueComponent implements OnInit {
#setWorkloadFilters() {
this._filtersService.deactivateFilters({ primaryFiltersSlug: 'primaryFilters' });
const filterSet = this.#setFilter(this.entryLabel);
if (!filterSet) {
const uniqueLabels = this.#getUniqueReferencesLabels(this.entry.componentValues);
let setFilterCount = 0;
for (const label of uniqueLabels) {
const setFilter = this.#setFilter(label);
if (setFilter) {
setFilterCount++;
}
}
if (!setFilterCount) {
this.#setFilter('no-annotations-filter');
}
}
@ -161,7 +168,7 @@ export class EditableStructuredComponentValueComponent implements OnInit {
#setFilter(label: string) {
const filterGroup = this._filtersService.getGroup('primaryFilters');
for (const filter of filterGroup.filters) {
const nestedFilter = filter.children.find(f => f.label === label);
const nestedFilter = filter.children.find(f => f.label.toLowerCase() === label);
if (nestedFilter) {
this._filtersService.filterCheckboxClicked({ nestedFilter, filterGroup, primaryFiltersSlug: 'primaryFilters' });
return true;
@ -169,6 +176,17 @@ export class EditableStructuredComponentValueComponent implements OnInit {
}
}
#getUniqueReferencesLabels(values: IComponentValue[]) {
const labels: Set<string> = new Set();
for (const value of values) {
for (const reference of value.entityReferences) {
const label = reference.type?.replace(/_/g, ' ')?.toLowerCase();
labels.add(label);
}
}
return labels;
}
#updateTextAreaHeight() {
setTimeout(() => {
for (let i = 0; i < this.entry.componentValues.length; i++) {

View File

@ -1,7 +1,5 @@
<ng-container *ngIf="!filter.icon">
<div *ngIf="filter.id === 'comment'">
<mat-icon svgIcon="red:comment"></mat-icon>
</div>
<mat-icon *ngIf="filter.id === 'comment'" svgIcon="red:comment"></mat-icon>
<redaction-annotation-icon
*ngIf="filter.id !== 'comment'"

View File

@ -12,6 +12,6 @@
height: 16px;
margin-right: 8px;
opacity: 50%;
line-height: 16px;
line-height: 8px;
}
}

@ -1 +1 @@
Subproject commit 9bbaecb7e566afe2efb8dbce73dce6eb5373801b
Subproject commit 80fceb45dd4c860024e675d7d9ae77afd3482db9