Wino accounts settings.
This commit is contained in:
@@ -0,0 +1,107 @@
|
||||
<abstract:WinoAccountManagementPageAbstract
|
||||
x:Class="Wino.Views.Settings.WinoAccountManagementPage"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:abstract="using:Wino.Views.Abstract"
|
||||
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:domain="using:Wino.Core.Domain"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
Title="{x:Bind domain:Translator.WinoAccount_SettingsSection_Title}"
|
||||
mc:Ignorable="d">
|
||||
|
||||
<ScrollViewer>
|
||||
<StackPanel Spacing="{StaticResource SettingsCardSpacing}">
|
||||
<TextBlock
|
||||
Margin="0,0,0,8"
|
||||
Foreground="{ThemeResource TextFillColorSecondaryBrush}"
|
||||
Style="{StaticResource BodyTextBlockStyle}"
|
||||
Text="{x:Bind domain:Translator.WinoAccount_Management_Description}" />
|
||||
|
||||
<StackPanel
|
||||
x:Name="BusyPanel"
|
||||
HorizontalAlignment="Center"
|
||||
x:Load="{x:Bind ViewModel.IsBusy, Mode=OneWay}"
|
||||
Spacing="8">
|
||||
<ProgressRing
|
||||
Width="32"
|
||||
Height="32"
|
||||
IsActive="True" />
|
||||
<TextBlock HorizontalAlignment="Center" Text="{x:Bind domain:Translator.Busy}" />
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel
|
||||
x:Name="SignedOutPanel"
|
||||
x:Load="{x:Bind ViewModel.IsSignedOut, Mode=OneWay}"
|
||||
Spacing="{StaticResource SettingsCardSpacing}">
|
||||
<controls:SettingsCard Description="{x:Bind domain:Translator.WinoAccount_Management_SignedOutDescription}" Header="{x:Bind domain:Translator.WinoAccount_Management_SignedOutTitle}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Contact" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
<StackPanel Orientation="Horizontal" Spacing="12">
|
||||
<Button Command="{x:Bind ViewModel.RegisterCommand}" Content="{x:Bind domain:Translator.Buttons_CreateAccount}" />
|
||||
<Button Command="{x:Bind ViewModel.SignInCommand}" Content="{x:Bind domain:Translator.Buttons_SignIn}" />
|
||||
</StackPanel>
|
||||
</controls:SettingsCard>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel
|
||||
x:Name="SignedInPanel"
|
||||
x:Load="{x:Bind ViewModel.IsSignedIn, Mode=OneWay}"
|
||||
Spacing="{StaticResource SettingsCardSpacing}">
|
||||
<controls:SettingsCard Description="{x:Bind domain:Translator.WinoAccount_Management_AccountCardDescription}" Header="{x:Bind domain:Translator.WinoAccount_Management_AccountCardTitle}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Contact" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
<StackPanel Spacing="8">
|
||||
<TextBlock FontWeight="SemiBold" Text="{x:Bind ViewModel.AccountEmail, Mode=OneWay}" />
|
||||
<TextBlock Text="{x:Bind ViewModel.AccountStatusText, Mode=OneWay}" />
|
||||
<Button
|
||||
HorizontalAlignment="Left"
|
||||
Command="{x:Bind ViewModel.SignOutCommand}"
|
||||
Content="{x:Bind domain:Translator.WinoAccount_SignOutButton_Action}" />
|
||||
</StackPanel>
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard Description="{x:Bind domain:Translator.WinoAccount_Management_AiPackCardDescription}" Header="{x:Bind domain:Translator.WinoAccount_Management_AiPackCardTitle}">
|
||||
|
||||
<StackPanel Spacing="8">
|
||||
<TextBlock FontWeight="SemiBold" Text="{x:Bind ViewModel.AiPackStateText, Mode=OneWay}" />
|
||||
<TextBlock
|
||||
x:Name="CanShowAITextBlock"
|
||||
x:Load="{x:Bind ViewModel.CanShowAiUsage, Mode=OneWay}"
|
||||
Text="{x:Bind ViewModel.AiUsageSummary, Mode=OneWay}"
|
||||
TextWrapping="WrapWholeWords" />
|
||||
<TextBlock
|
||||
x:Name="BillingBlock"
|
||||
x:Load="{x:Bind ViewModel.CanShowAiUsage, Mode=OneWay}"
|
||||
Foreground="{ThemeResource TextFillColorSecondaryBrush}"
|
||||
Text="{x:Bind ViewModel.AiBillingPeriodSummary, Mode=OneWay}"
|
||||
TextWrapping="WrapWholeWords" />
|
||||
<TextBlock
|
||||
x:Name="CanBuyAIPack"
|
||||
x:Load="{x:Bind ViewModel.CanShowBuyAiPack, Mode=OneWay}"
|
||||
Text="{x:Bind domain:Translator.WinoAccount_Management_AiPackBuyDescription}"
|
||||
TextWrapping="WrapWholeWords" />
|
||||
<Button
|
||||
x:Name="OpenBuyPageButton"
|
||||
HorizontalAlignment="Left"
|
||||
x:Load="{x:Bind ViewModel.CanShowBuyAiPack, Mode=OneWay}"
|
||||
Command="{x:Bind ViewModel.OpenBuyPageCommand}"
|
||||
Content="{x:Bind domain:Translator.Buttons_Purchase}" />
|
||||
</StackPanel>
|
||||
</controls:SettingsCard>
|
||||
|
||||
<controls:SettingsCard Description="{x:Bind domain:Translator.WinoAccount_Management_SettingsCardDescription}" Header="{x:Bind domain:Translator.WinoAccount_Management_SettingsCardTitle}">
|
||||
<controls:SettingsCard.HeaderIcon>
|
||||
<SymbolIcon Symbol="Sync" />
|
||||
</controls:SettingsCard.HeaderIcon>
|
||||
<StackPanel Orientation="Horizontal" Spacing="12">
|
||||
<Button Command="{x:Bind ViewModel.ExportSettingsCommand}" Content="{x:Bind domain:Translator.Buttons_Export}" />
|
||||
<Button Command="{x:Bind ViewModel.ImportSettingsCommand}" Content="{x:Bind domain:Translator.Buttons_Import}" />
|
||||
</StackPanel>
|
||||
</controls:SettingsCard>
|
||||
</StackPanel>
|
||||
</StackPanel>
|
||||
</ScrollViewer>
|
||||
</abstract:WinoAccountManagementPageAbstract>
|
||||
@@ -0,0 +1,11 @@
|
||||
using Wino.Views.Abstract;
|
||||
|
||||
namespace Wino.Views.Settings;
|
||||
|
||||
public sealed partial class WinoAccountManagementPage : WinoAccountManagementPageAbstract
|
||||
{
|
||||
public WinoAccountManagementPage()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user