pass calculated start nodes to elements

This commit is contained in:
Mads Rasmussen
2024-06-18 14:58:44 +02:00
parent 99f86fab32
commit 0d1c57ce5f

View File

@@ -1,5 +1,5 @@
import { UMB_USER_WORKSPACE_CONTEXT } from '../../user-workspace.context-token.js';
import type { UmbUserDetailModel } from '../../../types.js';
import type { UmbUserStartNodesModel } from '../../../types.js';
import { html, customElement, state, css } from '@umbraco-cms/backoffice/external/lit';
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
import { UmbTextStyles } from '@umbraco-cms/backoffice/style';
@@ -10,7 +10,7 @@ const elementName = 'umb-user-workspace-access';
@customElement(elementName)
export class UmbUserWorkspaceAccessElement extends UmbLitElement {
@state()
private _user?: UmbUserDetailModel;
private _calculatedStartNodes?: UmbUserStartNodesModel;
#userWorkspaceContext?: typeof UMB_USER_WORKSPACE_CONTEXT.TYPE;
@@ -19,7 +19,11 @@ export class UmbUserWorkspaceAccessElement extends UmbLitElement {
this.consumeContext(UMB_USER_WORKSPACE_CONTEXT, (instance) => {
this.#userWorkspaceContext = instance;
this.observe(this.#userWorkspaceContext.data, (user) => (this._user = user), 'umbUserObserver');
this.observe(
this.#userWorkspaceContext.calculatedStartNodes,
(calculatedStartNodes) => (this._calculatedStartNodes = calculatedStartNodes),
'umbUserObserver',
);
});
}
@@ -41,7 +45,7 @@ export class UmbUserWorkspaceAccessElement extends UmbLitElement {
return html` <b><umb-localize key="sections_content">Content</umb-localize></b>
<umb-user-document-start-node
readonly
.uniques=${this._user?.documentStartNodeUniques.map((reference) => reference.unique) ||
.uniques=${this._calculatedStartNodes?.documentStartNodeUniques.map((reference) => reference.unique) ||
[]}></umb-user-document-start-node>`;
}
@@ -49,7 +53,7 @@ export class UmbUserWorkspaceAccessElement extends UmbLitElement {
return html` <b><umb-localize key="sections_media">Media</umb-localize></b>
<umb-user-media-start-node
readonly
.uniques=${this._user?.mediaStartNodeUniques.map((reference) => reference.unique) ||
.uniques=${this._calculatedStartNodes?.mediaStartNodeUniques.map((reference) => reference.unique) ||
[]}></umb-user-media-start-node>`;
}