[ACS-5613] process preview on popup displaying the details of selected running process on the popup (#8933)

* ACS-5613 Renamed name column header for process details

* ACS-5613 Change order of columns based on order property

* ACS-5613 Added some unit test

* ACS-5613 Added unit tests

* ACS-5613 Added documentation

* ACS-5613 Fixed e2e

* ACS-5613 Fixed e2e

* ACS-5613 Fixed e2e

* ACS-5613 Fixed e2e

* ACS-5613 Fixed e2e
This commit is contained in:
AleksanderSklorz
2023-09-28 10:44:07 +02:00
committed by GitHub
parent ed0dd094b4
commit 094acf77ce
14 changed files with 72 additions and 58 deletions

View File

@@ -98,6 +98,10 @@ export class DataColumnComponent implements OnInit {
@Input()
sortingKey: string;
/** Sets position of column. **/
@Input()
order?: number;
/** Data column header template */
header?: TemplateRef<any>;

View File

@@ -49,4 +49,5 @@ export interface DataColumn<T = unknown> {
isHidden?: boolean;
width?: number;
customData?: T;
order?: number;
}

View File

@@ -82,6 +82,8 @@ export abstract class DataTableSchema<T = unknown> {
if (customSchemaColumns.length === 0) {
customSchemaColumns = this.getDefaultLayoutPreset();
} else {
customSchemaColumns.sort((col1, col2) => (col1.order || 0) - (col2.order || 0));
}
return customSchemaColumns;

View File

@@ -37,6 +37,7 @@ export class ObjectDataColumn<T = unknown> implements DataColumn<T> {
isHidden: boolean;
customData?: T;
width?: number;
order?: number;
constructor(input: any) {
this.id = input.id ?? '';
@@ -56,5 +57,6 @@ export class ObjectDataColumn<T = unknown> implements DataColumn<T> {
this.isHidden = input.isHidden ?? false;
this.customData = input.customData;
this.width = input.width;
this.order = input.order;
}
}

View File

@@ -48,7 +48,7 @@ import { PreferenceCloudServiceInterface } from '@alfresco/adf-process-services-
@Component({
template: ` <adf-cloud-process-list #processListCloud>
<data-columns>
<data-column key="name" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column"></data-column>
<data-column key="name" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="3"></data-column>
<data-column key="created" title="ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED" class="adf-hidden"></data-column>
<data-column key="startedBy" title="ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED" class="adf-desktop-only dw-dt-col-3 adf-ellipsis-cell">
<ng-template let-entry="$implicit">
@@ -606,8 +606,9 @@ describe('ProcessListCloudComponent: Injecting custom columns for task list - Cu
it('should fetch custom schemaColumn from html', () => {
fixtureCustom.detectChanges();
expect(componentCustom.processListCloud.columnList).toBeDefined();
expect(componentCustom.processListCloud.columns[0]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.NAME');
expect(componentCustom.processListCloud.columns[1]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED');
expect(componentCustom.processListCloud.columns[0].key).toEqual('created');
expect(componentCustom.processListCloud.columns[1].key).toEqual('startedBy');
expect(componentCustom.processListCloud.columns[2].key).toEqual('name');
expect(componentCustom.processListCloud.columns.length).toEqual(3);
});
});

View File

@@ -32,7 +32,7 @@ import { ServiceTaskListCloudService } from '../services/service-task-list-cloud
template: `
<adf-cloud-service-task-list #taskListCloud>
<data-columns>
<data-column key="activityName" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column"></data-column>
<data-column key="activityName" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="2"></data-column>
<data-column key="startedDate" title="ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED" class="adf-hidden"></data-column>
</data-columns>
</adf-cloud-service-task-list>`
@@ -387,8 +387,8 @@ describe('ServiceTaskListCloudComponent: Injecting custom columns for task list
it('should fetch custom schemaColumn from html', () => {
fixtureCustom.detectChanges();
expect(componentCustom.taskList.columnList).toBeDefined();
expect(componentCustom.taskList.columns[0]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.NAME');
expect(componentCustom.taskList.columns[1]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED');
expect(componentCustom.taskList.columns[0].key).toEqual('startedDate');
expect(componentCustom.taskList.columns[1].key).toEqual('activityName');
expect(componentCustom.taskList.columns.length).toEqual(2);
});

View File

@@ -48,7 +48,7 @@ import { PreferenceCloudServiceInterface } from '../../../services/preference-cl
template: `
<adf-cloud-task-list #taskListCloud>
<data-columns>
<data-column id="name" key="name" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column"></data-column>
<data-column id="name" key="name" title="ADF_CLOUD_TASK_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="3"></data-column>
<data-column id="created" key="created" title="ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED" class="adf-hidden"></data-column>
<data-column id="startedBy" key="startedBy" title="ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED" class="adf-desktop-only dw-dt-col-3 adf-ellipsis-cell">
<ng-template let-entry="$implicit">
@@ -533,8 +533,9 @@ describe('TaskListCloudComponent: Injecting custom colums for tasklist - CustomT
it('should fetch custom schemaColumn from html', () => {
copyFixture.detectChanges();
expect(componentCustom.taskList.columnList).toBeDefined();
expect(componentCustom.taskList.columns[0]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.NAME');
expect(componentCustom.taskList.columns[1]['title']).toEqual('ADF_CLOUD_TASK_LIST.PROPERTIES.CREATED');
expect(componentCustom.taskList.columns[0].key).toEqual('created');
expect(componentCustom.taskList.columns[1].key).toEqual('startedBy');
expect(componentCustom.taskList.columns[2].key).toEqual('name');
expect(componentCustom.taskList.columns.length).toEqual(3);
});

View File

@@ -29,7 +29,7 @@
"THUMBNAIL": "Thumbnail",
"DURATION": "Duration",
"PARENT_TASK_ID": "Parent task id",
"NAME": "Name",
"NAME": "Task Name",
"ASSIGNEE": "Assignee",
"ASSIGNEE_DEFAULT": "No assignee",
"PRIORITY": "Priority",

View File

@@ -460,7 +460,7 @@ describe('ProcessInstanceListComponent', () => {
template: `
<adf-process-instance-list #processListComponentInstance>
<data-columns>
<data-column key="name" title="ADF_PROCESS_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column"></data-column>
<data-column key="name" title="ADF_PROCESS_LIST.PROPERTIES.NAME" class="adf-full-width adf-name-column" [order]="3"></data-column>
<data-column key="created" title="ADF_PROCESS_LIST.PROPERTIES.END_DATE" class="adf-hidden"></data-column>
<data-column key="startedBy" title="ADF_PROCESS_LIST.PROPERTIES.CREATED" class="adf-desktop-only dw-dt-col-3 adf-ellipsis-cell">
<ng-template let-entry="$implicit">
@@ -498,8 +498,9 @@ describe('CustomProcessListComponent', () => {
fixture.detectChanges();
expect(component.processList.columns).toBeDefined();
expect(component.processList.columns.length).toEqual(3);
expect(component.processList.columns[1]['title']).toEqual('ADF_PROCESS_LIST.PROPERTIES.END_DATE');
expect(component.processList.columns[2]['title']).toEqual('ADF_PROCESS_LIST.PROPERTIES.CREATED');
expect(component.processList.columns[0].key).toEqual('created');
expect(component.processList.columns[1].key).toEqual('startedBy');
expect(component.processList.columns[2].key).toEqual('name');
});
});

View File

@@ -664,7 +664,7 @@ describe('TaskListComponent', () => {
template: `
<adf-tasklist #taskList>
<data-columns>
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column"></data-column>
<data-column key="name" title="ADF_TASK_LIST.PROPERTIES.NAME" class="full-width name-column" [order]="3"></data-column>
<data-column key="created" title="ADF_TASK_LIST.PROPERTIES.CREATED" class="hidden"></data-column>
<data-column key="startedBy" title="ADF_TASK_LIST.PROPERTIES.CREATED" class="desktop-only dw-dt-col-3 ellipsis-cell">
<ng-template let-entry="$implicit">
@@ -705,8 +705,9 @@ describe('CustomTaskListComponent', () => {
it('should fetch custom schemaColumn from html', () => {
fixture.detectChanges();
expect(component.taskList.columnList).toBeDefined();
expect(component.taskList.columns[0]['title']).toEqual('ADF_TASK_LIST.PROPERTIES.NAME');
expect(component.taskList.columns[1]['title']).toEqual('ADF_TASK_LIST.PROPERTIES.CREATED');
expect(component.taskList.columns[0].key).toEqual('created');
expect(component.taskList.columns[1].key).toEqual('startedBy');
expect(component.taskList.columns[2].key).toEqual('name');
expect(component.taskList.columns.length).toEqual(3);
});
});