|
25 | 25 | <ApplicationTitle>Workflow @($"{Name}.{@namespace}:{version}")</ApplicationTitle> |
26 | 26 |
|
27 | 27 | <div class="d-flex flex-grow mh-100"> |
28 | | - <HorizontalCollapsible class="collapsible-instances"> |
| 28 | + <HorizontalCollapsible @ref="instancesListPanel" class="collapsible-instances"> |
29 | 29 | <Label>Instances</Label> |
30 | 30 | <Content> |
31 | 31 | <WorkflowInstancesList class="h-100" |
|
51 | 51 | </Button> |
52 | 52 | </Content> |
53 | 53 | </HorizontalCollapsible> |
54 | | - <HorizontalCollapsible class="user-select-none position-relative"> |
| 54 | + <HorizontalCollapsible @ref="graphPanel" class="user-select-none position-relative"> |
55 | 55 | <Label>Graph</Label> |
56 | 56 | <Content> |
57 | 57 | @if (workflowDefinition == null) |
|
70 | 70 | } |
71 | 71 | </Content> |
72 | 72 | </HorizontalCollapsible> |
73 | | - <HorizontalCollapsible> |
| 73 | + <HorizontalCollapsible @ref="definitionPanel"> |
74 | 74 | <Label>Definition</Label> |
75 | 75 | <Content> |
76 | 76 | @if (workflowDefinition == null) |
|
106 | 106 | </HorizontalCollapsible> |
107 | 107 | @if (workflowInstance != null) |
108 | 108 | { |
109 | | - <HorizontalCollapsible OnClose="OnCloseWorkflowInstance"> |
| 109 | + <HorizontalCollapsible OnClose="async() => await OnCloseWorkflowInstanceAsync()"> |
110 | 110 | <Label>Instance</Label> |
111 | 111 | <Content> |
112 | 112 | <div class="d-flex flex-column h-100 mh-100"> |
|
152 | 152 | WorkflowDefinition workflowDefinition = null!; |
153 | 153 | WorkflowInstance? workflowInstance; |
154 | 154 | ProblemDetails? problemDetails; |
| 155 | + HorizontalCollapsible instancesListPanel = null!; |
| 156 | + HorizontalCollapsible graphPanel = null!; |
| 157 | + HorizontalCollapsible definitionPanel = null!; |
155 | 158 | readonly IEnumerable<string> columns = |
156 | 159 | [ |
157 | 160 | "Name", |
|
189 | 192 | await base.OnInitializedAsync().ConfigureAwait(false); |
190 | 193 | } |
191 | 194 |
|
| 195 | + |
192 | 196 | /// <inheritdoc/> |
193 | | - protected override void OnParametersSet() |
| 197 | + protected override async Task OnParametersSetAsync() |
194 | 198 | { |
195 | 199 | if (Version != version) |
196 | 200 | { |
|
199 | 203 | if (InstanceName != instanceName) |
200 | 204 | { |
201 | 205 | Store.SetWorkflowInstanceName(InstanceName); |
| 206 | + if (!string.IsNullOrWhiteSpace(InstanceName)) |
| 207 | + { |
| 208 | + await instancesListPanel.HideAsync(); |
| 209 | + await graphPanel.HideAsync(); |
| 210 | + await definitionPanel.HideAsync(); |
| 211 | + } |
202 | 212 | } |
| 213 | + await base.OnParametersSetAsync(); |
203 | 214 | } |
204 | 215 |
|
205 | 216 | /// <summary> |
|
263 | 274 |
|
264 | 275 | void OnShowInstanceDetails(WorkflowInstance instance) => NavigationManager.NavigateTo($"/workflows/details/{@namespace}/{Name}/{version}/{instance.GetName()}"); |
265 | 276 |
|
266 | | - void OnCloseWorkflowInstance() |
| 277 | + async Task OnCloseWorkflowInstanceAsync() |
267 | 278 | { |
| 279 | + await instancesListPanel.ShowAsync(); |
| 280 | + await graphPanel.ShowAsync(); |
| 281 | + await definitionPanel.ShowAsync(); |
268 | 282 | NavigationManager.NavigateTo($"/workflows/details/{@namespace}/{Name}/{version}"); |
269 | 283 | StateHasChanged(); |
270 | 284 | } |
|
0 commit comments