diff --git a/src/dashboard/Synapse.Dashboard/Components/HorizontalCollapsible/HorizontalCollapsible.razor b/src/dashboard/Synapse.Dashboard/Components/HorizontalCollapsible/HorizontalCollapsible.razor
index 4ee9727f7..cf51e84ee 100644
--- a/src/dashboard/Synapse.Dashboard/Components/HorizontalCollapsible/HorizontalCollapsible.razor
+++ b/src/dashboard/Synapse.Dashboard/Components/HorizontalCollapsible/HorizontalCollapsible.razor
@@ -26,7 +26,7 @@
{
}
-
+
@Label
@if (OnClose.HasDelegate)
{
@@ -57,6 +57,24 @@
await base.OnParametersSetAsync();
}
+ public async Task HideAsync()
+ {
+ isCollapsed = true;
+ if (OnHidden.HasDelegate)
+ {
+ await OnHidden.InvokeAsync();
+ }
+ }
+
+ public async Task ShowAsync()
+ {
+ isCollapsed = false;
+ if (OnShown.HasDelegate)
+ {
+ await OnShown.InvokeAsync();
+ }
+ }
+
async Task OnToggleAsync()
{
isCollapsed = !isCollapsed;
diff --git a/src/dashboard/Synapse.Dashboard/Pages/Workflows/Details/View.razor b/src/dashboard/Synapse.Dashboard/Pages/Workflows/Details/View.razor
index b90d9730d..7f3a46fa6 100644
--- a/src/dashboard/Synapse.Dashboard/Pages/Workflows/Details/View.razor
+++ b/src/dashboard/Synapse.Dashboard/Pages/Workflows/Details/View.razor
@@ -25,7 +25,7 @@
Workflow @($"{Name}.{@namespace}:{version}")
-
+
-
+
@if (workflowDefinition == null)
@@ -70,7 +70,7 @@
}
-
+
@if (workflowDefinition == null)
@@ -106,7 +106,7 @@
@if (workflowInstance != null)
{
-
+
@@ -152,6 +152,9 @@
WorkflowDefinition workflowDefinition = null!;
WorkflowInstance? workflowInstance;
ProblemDetails? problemDetails;
+ HorizontalCollapsible instancesListPanel = null!;
+ HorizontalCollapsible graphPanel = null!;
+ HorizontalCollapsible definitionPanel = null!;
readonly IEnumerable columns =
[
"Name",
@@ -189,8 +192,9 @@
await base.OnInitializedAsync().ConfigureAwait(false);
}
+
///
- protected override void OnParametersSet()
+ protected override async Task OnParametersSetAsync()
{
if (Version != version)
{
@@ -199,7 +203,14 @@
if (InstanceName != instanceName)
{
Store.SetWorkflowInstanceName(InstanceName);
+ if (!string.IsNullOrWhiteSpace(InstanceName))
+ {
+ await instancesListPanel.HideAsync();
+ await graphPanel.HideAsync();
+ await definitionPanel.HideAsync();
+ }
}
+ await base.OnParametersSetAsync();
}
///
@@ -263,8 +274,11 @@
void OnShowInstanceDetails(WorkflowInstance instance) => NavigationManager.NavigateTo($"/workflows/details/{@namespace}/{Name}/{version}/{instance.GetName()}");
- void OnCloseWorkflowInstance()
+ async Task OnCloseWorkflowInstanceAsync()
{
+ await instancesListPanel.ShowAsync();
+ await graphPanel.ShowAsync();
+ await definitionPanel.ShowAsync();
NavigationManager.NavigateTo($"/workflows/details/{@namespace}/{Name}/{version}");
StateHasChanged();
}