From 7048a1f5555f2e915531ac0362268fc0cbc0be7a Mon Sep 17 00:00:00 2001 From: Mads Rasmussen Date: Fri, 13 Sep 2024 21:41:46 +0200 Subject: [PATCH] register create member group action --- .../create-member-group.action.ts | 16 ++++++++++++++++ .../member-group/entity-actions/manifests.ts | 19 +++++++++++++++---- 2 files changed, 31 insertions(+), 4 deletions(-) create mode 100644 src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/create-member-group.action.ts diff --git a/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/create-member-group.action.ts b/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/create-member-group.action.ts new file mode 100644 index 0000000000..8255c49230 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/create-member-group.action.ts @@ -0,0 +1,16 @@ +import { UMB_MEMBER_GROUP_WORKSPACE_PATH } from '../paths.js'; +import type { UmbEntityActionArgs } from '@umbraco-cms/backoffice/entity-action'; +import { UmbEntityActionBase } from '@umbraco-cms/backoffice/entity-action'; +import type { UmbControllerHostElement } from '@umbraco-cms/backoffice/controller-api'; + +export class UmbCreateMemberGroupEntityAction extends UmbEntityActionBase { + constructor(host: UmbControllerHostElement, args: UmbEntityActionArgs) { + super(host, args); + } + + override async execute() { + history.pushState(null, '', UMB_MEMBER_GROUP_WORKSPACE_PATH + '/create'); + } +} + +export { UmbCreateMemberGroupEntityAction as api }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/manifests.ts index 82184df36f..3dee12ca93 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/members/member-group/entity-actions/manifests.ts @@ -2,10 +2,23 @@ import { UMB_MEMBER_GROUP_DETAIL_REPOSITORY_ALIAS, UMB_MEMBER_GROUP_ITEM_REPOSITORY_ALIAS, } from '../repository/index.js'; -import { UMB_MEMBER_GROUP_ENTITY_TYPE } from '../entity.js'; +import { UMB_MEMBER_GROUP_ENTITY_TYPE, UMB_MEMBER_GROUP_ROOT_ENTITY_TYPE } from '../entity.js'; import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry'; -const entityActions: Array = [ +export const manifests: Array = [ + { + type: 'entityAction', + kind: 'default', + alias: 'Umb.EntityAction.MemberGroup.Create', + name: 'Create Member Group Entity Action', + weight: 1200, + api: () => import('./create-member-group.action.js'), + forEntityTypes: [UMB_MEMBER_GROUP_ROOT_ENTITY_TYPE], + meta: { + icon: 'icon-add', + label: '#actions_create', + }, + }, { type: 'entityAction', kind: 'delete', @@ -18,5 +31,3 @@ const entityActions: Array = [ }, }, ]; - -export const manifests: Array = [...entityActions];