Hotfix: Implement a specific sorting method for statuses as the existing has … (#20609)
Implement a specific sorting method for statuses as the existing has to support deprecated implementation of custom getUnique method
This commit is contained in:
committed by
Andy Butland
parent
fd91f88a7e
commit
18ab333afc
@@ -88,7 +88,7 @@ export class UmbRepositoryItemsManager<ItemType extends { unique: string }> 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<ItemType extends { unique: string }> exte
|
||||
}
|
||||
}
|
||||
|
||||
#sortByUniques<T extends Pick<ItemType, 'unique'>>(data?: Array<T>): Array<T> {
|
||||
#sortByUniques(data?: Array<ItemType>): Array<ItemType> {
|
||||
if (!data) return [];
|
||||
const uniques = this.getUniques();
|
||||
return [...data].sort((a, b) => {
|
||||
@@ -270,6 +270,17 @@ export class UmbRepositoryItemsManager<ItemType extends { unique: string }> exte
|
||||
});
|
||||
}
|
||||
|
||||
/** Just needed for the deprecation implementation to work, do not bring this into 17.0 [NL] */
|
||||
#sortStatusByUniques(data?: Array<UmbRepositoryItemsStatus>): Array<UmbRepositoryItemsStatus> {
|
||||
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();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user