From 18ab333afc22278240ac7b51d42691e23ff1710e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Wed, 22 Oct 2025 13:57:09 +0200 Subject: [PATCH] =?UTF-8?q?Hotfix:=20Implement=20a=20specific=20sorting=20?= =?UTF-8?q?method=20for=20statuses=20as=20the=20existing=20has=20=E2=80=A6?= =?UTF-8?q?=20(#20609)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Implement a specific sorting method for statuses as the existing has to support deprecated implementation of custom getUnique method --- .../core/repository/repository-items.manager.ts | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/repository/repository-items.manager.ts b/src/Umbraco.Web.UI.Client/src/packages/core/repository/repository-items.manager.ts index c60dc8badf..0b50d72399 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/repository/repository-items.manager.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/repository/repository-items.manager.ts @@ -88,7 +88,7 @@ export class UmbRepositoryItemsManager exte ) { const items = this.#items.getValue(); this.#items.setValue(this.#sortByUniques(items)); - this.#statuses.setValue(this.#sortByUniques(statuses)); + this.#statuses.setValue(this.#sortStatusByUniques(statuses)); } else { // We need to load new items, so ... this.#requestItems(); @@ -260,7 +260,7 @@ export class UmbRepositoryItemsManager exte } } - #sortByUniques>(data?: Array): Array { + #sortByUniques(data?: Array): Array { if (!data) return []; const uniques = this.getUniques(); return [...data].sort((a, b) => { @@ -270,6 +270,17 @@ export class UmbRepositoryItemsManager exte }); } + /** Just needed for the deprecation implementation to work, do not bring this into 17.0 [NL] */ + #sortStatusByUniques(data?: Array): Array { + if (!data) return []; + const uniques = this.getUniques(); + return [...data].sort((a, b) => { + const aIndex = uniques.indexOf(a.unique ?? ''); + const bIndex = uniques.indexOf(b.unique ?? ''); + return aIndex - bIndex; + }); + } + #onEntityUpdatedEvent = (event: UmbEntityUpdatedEvent) => { const eventUnique = event.getUnique();