Merge branch 'feature/entity-action-kind' of https://github.com/umbraco/Umbraco.CMS.Backoffice into feature/entity-action-kind

This commit is contained in:
Niels Lyngsø
2024-03-03 20:34:21 +01:00
4 changed files with 17 additions and 19 deletions

View File

@@ -1,10 +1,10 @@
import { UMB_DATA_TYPE_PICKER_MODAL } from '@umbraco-cms/backoffice/modal';
import { UMB_DATA_TYPE_ENTITY_TYPE } from '../../entity.js';
import { UMB_DATA_TYPE_ITEM_REPOSITORY_ALIAS } from '../../repository/index.js';
import { UMB_MOVE_DATA_TYPE_REPOSITORY_ALIAS } from '../../repository/move/manifests.js';
import type { ManifestEntityAction } from '@umbraco-cms/backoffice/extension-registry';
import { UMB_DATA_TYPE_PICKER_MODAL } from '@umbraco-cms/backoffice/modal';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
const entityActions: Array<ManifestEntityAction> = [
const entityActions: Array<ManifestTypes> = [
{
type: 'entityAction',
alias: 'Umb.EntityAction.DataType.Move',

View File

@@ -1,9 +1,8 @@
import { UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS } from '../../repository/index.js';
import { UMB_DOCUMENT_ENTITY_TYPE, UMB_DOCUMENT_ROOT_ENTITY_TYPE } from '../../entity.js';
import { UmbCreateDocumentEntityAction } from './create.action.js';
import type { ManifestEntityAction, ManifestModal } from '@umbraco-cms/backoffice/extension-registry';
import type { ManifestModal, ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
const entityActions: Array<ManifestEntityAction> = [
const entityActions: Array<ManifestTypes> = [
{
type: 'entityAction',
alias: 'Umb.EntityAction.Document.Create',

View File

@@ -1,23 +1,20 @@
import type { UmbDisableUserRepository } from '../../repository/disable/disable-user.repository.js';
import { UmbUserItemRepository } from '../../repository/item/user-item.repository.js';
import { UmbDisableUserRepository } from '../../repository/index.js';
import type { UmbEntityActionArgs } from '@umbraco-cms/backoffice/entity-action';
import { UmbEntityActionBase } from '@umbraco-cms/backoffice/entity-action';
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
import { umbConfirmModal } from '@umbraco-cms/backoffice/modal';
export class UmbDisableUserEntityAction extends UmbEntityActionBase<UmbDisableUserRepository> {
#itemRepository: UmbUserItemRepository;
constructor(host: UmbControllerHost, repositoryAlias: string, unique: string, entityType: string) {
super(host, repositoryAlias, unique, entityType);
this.#itemRepository = new UmbUserItemRepository(this);
export class UmbDisableUserEntityAction extends UmbEntityActionBase<never> {
constructor(host: UmbControllerHost, args: UmbEntityActionArgs<never>) {
super(host, args);
}
async execute() {
if (!this.unique) throw new Error('Unique is not available');
if (!this.repository) return;
if (!this.args.unique) throw new Error('Unique is not available');
const { data } = await this.#itemRepository.requestItems([this.unique]);
const itemRepository = new UmbUserItemRepository(this);
const { data } = await itemRepository.requestItems([this.args.unique]);
if (data) {
const item = data[0];
@@ -29,7 +26,10 @@ export class UmbDisableUserEntityAction extends UmbEntityActionBase<UmbDisableUs
confirmLabel: 'Disable',
});
await this.repository?.disable([this.unique]);
const disableUserRepository = new UmbDisableUserRepository(this);
await disableUserRepository.disable([this.args.unique]);
}
}
destroy(): void {}
}

View File

@@ -56,7 +56,6 @@ const entityActions: Array<ManifestTypes> = [
meta: {
icon: 'icon-block',
label: 'Disable',
repositoryAlias: UMB_DISABLE_USER_REPOSITORY_ALIAS,
entityTypes: [UMB_USER_ENTITY_TYPE],
},
conditions: [