= {
id: formatProcessInstanceId,
process_model_identifier: formatProcessModelIdentifier,
@@ -325,39 +336,54 @@ export default function ProcessInstanceListTable({
const formatter = column.display_type
? displayTypeFormatters[column.display_type]
: reportColumnFormatters[columnAccessor] ?? defaultFormatter;
- const value = row[columnAccessor];
+ const value = processInstance[columnAccessor];
if (columnAccessor === 'status') {
return (
-
- {formatter(row, value)}
+ | navigateToProcessInstance(processInstance)}
+ onKeyDown={() => navigateToProcessInstance(processInstance)}
+ data-qa={`process-instance-status-${value}`}
+ >
+ {formatter(processInstance, value)}
|
);
}
- if (columnAccessor === 'process_model_display_name') {
- return {formatter(row, value)} | ;
- }
- if (columnAccessor === 'waiting_for') {
- return {getWaitingForTableCellComponent(row)} | ;
- }
if (columnAccessor === 'updated_at_in_seconds') {
return (
navigateToProcessInstance(processInstance)}
+ onKeyDown={() => navigateToProcessInstance(processInstance)}
/>
);
}
if (columnAccessor === 'task_updated_at_in_seconds') {
return (
navigateToProcessInstance(processInstance)}
+ onKeyDown={() => navigateToProcessInstance(processInstance)}
/>
);
}
+ let cellContent: any = null;
+ if (columnAccessor === 'process_model_display_name') {
+ cellContent = formatter(processInstance, value);
+ } else if (columnAccessor === 'waiting_for') {
+ cellContent = getWaitingForTableCellComponent(processInstance);
+ } else {
+ cellContent = formatter(processInstance, value);
+ }
return (
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
-
- {formatter(row, value)}
+ | navigateToProcessInstance(processInstance)}
+ onKeyDown={() => navigateToProcessInstance(processInstance)}
+ data-qa={`process-instance-show-link-${columnAccessor}`}
+ >
+ {cellContent}
|
);
};
@@ -465,7 +491,7 @@ export default function ProcessInstanceListTable({
return formattedColumn(processInstance, column);
});
if (showActionsColumn) {
- let buttonElement = null;
+ let goButtonElement = null;
const taskShowUrl = `/tasks/${processInstance.id}/${processInstance.task_id}`;
const regex = new RegExp(`\\b(${preferredUsername}|${userEmail})\\b`);
let hasAccessToCompleteTask = false;
@@ -476,7 +502,7 @@ export default function ProcessInstanceListTable({
hasAccessToCompleteTask = true;
}
if (hasAccessToCompleteTask && processInstance.task_id) {
- buttonElement = (
+ goButtonElement = (