From 84be3356e7ec7a60abb6d308dbd82b8de2aef3c6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Thu, 2 May 2024 13:33:38 +0200 Subject: [PATCH] observable for isTrashed --- .../tree-item-base/tree-item-context-base.ts | 30 +++++++++---------- .../tree-item/document-tree-item.context.ts | 6 ++-- 2 files changed, 19 insertions(+), 17 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.ts b/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.ts index d86bd67532..48433be491 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/tree/tree-item/tree-item-base/tree-item-context-base.ts @@ -7,7 +7,7 @@ import { UMB_SECTION_CONTEXT, UMB_SECTION_SIDEBAR_CONTEXT } from '@umbraco-cms/b import type { UmbSectionContext, UmbSectionSidebarContext } from '@umbraco-cms/backoffice/section'; import type { ManifestTreeItem } from '@umbraco-cms/backoffice/extension-registry'; import { umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry'; -import { UmbArrayState, UmbBooleanState, UmbDeepState, UmbStringState } from '@umbraco-cms/backoffice/observable-api'; +import { UmbArrayState, UmbBooleanState, UmbObjectState, UmbStringState } from '@umbraco-cms/backoffice/observable-api'; import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api'; import { UmbContextBase } from '@umbraco-cms/backoffice/class-api'; import { UmbContextToken } from '@umbraco-cms/backoffice/context-api'; @@ -31,37 +31,37 @@ export abstract class UmbTreeItemContextBase(undefined); - treeItem = this.#treeItem.asObservable(); + protected readonly _treeItem = new UmbObjectState(undefined); + readonly treeItem = this._treeItem.asObservable(); // eslint-disable-next-line @typescript-eslint/ban-ts-comment // @ts-ignore #childItems = new UmbArrayState([], (x) => x.unique); - childItems = this.#childItems.asObservable(); + readonly childItems = this.#childItems.asObservable(); #hasChildren = new UmbBooleanState(false); - hasChildren = this.#hasChildren.asObservable(); + readonly hasChildren = this.#hasChildren.asObservable(); #isLoading = new UmbBooleanState(false); - isLoading = this.#isLoading.asObservable(); + readonly isLoading = this.#isLoading.asObservable(); #isSelectable = new UmbBooleanState(false); - isSelectable = this.#isSelectable.asObservable(); + readonly isSelectable = this.#isSelectable.asObservable(); #isSelectableContext = new UmbBooleanState(false); - isSelectableContext = this.#isSelectableContext.asObservable(); + readonly isSelectableContext = this.#isSelectableContext.asObservable(); #isSelected = new UmbBooleanState(false); - isSelected = this.#isSelected.asObservable(); + readonly isSelected = this.#isSelected.asObservable(); #isActive = new UmbBooleanState(false); - isActive = this.#isActive.asObservable(); + readonly isActive = this.#isActive.asObservable(); #hasActions = new UmbBooleanState(false); - hasActions = this.#hasActions.asObservable(); + readonly hasActions = this.#hasActions.asObservable(); #path = new UmbStringState(''); - path = this.#path.asObservable(); + readonly path = this.#path.asObservable(); treeContext?: UmbDefaultTreeContext; #sectionContext?: UmbSectionContext; @@ -130,7 +130,7 @@ export abstract class UmbTreeItemContextBase item?.isTrashed ?? false); + constructor(host: UmbControllerHost) { super(host); - this.observe(this.treeItem, (item) => { - this.#isTrashedContext.setIsTrashed(item?.isTrashed || false); + this.observe(this.isTrashed, (isTrashed) => { + this.#isTrashedContext.setIsTrashed(isTrashed); }); } }