diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs index 2b4e89e17595..1d8127f6aaea 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/RootMemberTypeTreeController.cs @@ -30,6 +30,7 @@ public RootMemberTypeTreeController(IEntityService entityService, FlagProviderCo public async Task>> Root( CancellationToken cancellationToken, int skip = 0, - int take = 100) + int take = 100, + bool foldersOnly = false) => await GetRoot(skip, take); } diff --git a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/SiblingMemberTypeTreeController.cs b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/SiblingMemberTypeTreeController.cs index 4ed8e9f949e3..bda2fd3e2c60 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/SiblingMemberTypeTreeController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/MemberType/Tree/SiblingMemberTypeTreeController.cs @@ -1,4 +1,4 @@ -using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Http; using Microsoft.AspNetCore.Mvc; using Umbraco.Cms.Api.Common.ViewModels.Pagination; using Umbraco.Cms.Api.Management.Services.Flags; @@ -23,6 +23,7 @@ public async Task> CancellationToken cancellationToken, Guid target, int before, - int after) + int after, + bool foldersOnly = false) => await GetSiblings(target, before, after); } diff --git a/src/Umbraco.Core/Models/EntityContainer.cs b/src/Umbraco.Core/Models/EntityContainer.cs index 6033c6dfa937..b6770913a67d 100644 --- a/src/Umbraco.Core/Models/EntityContainer.cs +++ b/src/Umbraco.Core/Models/EntityContainer.cs @@ -12,6 +12,7 @@ public sealed class EntityContainer : TreeEntityBase, IUmbracoEntity { Constants.ObjectTypes.DataType, Constants.ObjectTypes.DataTypeContainer }, { Constants.ObjectTypes.DocumentType, Constants.ObjectTypes.DocumentTypeContainer }, { Constants.ObjectTypes.MediaType, Constants.ObjectTypes.MediaTypeContainer }, + { Constants.ObjectTypes.MemberType, Constants.ObjectTypes.MemberTypeContainer }, { Constants.ObjectTypes.DocumentBlueprint, Constants.ObjectTypes.DocumentBlueprintContainer }, }; diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs index 9a4927b39ca6..7941ff1668b4 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/EntityContainerRepository.cs @@ -32,8 +32,11 @@ public EntityContainerRepository( { Guid[] allowedContainers = { - Constants.ObjectTypes.DocumentTypeContainer, Constants.ObjectTypes.MediaTypeContainer, - Constants.ObjectTypes.DataTypeContainer, Constants.ObjectTypes.DocumentBlueprintContainer, + Constants.ObjectTypes.DataTypeContainer, + Constants.ObjectTypes.DocumentTypeContainer, + Constants.ObjectTypes.MediaTypeContainer, + Constants.ObjectTypes.MemberTypeContainer, + Constants.ObjectTypes.DocumentBlueprintContainer, }; NodeObjectTypeId = containerObjectType; if (allowedContainers.Contains(NodeObjectTypeId) == false) diff --git a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeContainerRepository.cs b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeContainerRepository.cs index 15c99d879b0a..9d8151d96407 100644 --- a/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeContainerRepository.cs +++ b/src/Umbraco.Infrastructure/Persistence/Repositories/Implement/MemberTypeContainerRepository.cs @@ -1,36 +1,26 @@ -using Umbraco.Cms.Core.Models; +using Microsoft.Extensions.Logging; +using Umbraco.Cms.Core; +using Umbraco.Cms.Core.Cache; using Umbraco.Cms.Core.Persistence.Repositories; +using Umbraco.Cms.Infrastructure.Scoping; -namespace Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement +namespace Umbraco.Cms.Infrastructure.Persistence.Repositories.Implement; + +internal sealed class MemberTypeContainerRepository : EntityContainerRepository, IMemberTypeContainerRepository { - /// - /// A no-op implementation of , as containers aren't supported for members. - /// - /// - /// Introduced to avoid inconsistencies with nullability of dependencies for type repositories for content, media and members. - /// - internal sealed class MemberTypeContainerRepository : IMemberTypeContainerRepository + public MemberTypeContainerRepository( + IScopeAccessor scopeAccessor, + AppCaches cache, + ILogger logger, + IRepositoryCacheVersionService repositoryCacheVersionService, + ICacheSyncService cacheSyncService) + : base( + scopeAccessor, + cache, + logger, + Constants.ObjectTypes.MemberTypeContainer, + repositoryCacheVersionService, + cacheSyncService) { - public void Delete(EntityContainer entity) - { - } - - public bool Exists(int id) => false; - - public EntityContainer? Get(Guid id) => null; - - public IEnumerable Get(string name, int level) => Enumerable.Empty(); - - public bool HasDuplicateName(Guid parentKey, string name) => false; - - public bool HasDuplicateName(int parentId, string name) => false; - - public EntityContainer? Get(int id) => null; - - public IEnumerable GetMany(params int[]? ids) => Enumerable.Empty(); - - public void Save(EntityContainer entity) - { - } } }