Files
jdescopingtool/NEW/src/Utils/JdeScoping.SecureStoreManager/Views/SecretEditDialog.axaml
T
Joseph Doherty fbe58a81e4 refactor(securestoremanager): add platform service abstractions and constants
Implement deferred code review findings:
- Add IDialogService/IClipboardService interfaces for testable platform operations
- Create AvaloniaDialogService and AvaloniaClipboardService implementations
- Extract dialog strings and file extensions to centralized Constants classes
- Refactor ViewModels to use DI instead of event delegates
- Update tests to use mock services
2026-01-19 16:54:35 -05:00

49 lines
2.1 KiB
XML

<Window xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:vm="clr-namespace:JdeScoping.SecureStoreManager.ViewModels"
x:Class="JdeScoping.SecureStoreManager.Views.SecretEditDialog"
Title="{Binding DialogTitle}"
Height="280" Width="450"
WindowStartupLocation="CenterOwner"
CanResize="False"
ShowInTaskbar="False">
<!-- DataContext is set in code-behind -->
<Grid Margin="15" RowDefinitions="Auto,Auto,*,Auto">
<!-- Key -->
<Grid Grid.Row="0" ColumnDefinitions="80,*" Margin="0,0,0,10">
<TextBlock Grid.Column="0" Text="Key:" VerticalAlignment="Center" Margin="0,5,10,5" />
<TextBox Grid.Column="1"
Text="{Binding Key, Mode=TwoWay}"
IsEnabled="{Binding IsKeyEditable}"
Margin="0,5" />
</Grid>
<!-- Value -->
<Grid Grid.Row="1" ColumnDefinitions="80,*" Margin="0,0,0,10">
<TextBlock Grid.Column="0" Text="Value:" VerticalAlignment="Top" Margin="0,8,10,5" />
<TextBox Grid.Column="1"
Text="{Binding Value, Mode=TwoWay}"
TextWrapping="Wrap"
AcceptsReturn="True"
Height="80"
Margin="0,5" />
</Grid>
<!-- Validation Error -->
<TextBlock Grid.Row="2"
Text="{Binding ValidationError}"
Foreground="Red"
FontSize="11"
Margin="0,5,0,0"
IsVisible="{Binding ValidationError, Converter={StaticResource StringToBool}}"
VerticalAlignment="Top" />
<!-- Buttons -->
<StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right" Spacing="10">
<Button Content="Save" Click="SaveButton_Click" IsEnabled="{Binding IsValid}" MinWidth="80" Padding="10,5" />
<Button Content="Cancel" Click="CancelButton_Click" MinWidth="80" Padding="10,5" />
</StackPanel>
</Grid>
</Window>