|
21 | 21 |
|
22 | 22 | <AzureToolbarDivider/> |
23 | 23 |
|
24 | | - <AzureToolbarButton IsDisabled="@(SelectedConfigurationSettings is not { Count: 1 })" Label="Edit" OnClick="@HandleEditClick"/> |
25 | | - <AzureToolbarButton IsDisabled="@(SelectedConfigurationSettings is { Count: 0 })" Label="Delete" OnClick="@HandleDeleteClick"/> |
| 24 | + <AzureToolbarButton IsDisabled="@(SelectedConfigurationSettings is not { Count: 1 })" Label="Edit" OnClick="@(() => HandleEditClick(SelectedConfigurationSettings.Single()))"/> |
| 25 | + <AzureToolbarButton IsDisabled="@(SelectedConfigurationSettings is { Count: 0 })" Label="Delete" OnClick="@(() => HandleDeleteClick(SelectedConfigurationSettings.ToArray()))"/> |
26 | 26 | </AzureToolbar> |
27 | 27 |
|
28 | 28 | <div class="p-5"> |
|
42 | 42 | </div> |
43 | 43 |
|
44 | 44 | <div class="mx-5"> |
45 | | - <ConfigurationSettingTable @bind-SelectedConfigurationSettings="@SelectedConfigurationSettings" ConfigurationSettings="@FilteredConfigurationSettings" IsValuesHidden="@IsValuesHidden"/> |
| 45 | + <ConfigurationSettingTable @bind-SelectedConfigurationSettings="@SelectedConfigurationSettings" ConfigurationSettings="@FilteredConfigurationSettings" IsValuesHidden="@IsValuesHidden" OnDeleteClick="@(setting => HandleDeleteClick(setting))" OnEditClick="@(setting => HandleEditClick(setting))"/> |
46 | 46 | </div> |
47 | 47 | </div> |
48 | 48 |
|
|
69 | 69 | } |
70 | 70 | } |
71 | 71 |
|
72 | | - private async Task HandleCreateClick(MouseEventArgs args) |
| 72 | + private async Task HandleCreateClick() |
73 | 73 | { |
74 | 74 | var reference = await DialogService.Show<ConfigurationSettingCreateDialog>(); |
75 | 75 | var result = await reference.Result; |
|
82 | 82 | } |
83 | 83 | } |
84 | 84 |
|
85 | | - private async Task HandleEditClick(MouseEventArgs args) |
| 85 | + private async Task HandleEditClick(ConfigurationSetting setting) |
86 | 86 | { |
87 | 87 | var parameters = new Dictionary<string, object?> |
88 | 88 | { |
89 | 89 | { |
90 | 90 | nameof(ConfigurationSettingEditDialog.ConfigurationSetting), |
91 | | - SelectedConfigurationSettings.Single() |
| 91 | + setting |
92 | 92 | } |
93 | 93 | }; |
94 | 94 |
|
95 | 95 | var reference = await DialogService.Show<ConfigurationSettingEditDialog>(parameters); |
96 | 96 | var result = await reference.Result; |
97 | | - if (result is { Data: ConfigurationSetting setting }) |
| 97 | + if (result is { Data: ConfigurationSetting data }) |
98 | 98 | { |
99 | | - await ConfigurationSettingRepository.Update(setting); |
| 99 | + await ConfigurationSettingRepository.Update(data); |
100 | 100 |
|
101 | | - if (ConfigurationSettings.IndexOf(SelectedConfigurationSettings.Single()) is var index and not -1) |
| 101 | + if (ConfigurationSettings.IndexOf(setting) is var index and not -1) |
102 | 102 | { |
103 | 103 | ConfigurationSettings.RemoveAt(index); |
104 | | - ConfigurationSettings.Insert(index, setting); |
| 104 | + ConfigurationSettings.Insert(index, data); |
105 | 105 | StateHasChanged(); |
106 | 106 | } |
107 | | - |
108 | | - SelectedConfigurationSettings.Clear(); |
109 | | - StateHasChanged(); |
110 | 107 | } |
111 | 108 | } |
112 | 109 |
|
113 | | - private async Task HandleDeleteClick(MouseEventArgs args) |
| 110 | + private async Task HandleDeleteClick(params ConfigurationSetting[] settings) |
114 | 111 | { |
115 | | - foreach (var setting in SelectedConfigurationSettings.ToList()) |
| 112 | + foreach (var setting in settings) |
116 | 113 | { |
117 | 114 | await ConfigurationSettingRepository.Remove(setting); |
118 | 115 |
|
|
123 | 120 | } |
124 | 121 | } |
125 | 122 |
|
126 | | - private async Task HandleRefreshClick(MouseEventArgs args) |
| 123 | + private async Task HandleRefreshClick() |
127 | 124 | { |
128 | 125 | ConfigurationSettings.Clear(); |
129 | 126 | StateHasChanged(); |
|
138 | 135 | } |
139 | 136 | } |
140 | 137 |
|
141 | | - private void HandleValuesClick(MouseEventArgs args) |
| 138 | + private void HandleValuesClick() |
142 | 139 | { |
143 | 140 | IsValuesHidden = !IsValuesHidden; |
144 | 141 | StateHasChanged(); |
|
0 commit comments