diff --git a/src/Umbraco.Web.UI.Client/src/packages/users/user-groups/workspace/actions/workspace-action-user-group-save.element.ts b/src/Umbraco.Web.UI.Client/src/packages/users/user-groups/workspace/actions/workspace-action-user-group-save.element.ts index 6dcb3840f1..82e73a3bfd 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/users/user-groups/workspace/actions/workspace-action-user-group-save.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/users/user-groups/workspace/actions/workspace-action-user-group-save.element.ts @@ -1,21 +1,20 @@ -import { UmbUserWorkspaceContext } from '../../../users/workspace/user-workspace.context.js'; +import { UMB_USER_WORKSPACE_CONTEXT } from '../../../users/workspace/user-workspace.context.js'; import { css, html, customElement, state } from '@umbraco-cms/backoffice/external/lit'; import { UUITextStyles } from '@umbraco-cms/backoffice/external/uui'; import type { UUIButtonState } from '@umbraco-cms/backoffice/external/uui'; import { UmbLitElement } from '@umbraco-cms/internal/lit-element'; -import { UMB_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace'; @customElement('umb-workspace-action-user-group-save') export class UmbWorkspaceActionUserGroupSaveElement extends UmbLitElement { @state() private _saveButtonState?: UUIButtonState; - private _workspaceContext?: UmbUserWorkspaceContext; + private _workspaceContext?: typeof UMB_USER_WORKSPACE_CONTEXT.TYPE; constructor() { super(); - this.consumeContext(UMB_WORKSPACE_CONTEXT, (instance) => { - this._workspaceContext = instance as UmbUserWorkspaceContext; + this.consumeContext(UMB_USER_WORKSPACE_CONTEXT, (instance) => { + this._workspaceContext = instance; }); } diff --git a/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/actions/user-workspace-action-save.element.ts b/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/actions/user-workspace-action-save.element.ts index cb2668d241..3f13e9538a 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/actions/user-workspace-action-save.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/actions/user-workspace-action-save.element.ts @@ -1,21 +1,20 @@ -import { UmbUserWorkspaceContext } from '../user-workspace.context.js'; +import { UMB_USER_WORKSPACE_CONTEXT } from '../user-workspace.context.js'; import { css, html, customElement, state } from '@umbraco-cms/backoffice/external/lit'; import { UUITextStyles } from '@umbraco-cms/backoffice/external/uui'; import type { UUIButtonState } from '@umbraco-cms/backoffice/external/uui'; import { UmbLitElement } from '@umbraco-cms/internal/lit-element'; -import { UMB_WORKSPACE_CONTEXT } from '@umbraco-cms/backoffice/workspace'; @customElement('umb-user-workspace-action-save') export class UmbUserWorkspaceActionSaveElement extends UmbLitElement { @state() private _saveButtonState?: UUIButtonState; - private _workspaceContext?: UmbUserWorkspaceContext; + private _workspaceContext?: typeof UMB_USER_WORKSPACE_CONTEXT.TYPE; constructor() { super(); - this.consumeContext(UMB_WORKSPACE_CONTEXT, (instance) => { - this._workspaceContext = instance as UmbUserWorkspaceContext; + this.consumeContext(UMB_USER_WORKSPACE_CONTEXT, (instance) => { + this._workspaceContext = instance; }); } diff --git a/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/user-workspace.context.ts b/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/user-workspace.context.ts index 7a5c8bea0c..b9c4567217 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/user-workspace.context.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/users/users/workspace/user-workspace.context.ts @@ -4,7 +4,7 @@ import { UmbEntityWorkspaceContextInterface, UmbWorkspaceContext } from '@umbrac import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api'; import type { UpdateUserRequestModel } from '@umbraco-cms/backoffice/backend-api'; import { UmbObjectState } from '@umbraco-cms/backoffice/observable-api'; -import { UmbContextConsumerController } from '@umbraco-cms/backoffice/context-api'; +import { UmbContextConsumerController, UmbContextToken } from '@umbraco-cms/backoffice/context-api'; import { UMB_AUTH } from '@umbraco-cms/backoffice/auth'; import { firstValueFrom } from '@umbraco-cms/backoffice/external/rxjs'; @@ -81,3 +81,8 @@ export class UmbUserWorkspaceContext this.#data.complete(); } } + +export const UMB_USER_WORKSPACE_CONTEXT = new UmbContextToken( + 'UmbWorkspaceContext', + (context): context is UmbUserWorkspaceContext => context.getEntityType?.() === 'user' +);