From 88be27b387904936db5b3e92ae517c0c9ad3e561 Mon Sep 17 00:00:00 2001 From: Mads Rasmussen Date: Fri, 24 Mar 2023 10:51:22 +0100 Subject: [PATCH] add interface to entity tree store --- .../libs/store/entity-tree-store.ts | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts b/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts index 303c13718f..6fb7ca7e3c 100644 --- a/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts +++ b/src/Umbraco.Web.UI.Client/libs/store/entity-tree-store.ts @@ -1,6 +1,6 @@ import { EntityTreeItemResponseModel } from '@umbraco-cms/backoffice/backend-api'; import { ArrayState, partialUpdateFrozenArray } from '@umbraco-cms/backoffice/observable-api'; -import { UmbStoreBase } from '@umbraco-cms/backoffice/store'; +import { UmbStoreBase, UmbTreeStore } from '@umbraco-cms/backoffice/store'; /** * @export @@ -9,17 +9,15 @@ import { UmbStoreBase } from '@umbraco-cms/backoffice/store'; * @description - General Tree Data Store */ // TODO: consider if tree store could be turned into a general EntityTreeStore class? -export class UmbEntityTreeStore< - T extends EntityTreeItemResponseModel = EntityTreeItemResponseModel -> extends UmbStoreBase { - #data = new ArrayState([], (x) => x.key); +export class UmbEntityTreeStore extends UmbStoreBase implements UmbTreeStore { + #data = new ArrayState([], (x) => x.key); /** * Appends items to the store * @param {Array} items * @memberof UmbEntityTreeStore */ - appendItems(items: Array) { + appendItems(items: Array) { this.#data.append(items); } @@ -29,7 +27,7 @@ export class UmbEntityTreeStore< * @param {Partial} data * @memberof UmbEntityTreeStore */ - updateItem(key: string, data: Partial) { + updateItem(key: string, data: Partial) { this.#data.next(partialUpdateFrozenArray(this.#data.getValue(), data, (entry) => entry.key === key)); }