This is an automated email from the ASF dual-hosted git repository. heneveld pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/brooklyn-ui.git
commit afd62cf2fc787af1267931e106aaae66aaf36aee Author: Alex Heneveld <[email protected]> AuthorDate: Mon Oct 10 11:57:14 2022 +0100 minor fixes for workflow arrows and indicators --- .../components/workflow/workflow-step.directive.js | 8 +++++++ .../workflow/workflow-step.template.html | 26 ++++++++-------------- .../workflow/workflow-steps.directive.js | 6 ++++- 3 files changed, 22 insertions(+), 18 deletions(-) diff --git a/ui-modules/app-inspector/app/components/workflow/workflow-step.directive.js b/ui-modules/app-inspector/app/components/workflow/workflow-step.directive.js index 7d6bb40c..dadf25a7 100644 --- a/ui-modules/app-inspector/app/components/workflow/workflow-step.directive.js +++ b/ui-modules/app-inspector/app/components/workflow/workflow-step.directive.js @@ -114,6 +114,14 @@ export function workflowStepDirective() { $scope.isFocusStep = $scope.workflow.tag && ($scope.workflow.tag.stepIndex === index); $scope.isFocusTask = false; + $scope.stepCurrentError = (($scope.task || {}).currentStatus === 'Error') ? 'This step returned an error.' + : ($scope.isWorkflowError && $scope.isCurrentMaybeInactive) ? 'The workflow encountered an error around this step.' + : null; + const incomplete = $scope.osi.countStarted - $scope.osi.countCompleted > ($scope.isCurrentAndActive ? 1 : 0); + $scope.stepCurrentWarning = incomplete ? 'This step has previously been interrupted.' : null; + $scope.stepCurrentSuccess = (!$scope.isCurrentAndActive && !incomplete && $scope.osi.countCompleted > 0) + ? 'This step has completed without errors.' : null; + if ($scope.task) { if (!vm.isNullish($scope.stepContext.taskId) && $scope.stepContext.taskId === $scope.task.id) { $scope.isFocusTask = true; diff --git a/ui-modules/app-inspector/app/components/workflow/workflow-step.template.html b/ui-modules/app-inspector/app/components/workflow/workflow-step.template.html index 57cb6d71..5ec2a31c 100644 --- a/ui-modules/app-inspector/app/components/workflow/workflow-step.template.html +++ b/ui-modules/app-inspector/app/components/workflow/workflow-step.template.html @@ -19,25 +19,17 @@ <div class="workflow-step-outer"> <div class="workflow-step-status-indicators"> - <span ng-if="isCurrentAndActive"> - <span ng-if="isRunning" class="running-status"> - <brooklyn-status-icon value="STARTING"></brooklyn-status-icon> - </span> + <span ng-if="isCurrentAndActive" class="running-status"> + <brooklyn-status-icon value="STARTING"></brooklyn-status-icon> </span> - - <span ng-if="osi.countCompleted && osi.countStarted === osi.countStarted"> - <span class="color-succeeded"> - <i class="fa fa-check-circle"></i> - </span> -<!-- <span ng-if="osi.countCompleted > 1">{{ osi.countCompleted }}</span>--> + <span ng-if="stepCurrentSuccess" class="color-succeeded" title="{{ stepCurrentSuccess }}"> + <i class="fa fa-check-circle"></i> + </span> + <span ng-if="stepCurrentWarning" class="color-cancelled" title="{{ stepCurrentWarning }}"> + <i class="fa fa-exclamation-circle"></i> </span> - <span ng-if="osi.countStarted && osi.countStarted != osi.countCompleted && !isCurrentAndActive"> - <span class="color-failed" ng-if="isWorkflowError"> - <i class="fa fa-times-circle"></i> - </span> - <span class="color-cancelled" ng-if="!isWorkflowError"> - <i class="fa fa-exclamation-circle"></i> - </span> + <span ng-if="stepCurrentError" class="color-failed" title="{{ stepCurrentError }}"> + <i class="fa fa-times-circle"></i> </span> </div> diff --git a/ui-modules/app-inspector/app/components/workflow/workflow-steps.directive.js b/ui-modules/app-inspector/app/components/workflow/workflow-steps.directive.js index 32ca366e..c808f1f8 100644 --- a/ui-modules/app-inspector/app/components/workflow/workflow-steps.directive.js +++ b/ui-modules/app-inspector/app/components/workflow/workflow-steps.directive.js @@ -222,7 +222,11 @@ function makeArrows(workflow, steps) { if (to!=-1 && from!=-1 && to!=from) { jumpSizes[Math.abs(from-to)] = true; } - arrowSpecs[[from,to]] = { from, to, ...(opts||{}) }; + if (arrowSpecs[[from,to]]) { + // prefer earlier additions (real steps) over theoretical ones + } else { + arrowSpecs[[from, to]] = {from, to, ...(opts || {})}; + } } for (var i = -1; i < steps.length - 1; i++) {
