|
|
@ -22,58 +22,54 @@ |
|
|
@foreach (var group in Groups) |
|
|
@foreach (var group in Groups) |
|
|
{ |
|
|
{ |
|
|
<MudTabPanel Text="@group.DisplayName"> |
|
|
<MudTabPanel Text="@group.DisplayName"> |
|
|
<MudGrid> |
|
|
<MudStack Spacing="2"> |
|
|
<MudItem xs="12"> |
|
|
<MudText Typo="Typo.h6">@group.DisplayName</MudText> |
|
|
<MudText Typo="Typo.h6">@group.DisplayName</MudText> |
|
|
@foreach (var feature in group.Features) |
|
|
</MudItem> |
|
|
{ |
|
|
<MudItem xs="12"> |
|
|
var disabled = IsDisabled(feature); |
|
|
@foreach (var feature in group.Features) |
|
|
<div style="@GetFeatureStyles(feature)"> |
|
|
{ |
|
|
@if (feature.ValueType is FreeTextStringValueType) |
|
|
var disabled = IsDisabled(feature); |
|
|
{ |
|
|
<div style="@GetFeatureStyles(feature)"> |
|
|
<MudTextField Label="@GetShownName(feature)" Disabled="@disabled" Value="@feature.Value" |
|
|
@if (feature.ValueType is FreeTextStringValueType) |
|
|
ValueChanged="@(async ([CanBeNull] string v) => await OnFeatureValueChangedAsync(v, feature))" /> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
{ |
|
|
{ |
|
|
<MudTextField Label="@GetShownName(feature)" Disabled="@disabled" Value="@feature.Value" |
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
ValueChanged="@(async ([CanBeNull] string v) => await OnFeatureValueChangedAsync(v, feature))" /> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
|
|
|
{ |
|
|
|
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@if (feature.ValueType is SelectionStringValueType) |
|
|
@if (feature.ValueType is SelectionStringValueType) |
|
|
{ |
|
|
{ |
|
|
var items = ((SelectionStringValueType)feature.ValueType).ItemSource.Items; |
|
|
var items = ((SelectionStringValueType)feature.ValueType).ItemSource.Items; |
|
|
var selectedValue = SelectionStringValues[feature.Name]; |
|
|
var selectedValue = SelectionStringValues[feature.Name]; |
|
|
<MudSelect T="string" Label="@GetShownName(feature)" Disabled="@disabled" |
|
|
<MudSelect T="string" Label="@GetShownName(feature)" Disabled="@disabled" |
|
|
Value="@selectedValue" ValueChanged="@(s => SelectionStringValues[feature.Name] = s)"> |
|
|
Value="@selectedValue" ValueChanged="@(s => SelectionStringValues[feature.Name] = s)"> |
|
|
@foreach (var item in items) |
|
|
@foreach (var item in items) |
|
|
{ |
|
|
|
|
|
<MudSelectItem Value="@item.Value"> |
|
|
|
|
|
@CreateStringLocalizer(item.DisplayText.ResourceName).GetString(item.DisplayText.Name) |
|
|
|
|
|
</MudSelectItem> |
|
|
|
|
|
} |
|
|
|
|
|
</MudSelect> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
|
|
|
{ |
|
|
{ |
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
<MudSelectItem Value="@item.Value"> |
|
|
|
|
|
@CreateStringLocalizer(item.DisplayText.ResourceName).GetString(item.DisplayText.Name) |
|
|
|
|
|
</MudSelectItem> |
|
|
} |
|
|
} |
|
|
|
|
|
</MudSelect> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
|
|
|
{ |
|
|
|
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
} |
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@if (feature.ValueType is ToggleStringValueType) |
|
|
@if (feature.ValueType is ToggleStringValueType) |
|
|
|
|
|
{ |
|
|
|
|
|
<MudCheckBox Disabled="@disabled" Value="@ToggleValues[feature.Name]" |
|
|
|
|
|
ValueChanged="@(async (bool v) => await OnSelectedValueChangedAsync(v, feature))" |
|
|
|
|
|
Label="@GetShownName(feature)" /> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
{ |
|
|
{ |
|
|
<MudCheckBox Disabled="@disabled" Value="@ToggleValues[feature.Name]" |
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
ValueChanged="@(async (bool v) => await OnSelectedValueChangedAsync(v, feature))" |
|
|
|
|
|
Label="@GetShownName(feature)" /> |
|
|
|
|
|
@if (feature.Description != null) |
|
|
|
|
|
{ |
|
|
|
|
|
<MudText Typo="Typo.caption" Class="mt-1">@feature.Description</MudText> |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
} |
|
|
</div> |
|
|
} |
|
|
} |
|
|
</div> |
|
|
</MudItem> |
|
|
} |
|
|
</MudGrid> |
|
|
</MudStack> |
|
|
</MudTabPanel> |
|
|
</MudTabPanel> |
|
|
} |
|
|
} |
|
|
</MudTabs> |
|
|
</MudTabs> |
|
|
|