file scoped namespaces (#565)

This commit is contained in:
Aleh Khantsevich
2025-02-16 11:54:23 +01:00
committed by GitHub
parent cf9869b71e
commit 3ddc1a6229
617 changed files with 32107 additions and 32721 deletions

View File

@@ -2,32 +2,31 @@
using Wino.Core.Domain.Entities.Shared;
using Wino.Core.Domain.Enums;
namespace Wino.Core.Domain.Models.Folders
namespace Wino.Core.Domain.Models.Folders;
/// <summary>
/// Grouped folder information for the menu for given account.
/// </summary>
public class AccountFolderTree
{
/// <summary>
/// Grouped folder information for the menu for given account.
/// </summary>
public class AccountFolderTree
public MailAccount Account { get; }
public List<IMailItemFolder> Folders { get; set; } = new List<IMailItemFolder>();
public AccountFolderTree(MailAccount account)
{
public MailAccount Account { get; }
public List<IMailItemFolder> Folders { get; set; } = new List<IMailItemFolder>();
Account = account;
}
public AccountFolderTree(MailAccount account)
public bool HasSpecialTypeFolder(SpecialFolderType type)
{
foreach (var folderStructure in Folders)
{
Account = account;
bool hasSpecialFolder = folderStructure.ContainsSpecialFolderType(type);
if (hasSpecialFolder)
return true;
}
public bool HasSpecialTypeFolder(SpecialFolderType type)
{
foreach (var folderStructure in Folders)
{
bool hasSpecialFolder = folderStructure.ContainsSpecialFolderType(type);
if (hasSpecialFolder)
return true;
}
return false;
}
return false;
}
}

View File

@@ -2,13 +2,12 @@
using Wino.Core.Domain.Interfaces;
using Wino.Core.Domain.Models.Menus;
namespace Wino.Core.Domain.Models.Folders
{
public class FolderOperationMenuItem : MenuOperationItemBase<FolderOperation>, IMenuOperation
{
protected FolderOperationMenuItem(FolderOperation operation, bool isEnabled) : base(operation, isEnabled) { }
namespace Wino.Core.Domain.Models.Folders;
public static FolderOperationMenuItem Create(FolderOperation operation, bool isEnabled = true)
=> new FolderOperationMenuItem(operation, isEnabled);
}
public class FolderOperationMenuItem : MenuOperationItemBase<FolderOperation>, IMenuOperation
{
protected FolderOperationMenuItem(FolderOperation operation, bool isEnabled) : base(operation, isEnabled) { }
public static FolderOperationMenuItem Create(FolderOperation operation, bool isEnabled = true)
=> new FolderOperationMenuItem(operation, isEnabled);
}

View File

@@ -1,12 +1,11 @@
using Wino.Core.Domain.Entities.Mail;
using Wino.Core.Domain.Enums;
namespace Wino.Core.Domain.Models.Folders
{
/// <summary>
/// Encapsulates a request to prepare a folder operation like Rename, Delete, etc.
/// </summary>
/// <param name="Action">Folder operation.</param>
/// <param name="Folder">Target folder.</param>
public record FolderOperationPreperationRequest(FolderOperation Action, MailItemFolder Folder) { }
}
namespace Wino.Core.Domain.Models.Folders;
/// <summary>
/// Encapsulates a request to prepare a folder operation like Rename, Delete, etc.
/// </summary>
/// <param name="Action">Folder operation.</param>
/// <param name="Folder">Target folder.</param>
public record FolderOperationPreperationRequest(FolderOperation Action, MailItemFolder Folder) { }

View File

@@ -2,30 +2,29 @@
using System.Collections.Generic;
using Wino.Core.Domain.Enums;
namespace Wino.Core.Domain.Models.Folders
{
public interface IMailItemFolder
{
string BackgroundColorHex { get; set; }
string DeltaToken { get; set; }
string FolderName { get; set; }
long HighestModeSeq { get; set; }
Guid Id { get; set; }
bool IsHidden { get; set; }
bool IsSticky { get; set; }
bool IsSynchronizationEnabled { get; set; }
bool IsSystemFolder { get; set; }
DateTime? LastSynchronizedDate { get; set; }
Guid MailAccountId { get; set; }
string ParentRemoteFolderId { get; set; }
string RemoteFolderId { get; set; }
SpecialFolderType SpecialFolderType { get; set; }
string TextColorHex { get; set; }
uint UidValidity { get; set; }
List<IMailItemFolder> ChildFolders { get; set; }
bool IsMoveTarget { get; }
bool ShowUnreadCount { get; set; }
namespace Wino.Core.Domain.Models.Folders;
bool ContainsSpecialFolderType(SpecialFolderType type);
}
public interface IMailItemFolder
{
string BackgroundColorHex { get; set; }
string DeltaToken { get; set; }
string FolderName { get; set; }
long HighestModeSeq { get; set; }
Guid Id { get; set; }
bool IsHidden { get; set; }
bool IsSticky { get; set; }
bool IsSynchronizationEnabled { get; set; }
bool IsSystemFolder { get; set; }
DateTime? LastSynchronizedDate { get; set; }
Guid MailAccountId { get; set; }
string ParentRemoteFolderId { get; set; }
string RemoteFolderId { get; set; }
SpecialFolderType SpecialFolderType { get; set; }
string TextColorHex { get; set; }
uint UidValidity { get; set; }
List<IMailItemFolder> ChildFolders { get; set; }
bool IsMoveTarget { get; }
bool ShowUnreadCount { get; set; }
bool ContainsSpecialFolderType(SpecialFolderType type);
}

View File

@@ -1,10 +1,9 @@
using Wino.Core.Domain.Entities.Mail;
namespace Wino.Core.Domain.Models.Folders
{
public record SystemFolderConfiguration(MailItemFolder SentFolder,
MailItemFolder DraftFolder,
MailItemFolder ArchiveFolder,
MailItemFolder TrashFolder,
MailItemFolder JunkFolder);
}
namespace Wino.Core.Domain.Models.Folders;
public record SystemFolderConfiguration(MailItemFolder SentFolder,
MailItemFolder DraftFolder,
MailItemFolder ArchiveFolder,
MailItemFolder TrashFolder,
MailItemFolder JunkFolder);