Import functionality for wino accounts, calendar sync UI, bunch of shell improvements
This commit is contained in:
@@ -5,7 +5,6 @@ using Wino.Core.Domain.Enums;
|
||||
using Wino.Core.Domain.Models.Accounts;
|
||||
using Wino.Core.Domain.Models.Common;
|
||||
using Wino.Core.Domain.Models.Printing;
|
||||
using Wino.Core.Domain.Models.Updates;
|
||||
|
||||
namespace Wino.Core.Domain.Interfaces;
|
||||
|
||||
@@ -32,10 +31,4 @@ public interface IDialogServiceBase
|
||||
Task<List<PickedFileMetadata>> PickFilesMetadataAsync(params object[] typeFilters);
|
||||
Task<string> PickFilePathAsync(string saveFileName);
|
||||
Task<WebView2PrintSettingsModel> ShowPrintDialogAsync(WebView2PrintSettingsModel initialSettings = null);
|
||||
|
||||
/// <summary>
|
||||
/// Presents the "What's New" dialog for the current version.
|
||||
/// This dialog is undismissable and runs any pending migrations when the user clicks "Get Started".
|
||||
/// </summary>
|
||||
Task ShowWhatIsNewDialogAsync(UpdateNotes notes);
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ using Wino.Core.Domain.Entities.Mail;
|
||||
using Wino.Core.Domain.Entities.Shared;
|
||||
using Wino.Core.Domain.Enums;
|
||||
using Wino.Core.Domain.Models;
|
||||
using Wino.Core.Domain.Models.Accounts;
|
||||
using Wino.Core.Domain.Models.Calendar;
|
||||
using Wino.Core.Domain.Models.Folders;
|
||||
|
||||
@@ -74,4 +75,6 @@ public interface IMailDialogService : IDialogServiceBase
|
||||
Task<WinoAccount?> ShowWinoAccountRegistrationDialogAsync();
|
||||
|
||||
Task<WinoAccount?> ShowWinoAccountLoginDialogAsync();
|
||||
|
||||
Task<WinoAccountSyncExportResult?> ShowWinoAccountExportDialogAsync();
|
||||
}
|
||||
|
||||
@@ -51,6 +51,8 @@ public interface ICalendarShellClient : IShellClient
|
||||
int SelectedDateNavigationHeaderIndex { get; }
|
||||
VisibleDateRange? CurrentVisibleRange { get; }
|
||||
string VisibleDateRangeText { get; }
|
||||
bool CanSynchronizeCalendars { get; }
|
||||
ICommand SyncCommand { get; }
|
||||
ICommand TodayClickedCommand { get; }
|
||||
ICommand DateClickedCommand { get; }
|
||||
ICommand PreviousDateRangeCommand { get; }
|
||||
|
||||
@@ -6,6 +6,7 @@ using Wino.Core.Domain.Models.Accounts;
|
||||
using Wino.Mail.Api.Contracts.Ai;
|
||||
using Wino.Mail.Api.Contracts.Auth;
|
||||
using Wino.Mail.Api.Contracts.Common;
|
||||
using Wino.Mail.Api.Contracts.Users;
|
||||
|
||||
namespace Wino.Core.Domain.Interfaces;
|
||||
|
||||
@@ -26,5 +27,7 @@ public interface IWinoAccountApiClient
|
||||
Task<ApiEnvelope<WinoStoreCollectionsIdTicketInfo>> CreatePurchaseIdTicketAsync(CancellationToken cancellationToken = default);
|
||||
Task<ApiEnvelope<JsonElement>> SyncStoreEntitlementsAsync(string? storeIdKey, string? purchaseIdKey, CancellationToken cancellationToken = default);
|
||||
Task<string?> GetSettingsAsync(CancellationToken cancellationToken = default);
|
||||
Task<bool> SaveSettingsAsync(string settingsJson, CancellationToken cancellationToken = default);
|
||||
Task SaveSettingsAsync(string settingsJson, CancellationToken cancellationToken = default);
|
||||
Task<UserMailboxSyncListDto> GetMailboxesAsync(CancellationToken cancellationToken = default);
|
||||
Task ReplaceMailboxesAsync(ReplaceUserMailboxesRequestDto request, CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
using Wino.Core.Domain.Models.Accounts;
|
||||
|
||||
namespace Wino.Core.Domain.Interfaces;
|
||||
|
||||
public interface IWinoAccountDataSyncService
|
||||
{
|
||||
Task<WinoAccountSyncExportResult> ExportAsync(WinoAccountSyncSelection selection, CancellationToken cancellationToken = default);
|
||||
Task<WinoAccountSyncImportResult> ImportAsync(WinoAccountSyncSelection selection, CancellationToken cancellationToken = default);
|
||||
}
|
||||
@@ -8,6 +8,7 @@ using Wino.Core.Domain.Models.Accounts;
|
||||
using Wino.Mail.Api.Contracts.Ai;
|
||||
using Wino.Mail.Api.Contracts.Auth;
|
||||
using Wino.Mail.Api.Contracts.Common;
|
||||
using Wino.Mail.Api.Contracts.Users;
|
||||
|
||||
namespace Wino.Core.Domain.Interfaces;
|
||||
|
||||
@@ -28,6 +29,10 @@ public interface IWinoAccountProfileService
|
||||
Task<ApiEnvelope<AiTextResultDto>> TranslateAsync(string html, string targetLanguage, CancellationToken cancellationToken = default);
|
||||
Task<ApiEnvelope<AiTextResultDto>> RewriteAsync(string html, string mode, CancellationToken cancellationToken = default);
|
||||
Task<ApiEnvelope<JsonElement>> SyncStoreEntitlementsAsync(CancellationToken cancellationToken = default);
|
||||
Task<string?> GetSettingsAsync(CancellationToken cancellationToken = default);
|
||||
Task SaveSettingsAsync(string settingsJson, CancellationToken cancellationToken = default);
|
||||
Task<UserMailboxSyncListDto> GetMailboxesAsync(CancellationToken cancellationToken = default);
|
||||
Task ReplaceMailboxesAsync(ReplaceUserMailboxesRequestDto request, CancellationToken cancellationToken = default);
|
||||
Task<bool> ProcessBillingCallbackAsync(Uri callbackUri, CancellationToken cancellationToken = default);
|
||||
Task SignOutAsync(CancellationToken cancellationToken = default);
|
||||
}
|
||||
|
||||
@@ -13,6 +13,7 @@ public interface INavigationService
|
||||
|
||||
Type GetPageType(WinoPage winoPage);
|
||||
bool ChangeApplicationMode(WinoApplicationMode mode);
|
||||
bool ChangeApplicationMode(WinoApplicationMode mode, ShellModeActivationContext activationContext);
|
||||
bool CanGoBack();
|
||||
void GoBack(NavigationTransitionEffect slideEffect = NavigationTransitionEffect.FromRight);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user