Merge branch 'release/17.0'
# Conflicts: # src/Umbraco.Web.UI.Client/package.json # version.json
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"sdk": {
|
||||
"version": "10.0.100-rc.2.25502.107",
|
||||
"version": "10.0.100",
|
||||
"rollForward": "latestFeature",
|
||||
"allowPrerelease": true
|
||||
"allowPrerelease": false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,6 +30,7 @@ public class RootMemberTypeTreeController : MemberTypeTreeControllerBase
|
||||
public async Task<ActionResult<PagedViewModel<MemberTypeTreeItemResponseModel>>> Root(
|
||||
CancellationToken cancellationToken,
|
||||
int skip = 0,
|
||||
int take = 100)
|
||||
int take = 100,
|
||||
bool foldersOnly = false)
|
||||
=> await GetRoot(skip, take);
|
||||
}
|
||||
|
||||
@@ -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 class SiblingMemberTypeTreeController : MemberTypeTreeControllerBase
|
||||
CancellationToken cancellationToken,
|
||||
Guid target,
|
||||
int before,
|
||||
int after)
|
||||
int after,
|
||||
bool foldersOnly = false)
|
||||
=> await GetSiblings(target, before, after);
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ public class GlobalSettings
|
||||
internal const string StaticTimeOut = "00:20:00";
|
||||
internal const string StaticDefaultUILanguage = "en-US";
|
||||
internal const bool StaticHideTopLevelNodeFromPath = true;
|
||||
internal const bool StaticUseHttps = false;
|
||||
internal const bool StaticUseHttps = true;
|
||||
internal const int StaticVersionCheckPeriod = 7;
|
||||
internal const string StaticIconsPath = "umbraco/assets/icons";
|
||||
internal const string StaticUmbracoCssPath = "~/css";
|
||||
|
||||
@@ -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 },
|
||||
};
|
||||
|
||||
|
||||
@@ -32,8 +32,11 @@ internal class EntityContainerRepository : EntityRepositoryBase<int, EntityConta
|
||||
{
|
||||
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)
|
||||
|
||||
@@ -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
|
||||
{
|
||||
/// <summary>
|
||||
/// A no-op implementation of <see cref="IMemberTypeContainerRepository"/>, as containers aren't supported for members.
|
||||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Introduced to avoid inconsistencies with nullability of dependencies for type repositories for content, media and members.
|
||||
/// </remarks>
|
||||
internal sealed class MemberTypeContainerRepository : IMemberTypeContainerRepository
|
||||
public MemberTypeContainerRepository(
|
||||
IScopeAccessor scopeAccessor,
|
||||
AppCaches cache,
|
||||
ILogger<MemberTypeContainerRepository> 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<EntityContainer> Get(string name, int level) => Enumerable.Empty<EntityContainer>();
|
||||
|
||||
public bool HasDuplicateName(Guid parentKey, string name) => false;
|
||||
|
||||
public bool HasDuplicateName(int parentId, string name) => false;
|
||||
|
||||
public EntityContainer? Get(int id) => null;
|
||||
|
||||
public IEnumerable<EntityContainer> GetMany(params int[]? ids) => Enumerable.Empty<EntityContainer>();
|
||||
|
||||
public void Save(EntityContainer entity)
|
||||
{
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -207,24 +207,22 @@ export class UmbContentTypeDesignEditorPropertiesElement extends UmbLitElement {
|
||||
this._ownerContentTypeUnique = workspaceContext?.structure.getOwnerContentTypeUnique();
|
||||
this.#createPropertyTypeWorkspaceRoutes();
|
||||
|
||||
const varyByCulturePromise =
|
||||
this.observe(
|
||||
workspaceContext?.variesByCulture,
|
||||
(variesByCulture) => {
|
||||
this._ownerContentTypeVariesByCulture = variesByCulture;
|
||||
},
|
||||
'observeOwnerVariesByCulture',
|
||||
)?.asPromise() ?? Promise.reject();
|
||||
const varyBySegmentPromise =
|
||||
this.observe(
|
||||
workspaceContext?.variesBySegment,
|
||||
(variesBySegment) => {
|
||||
this._ownerContentTypeVariesBySegment = variesBySegment;
|
||||
},
|
||||
'observeOwnerVariesBySegment',
|
||||
)?.asPromise() ?? Promise.reject();
|
||||
const varyByCulturePromise = this.observe(
|
||||
workspaceContext?.variesByCulture,
|
||||
(variesByCulture) => {
|
||||
this._ownerContentTypeVariesByCulture = variesByCulture;
|
||||
},
|
||||
'observeOwnerVariesByCulture',
|
||||
)?.asPromise();
|
||||
const varyBySegmentPromise = this.observe(
|
||||
workspaceContext?.variesBySegment,
|
||||
(variesBySegment) => {
|
||||
this._ownerContentTypeVariesBySegment = variesBySegment;
|
||||
},
|
||||
'observeOwnerVariesBySegment',
|
||||
)?.asPromise();
|
||||
|
||||
if (this.#initResolver) {
|
||||
if (varyByCulturePromise && varyBySegmentPromise && this.#initResolver) {
|
||||
Promise.all([varyByCulturePromise, varyBySegmentPromise])
|
||||
.then(() => {
|
||||
this.#initResolver?.();
|
||||
|
||||
Reference in New Issue
Block a user