feat: create cloud-free Wino Mail fork
This commit is contained in:
@@ -27,17 +27,10 @@ namespace Wino.Services;
|
||||
|
||||
public class DialogService : DialogServiceBase, IMailDialogService
|
||||
{
|
||||
private readonly IWinoAccountProfileService _winoAccountProfileService;
|
||||
private readonly IWinoAccountDataSyncService _winoAccountDataSyncService;
|
||||
|
||||
public DialogService(INewThemeService themeService,
|
||||
IConfigurationService configurationService,
|
||||
IApplicationResourceManager<ResourceDictionary> applicationResourceManager,
|
||||
IWinoAccountProfileService winoAccountProfileService,
|
||||
IWinoAccountDataSyncService winoAccountDataSyncService) : base(themeService, configurationService, applicationResourceManager)
|
||||
IApplicationResourceManager<ResourceDictionary> applicationResourceManager) : base(themeService, configurationService, applicationResourceManager)
|
||||
{
|
||||
_winoAccountProfileService = winoAccountProfileService;
|
||||
_winoAccountDataSyncService = winoAccountDataSyncService;
|
||||
}
|
||||
|
||||
public void ShowReadOnlyCalendarMessage()
|
||||
@@ -274,82 +267,4 @@ public class DialogService : DialogServiceBase, IMailDialogService
|
||||
return null;
|
||||
}
|
||||
|
||||
public async Task<WinoAccount?> ShowWinoAccountRegistrationDialogAsync()
|
||||
{
|
||||
var dialog = new WinoAccountRegistrationDialog(_winoAccountProfileService)
|
||||
{
|
||||
RequestedTheme = ThemeService.RootTheme.ToWindowsElementTheme()
|
||||
};
|
||||
|
||||
await HandleDialogPresentationAsync(dialog);
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(dialog.ConfirmationEmailAddress))
|
||||
{
|
||||
await ShowMessageAsync(
|
||||
string.Format(Translator.WinoAccount_EmailConfirmationSentDialog_Message, dialog.ConfirmationEmailAddress),
|
||||
Translator.WinoAccount_EmailConfirmationSentDialog_Title);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
public async Task<WinoAccount?> ShowWinoAccountLoginDialogAsync()
|
||||
{
|
||||
var dialog = new WinoAccountLoginDialog(_winoAccountProfileService)
|
||||
{
|
||||
RequestedTheme = ThemeService.RootTheme.ToWindowsElementTheme()
|
||||
};
|
||||
|
||||
var result = await HandleDialogPresentationAsync(dialog);
|
||||
|
||||
if (dialog.EmailConfirmationRequiredDetails != null && !string.IsNullOrWhiteSpace(dialog.PendingConfirmationEmailAddress))
|
||||
{
|
||||
var confirmationDialog = new WinoAccountEmailConfirmationRequiredDialog(
|
||||
_winoAccountProfileService,
|
||||
dialog.PendingConfirmationEmailAddress,
|
||||
dialog.EmailConfirmationRequiredDetails)
|
||||
{
|
||||
RequestedTheme = ThemeService.RootTheme.ToWindowsElementTheme()
|
||||
};
|
||||
|
||||
await HandleDialogPresentationAsync(confirmationDialog);
|
||||
|
||||
if (confirmationDialog.ResendSucceeded)
|
||||
{
|
||||
await ShowMessageAsync(
|
||||
string.Format(Translator.WinoAccount_EmailConfirmationResentDialog_Message, dialog.PendingConfirmationEmailAddress),
|
||||
Translator.WinoAccount_EmailConfirmationResentDialog_Title);
|
||||
}
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrWhiteSpace(dialog.PasswordResetEmailAddress))
|
||||
{
|
||||
await ShowMessageAsync(
|
||||
string.Format(Translator.WinoAccount_ForgotPasswordDialog_SuccessMessage, dialog.PasswordResetEmailAddress),
|
||||
Translator.WinoAccount_ForgotPasswordDialog_SuccessTitle);
|
||||
|
||||
return null;
|
||||
}
|
||||
|
||||
return dialog.Result;
|
||||
}
|
||||
|
||||
public async Task<WinoAccountSyncExportResult?> ShowWinoAccountExportDialogAsync()
|
||||
{
|
||||
var dialog = new WinoAccountSyncExportDialog(_winoAccountDataSyncService)
|
||||
{
|
||||
RequestedTheme = ThemeService.RootTheme.ToWindowsElementTheme()
|
||||
};
|
||||
|
||||
await HandleDialogPresentationAsync(dialog);
|
||||
|
||||
if (dialog.FailureException != null)
|
||||
{
|
||||
throw dialog.FailureException;
|
||||
}
|
||||
|
||||
return dialog.Result;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -91,7 +91,6 @@ public class NavigationService : NavigationServiceBase, INavigationService
|
||||
WinoPage.EmailTemplatesPage,
|
||||
WinoPage.CreateEmailTemplatePage,
|
||||
WinoPage.StoragePage,
|
||||
WinoPage.WinoAccountManagementPage,
|
||||
WinoPage.CalendarSettingsPage,
|
||||
WinoPage.CalendarRenderingSettingsPage,
|
||||
WinoPage.CalendarNotificationSettingsPage,
|
||||
@@ -163,7 +162,6 @@ public class NavigationService : NavigationServiceBase, INavigationService
|
||||
WinoPage.EmailTemplatesPage => typeof(EmailTemplatesPage),
|
||||
WinoPage.CreateEmailTemplatePage => typeof(CreateEmailTemplatePage),
|
||||
WinoPage.StoragePage => typeof(StoragePage),
|
||||
WinoPage.WinoAccountManagementPage => typeof(WinoAccountManagementPage),
|
||||
WinoPage.WelcomeHostPage => typeof(WelcomeHostPage),
|
||||
WinoPage.ProviderSelectionPage => typeof(ProviderSelectionPage),
|
||||
WinoPage.AccountSetupProgressPage => typeof(AccountSetupProgressPage),
|
||||
|
||||
@@ -405,17 +405,6 @@ public class PreferencesService(IConfigurationService configurationService) : Ob
|
||||
set => SetPropertyAndSave(nameof(IsSystemTrayIconEnabled), value);
|
||||
}
|
||||
|
||||
public bool IsWinoAccountButtonHidden
|
||||
{
|
||||
get => _configurationService.Get(nameof(IsWinoAccountButtonHidden), false);
|
||||
set => SetPropertyAndSave(nameof(IsWinoAccountButtonHidden), value);
|
||||
}
|
||||
|
||||
public bool IsAiActionsPanelHidden
|
||||
{
|
||||
get => _configurationService.Get(nameof(IsAiActionsPanelHidden), false);
|
||||
set => SetPropertyAndSave(nameof(IsAiActionsPanelHidden), value);
|
||||
}
|
||||
|
||||
public string AiDefaultTranslationLanguageCode
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user