@@ -128,6 +128,22 @@ const initialPosition = computed(() => ({
128128
129129const activeStep = computed (() => (activeNodeId .value !== null ? props .workflow .steps [activeNodeId .value ] : undefined ));
130130
131+ const activeCardHeaderClass = computed <Record <string , boolean >>(() => {
132+ const baseClasses = {
133+ " invocation-step-header" : ! showToolForm .value ,
134+ " sticky-top" : ! showToolForm .value ,
135+ " d-flex" : true ,
136+ " justify-content-between" : true ,
137+ " align-items-center" : true ,
138+ " px-3" : true ,
139+ " py-1" : true ,
140+ };
141+
142+ const stepHeaderClass = activeNodeId .value !== null ? steps .value [activeNodeId .value ]?.headerClass : undefined ;
143+
144+ return stepHeaderClass ? { ... baseClasses , ... stepHeaderClass } : baseClasses ;
145+ });
146+
131147/**
132148 * The job ID of the active step if it is not a workflow input and has a job associated with it, otherwise undefined.
133149 * This is used to determine whether to show the tool form for the active step.
@@ -253,9 +269,7 @@ function stepClicked(nodeId: number | null) {
253269 </div >
254270 </div >
255271 <BCard v-if =" activeNodeId !== null && activeStep" ref =" stepCard" class =" invocation-step-card mt-2" no-body >
256- <BCardHeader
257- class =" d-flex justify-content-between align-items-center px-3 py-1"
258- :class =" activeNodeId !== null ? steps[activeNodeId]?.headerClass : ''" >
272+ <BCardHeader :class =" activeCardHeaderClass" >
259273 <WorkflowInvocationStepHeader
260274 class =" w-100 pr-2"
261275 :workflow-step =" activeStep"
@@ -366,15 +380,19 @@ function stepClicked(nodeId: number | null) {
366380 min-height : 500px ;
367381}
368382
369- // Keep sticky header but let multiselect dropdowns render above it.
383+ .invocation-step-header {
384+ z-index : 2 ;
385+ }
386+
387+ // Prevent sticky header from covering multiselect dropdowns.
370388.invocation-tool-form {
371389 & :deep (.tool-header ),
372390 &:deep (.ui-form-header-underlay ) {
373391 z-index : 2 !important ;
374392 }
375393
376394 & :deep(.multiselect__content-wrapper ) {
377- z-index : 3 ;
395+ z-index : 1000 ;
378396 }
379397}
380398 </style >
0 commit comments