From 5032a78bf9f3e9b5597d50470da1522f9daa04c1 Mon Sep 17 00:00:00 2001 From: leekelleher Date: Tue, 12 Nov 2024 16:54:19 +0000 Subject: [PATCH 01/12] Tiptap: prevents pasted HTML fragments containing images, being uploaded to the server. --- .../tiptap/extensions/core/media-upload.extension.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/Umbraco.Web.UI.Client/src/packages/tiptap/extensions/core/media-upload.extension.ts b/src/Umbraco.Web.UI.Client/src/packages/tiptap/extensions/core/media-upload.extension.ts index b6770bc230..45921e2572 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/tiptap/extensions/core/media-upload.extension.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/tiptap/extensions/core/media-upload.extension.ts @@ -69,6 +69,12 @@ export default class UmbTiptapMediaUploadExtensionApi extends UmbTiptapExtension }); host.addEventListener('paste', (event) => { + const htmlContent = event.clipboardData?.getData('text/html'); + if (htmlContent) { + // If there is HTML content, exit early to prevent uploading the remote file(s). + return; + } + const files = event.clipboardData?.files; if (!files) return; From 8d631e9dc18cdf57f17a665ce0d7745d38804adf Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Tue, 12 Nov 2024 21:09:51 +0100 Subject: [PATCH 02/12] Update NuGet packages 2024-11-12 + Final .NET 9 (#17511) * Update nuget packages * Update message pack * Updated microsoft packages and .net to final .net 9 * Update more rcs to final --- Directory.Packages.props | 56 +++++++++++++++++----------------- global.json | 4 +-- tests/Directory.Packages.props | 8 ++--- 3 files changed, 34 insertions(+), 34 deletions(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 871c5b2e8f..58be744650 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -12,28 +12,28 @@ - + - - - + + + - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + @@ -47,20 +47,20 @@ - + - + - - - + + + @@ -82,17 +82,17 @@ - + - + - + diff --git a/global.json b/global.json index 1ada742598..41c9ad2ed8 100644 --- a/global.json +++ b/global.json @@ -1,7 +1,7 @@ { "sdk": { - "version": "9.0.100-rc.2.24474.11", + "version": "9.0.100", "rollForward": "latestFeature", - "allowPrerelease": true + "allowPrerelease": false } } diff --git a/tests/Directory.Packages.props b/tests/Directory.Packages.props index 3b4a2714b8..7d243d287a 100644 --- a/tests/Directory.Packages.props +++ b/tests/Directory.Packages.props @@ -5,12 +5,12 @@ - - + + - - + + From 578f19dc78c5796bfde5b20283355fee53b9173f Mon Sep 17 00:00:00 2001 From: Bjarke Berg Date: Wed, 13 Nov 2024 08:47:20 +0100 Subject: [PATCH 03/12] Updated Swashbuckle.AspNetCore --- Directory.Packages.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Directory.Packages.props b/Directory.Packages.props index 58be744650..af241ec408 100644 --- a/Directory.Packages.props +++ b/Directory.Packages.props @@ -75,7 +75,7 @@ - + From b9b7cb6d850de634658c5c3394033e04746daf39 Mon Sep 17 00:00:00 2001 From: Zeegaan Date: Wed, 13 Nov 2024 09:27:29 +0100 Subject: [PATCH 04/12] Rename extension methods back --- .../OpenApi/SchemaIdHandler.cs | 2 +- .../Services/ApiMediaQueryService.cs | 2 +- .../Services/RequestRedirectService.cs | 2 +- .../Controllers/Indexer/AllIndexerController.cs | 2 +- .../Controllers/Searcher/AllSearcherController.cs | 2 +- .../umbraco/UmbracoWebsite/Maintenance.cshtml | 2 +- .../umbraco/UmbracoWebsite/NoNodes.cshtml | 2 +- .../umbraco/UmbracoWebsite/NotFound.cshtml | 2 +- .../Configuration/ModelsBuilderConfigExtensions.cs | 2 +- .../DeliveryApi/ApiContentRouteBuilder.cs | 2 +- src/Umbraco.Core/Extensions/StringExtensions.cs | 10 +++++----- src/Umbraco.Core/Models/Content.cs | 12 ++++++------ src/Umbraco.Core/Models/ContentBase.cs | 12 ++++++------ src/Umbraco.Core/Routing/UmbracoRequestPaths.cs | 4 ++-- .../BackOfficeExamineSearcher.cs | 2 +- src/Umbraco.Examine.Lucene/LuceneIndexDiagnostics.cs | 2 +- .../DeliveryApi/ApiRichTextElementParser.cs | 2 +- .../Install/FilePermissionHelper.cs | 4 ++-- .../Logging/Serilog/LoggerConfigExtensions.cs | 2 +- .../Persistence/NPocoSqlExtensions.cs | 4 ++-- .../Repositories/Implement/UserRepository.cs | 2 +- .../Persistence/SqlSyntax/SqlSyntaxProviderBase.cs | 2 +- .../Extensions/ApplicationBuilderExtensions.cs | 2 +- .../Extensions/LinkGeneratorExtensions.cs | 2 +- .../Extensions/UrlHelperExtensions.cs | 4 ++-- .../DependencyInjection/UmbracoBuilderExtensions.cs | 2 +- .../ManagementApi/ManagementApiTest.cs | 2 +- .../ExamineExternalIndexSearcherTest.cs | 2 +- .../ShortStringHelper/StringExtensionsTests.cs | 4 ++-- .../Persistence/NPocoTests/NPocoSqlTemplateTests.cs | 2 +- 30 files changed, 49 insertions(+), 49 deletions(-) diff --git a/src/Umbraco.Cms.Api.Common/OpenApi/SchemaIdHandler.cs b/src/Umbraco.Cms.Api.Common/OpenApi/SchemaIdHandler.cs index 6e96cbed42..c08e0be19a 100644 --- a/src/Umbraco.Cms.Api.Common/OpenApi/SchemaIdHandler.cs +++ b/src/Umbraco.Cms.Api.Common/OpenApi/SchemaIdHandler.cs @@ -36,7 +36,7 @@ public class SchemaIdHandler : ISchemaIdHandler // first grab the "non-generic" part of any generic type name (i.e. "PagedViewModel`1" becomes "PagedViewModel") .Split('`').First() // then remove the "ViewModel" postfix from type names - .TrimEndExact("ViewModel"); + .TrimEnd("ViewModel"); private string HandleGenerics(string name, Type type) { diff --git a/src/Umbraco.Cms.Api.Delivery/Services/ApiMediaQueryService.cs b/src/Umbraco.Cms.Api.Delivery/Services/ApiMediaQueryService.cs index 7979895ba3..9dcf85b6ef 100644 --- a/src/Umbraco.Cms.Api.Delivery/Services/ApiMediaQueryService.cs +++ b/src/Umbraco.Cms.Api.Delivery/Services/ApiMediaQueryService.cs @@ -87,7 +87,7 @@ internal sealed class ApiMediaQueryService : IApiMediaQueryService return null; } - var childrenOf = fetch.TrimStartExact(childrenOfParameter); + var childrenOf = fetch.TrimStart(childrenOfParameter); if (childrenOf.IsNullOrWhiteSpace()) { // this mirrors the current behavior of the Content Delivery API :-) diff --git a/src/Umbraco.Cms.Api.Delivery/Services/RequestRedirectService.cs b/src/Umbraco.Cms.Api.Delivery/Services/RequestRedirectService.cs index 2f74d86364..6189e7154e 100644 --- a/src/Umbraco.Cms.Api.Delivery/Services/RequestRedirectService.cs +++ b/src/Umbraco.Cms.Api.Delivery/Services/RequestRedirectService.cs @@ -66,7 +66,7 @@ internal sealed class RequestRedirectService : RoutingServiceBase, IRequestRedir } // important: redirect URLs are always tracked without trailing slashes - IRedirectUrl? redirectUrl = _redirectUrlService.GetMostRecentRedirectUrl(requestedPath.TrimEndExact("/"), culture); + IRedirectUrl? redirectUrl = _redirectUrlService.GetMostRecentRedirectUrl(requestedPath.TrimEnd("/"), culture); IPublishedContent? content = redirectUrl != null ? _apiPublishedContentCache.GetById(redirectUrl.ContentKey) : null; diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs index 6ce4d3b12b..768389b56d 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Indexer/AllIndexerController.cs @@ -37,7 +37,7 @@ public class AllIndexerController : IndexerControllerBase { IndexResponseModel[] indexes = _examineManager.Indexes .Select(_indexPresentationFactory.Create) - .OrderBy(indexModel => indexModel.Name.TrimEndExact("Indexer")).ToArray(); + .OrderBy(indexModel => indexModel.Name.TrimEnd("Indexer")).ToArray(); var viewModel = new PagedViewModel { Items = indexes.Skip(skip).Take(take), Total = indexes.Length }; return Task.FromResult(viewModel); diff --git a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs index 4c5189dcaa..76cd2f639b 100644 --- a/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs +++ b/src/Umbraco.Cms.Api.Management/Controllers/Searcher/AllSearcherController.cs @@ -30,7 +30,7 @@ public class AllSearcherController : SearcherControllerBase var searchers = new List( _examineManager.RegisteredSearchers.Select(searcher => new SearcherResponse { Name = searcher.Name }) .OrderBy(x => - x.Name.TrimEndExact("Searcher"))); // order by name , but strip the "Searcher" from the end if it exists + x.Name.TrimEnd("Searcher"))); // order by name , but strip the "Searcher" from the end if it exists var viewModel = new PagedViewModel { Items = searchers.Skip(skip).Take(take), diff --git a/src/Umbraco.Cms.StaticAssets/umbraco/UmbracoWebsite/Maintenance.cshtml b/src/Umbraco.Cms.StaticAssets/umbraco/UmbracoWebsite/Maintenance.cshtml index 5c41abf6fa..94de5f3c52 100644 --- a/src/Umbraco.Cms.StaticAssets/umbraco/UmbracoWebsite/Maintenance.cshtml +++ b/src/Umbraco.Cms.StaticAssets/umbraco/UmbracoWebsite/Maintenance.cshtml @@ -17,7 +17,7 @@ Website is Under Maintainance - +