clean up bulk actions
This commit is contained in:
@@ -7,8 +7,8 @@ import { UmbEntityActionBase } from '@umbraco-cms/backoffice/entity-action';
|
||||
import { UmbVariantId } from '@umbraco-cms/backoffice/variant';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbPublishDocumentEntityAction extends UmbEntityActionBase<never> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityActionArgs<never>) {
|
||||
export class UmbPublishDocumentEntityAction extends UmbEntityActionBase<object> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityActionArgs<object>) {
|
||||
super(host, args);
|
||||
}
|
||||
|
||||
|
||||
@@ -1,12 +1,6 @@
|
||||
import type { UmbEntityBulkActionArgs } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbDocumentCopyEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityBulkActionArgs<never>) {
|
||||
super(host, args);
|
||||
}
|
||||
|
||||
export class UmbDocumentCopyEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
console.log('execute bulk copy');
|
||||
}
|
||||
|
||||
@@ -1,12 +1,6 @@
|
||||
import type { UmbEntityBulkActionArgs } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbDocumentDeleteEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityBulkActionArgs<never>) {
|
||||
super(host, args);
|
||||
}
|
||||
|
||||
export class UmbDocumentDeleteEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
console.log('execute bulk delete');
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import type { UmbCollectionBulkActionPermissions } from '../../../core/collection/types.js';
|
||||
import { UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS, UMB_DOCUMENT_PUBLISHING_REPOSITORY_ALIAS } from '../repository/index.js';
|
||||
import { UMB_DOCUMENT_COLLECTION_ALIAS } from '../collection/index.js';
|
||||
import { UMB_DOCUMENT_ENTITY_TYPE } from '../entity.js';
|
||||
import { UmbDocumentCopyEntityBulkAction } from './copy/copy.action.js';
|
||||
import { UmbDocumentDeleteEntityBulkAction } from './delete/delete.action.js';
|
||||
import { UmbMoveDocumentEntityBulkAction } from './move/move.action.js';
|
||||
@@ -21,8 +21,8 @@ export const manifests: Array<ManifestEntityBulkAction> = [
|
||||
api: UmbDocumentPublishEntityBulkAction,
|
||||
meta: {
|
||||
label: 'Publish',
|
||||
repositoryAlias: UMB_DOCUMENT_PUBLISHING_REPOSITORY_ALIAS,
|
||||
},
|
||||
forEntityTypes: [UMB_DOCUMENT_ENTITY_TYPE],
|
||||
conditions: [
|
||||
{
|
||||
alias: UMB_COLLECTION_ALIAS_CONDITION,
|
||||
@@ -42,8 +42,8 @@ export const manifests: Array<ManifestEntityBulkAction> = [
|
||||
api: UmbDocumentUnpublishEntityBulkAction,
|
||||
meta: {
|
||||
label: 'Unpublish',
|
||||
repositoryAlias: UMB_DOCUMENT_PUBLISHING_REPOSITORY_ALIAS,
|
||||
},
|
||||
forEntityTypes: [UMB_DOCUMENT_ENTITY_TYPE],
|
||||
conditions: [
|
||||
{
|
||||
alias: UMB_COLLECTION_ALIAS_CONDITION,
|
||||
@@ -63,8 +63,8 @@ export const manifests: Array<ManifestEntityBulkAction> = [
|
||||
api: UmbDocumentCopyEntityBulkAction,
|
||||
meta: {
|
||||
label: 'Copy',
|
||||
repositoryAlias: UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS,
|
||||
},
|
||||
forEntityTypes: [UMB_DOCUMENT_ENTITY_TYPE],
|
||||
conditions: [
|
||||
{
|
||||
alias: UMB_COLLECTION_ALIAS_CONDITION,
|
||||
@@ -84,8 +84,8 @@ export const manifests: Array<ManifestEntityBulkAction> = [
|
||||
api: UmbMoveDocumentEntityBulkAction,
|
||||
meta: {
|
||||
label: 'Move',
|
||||
repositoryAlias: UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS,
|
||||
},
|
||||
forEntityTypes: [UMB_DOCUMENT_ENTITY_TYPE],
|
||||
conditions: [
|
||||
{
|
||||
alias: UMB_COLLECTION_ALIAS_CONDITION,
|
||||
@@ -105,8 +105,8 @@ export const manifests: Array<ManifestEntityBulkAction> = [
|
||||
api: UmbDocumentDeleteEntityBulkAction,
|
||||
meta: {
|
||||
label: 'Delete',
|
||||
repositoryAlias: UMB_DOCUMENT_DETAIL_REPOSITORY_ALIAS,
|
||||
},
|
||||
forEntityTypes: [UMB_DOCUMENT_ENTITY_TYPE],
|
||||
conditions: [
|
||||
{
|
||||
alias: UMB_COLLECTION_ALIAS_CONDITION,
|
||||
|
||||
@@ -1,12 +1,6 @@
|
||||
import type { UmbEntityBulkActionArgs } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbMoveDocumentEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityBulkActionArgs<never>) {
|
||||
super(host, args);
|
||||
}
|
||||
|
||||
export class UmbMoveDocumentEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
console.log(`execute bulk move`);
|
||||
}
|
||||
|
||||
@@ -1,22 +1,25 @@
|
||||
import type { UmbDocumentPublishingRepository } from '../../repository/index.js';
|
||||
import { UmbDocumentPublishingRepository } from '../../repository/index.js';
|
||||
import { UmbPublishDocumentEntityAction } from '../../entity-actions/publish.action.js';
|
||||
import type { UmbDocumentVariantOptionModel } from '../../types.js';
|
||||
import { umbPickDocumentVariantModal } from '../../modals/index.js';
|
||||
import { UMB_DOCUMENT_ENTITY_TYPE } from '../../entity.js';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbLanguageCollectionRepository } from '@umbraco-cms/backoffice/language';
|
||||
import { UmbVariantId } from '@umbraco-cms/backoffice/variant';
|
||||
|
||||
export class UmbDocumentPublishEntityBulkAction extends UmbEntityBulkActionBase<UmbDocumentPublishingRepository> {
|
||||
export class UmbDocumentPublishEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
// If there is only one selection, we can refer to the regular publish entity action:
|
||||
if (this.selection.length === 1) {
|
||||
const action = new UmbPublishDocumentEntityAction(this._host, '', this.selection[0], '');
|
||||
const action = new UmbPublishDocumentEntityAction(this._host, {
|
||||
unique: this.selection[0],
|
||||
entityType: UMB_DOCUMENT_ENTITY_TYPE,
|
||||
meta: {},
|
||||
});
|
||||
await action.execute();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.repository) throw new Error('Document publishing repository not set');
|
||||
|
||||
const languageRepository = new UmbLanguageCollectionRepository(this._host);
|
||||
const { data: languageData } = await languageRepository.requestCollection({});
|
||||
|
||||
@@ -28,11 +31,14 @@ export class UmbDocumentPublishEntityBulkAction extends UmbEntityBulkActionBase<
|
||||
}));
|
||||
|
||||
const selectedVariants = await umbPickDocumentVariantModal(this, { type: 'publish', options });
|
||||
const repository = new UmbDocumentPublishingRepository(this._host);
|
||||
|
||||
if (selectedVariants.length) {
|
||||
for (const unique of this.selection) {
|
||||
await this.repository.publish(unique, selectedVariants);
|
||||
await repository.publish(unique, selectedVariants);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
destroy(): void {}
|
||||
}
|
||||
|
||||
@@ -1,22 +1,25 @@
|
||||
import { UmbUnpublishDocumentEntityAction } from '../../entity-actions/unpublish.action.js';
|
||||
import { UMB_DOCUMENT_ENTITY_TYPE } from '../../entity.js';
|
||||
import { umbPickDocumentVariantModal } from '../../modals/index.js';
|
||||
import type { UmbDocumentPublishingRepository } from '../../repository/index.js';
|
||||
import { UmbDocumentPublishingRepository } from '../../repository/index.js';
|
||||
import type { UmbDocumentVariantOptionModel } from '../../types.js';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbLanguageCollectionRepository } from '@umbraco-cms/backoffice/language';
|
||||
import { UmbVariantId } from '@umbraco-cms/backoffice/variant';
|
||||
|
||||
export class UmbDocumentUnpublishEntityBulkAction extends UmbEntityBulkActionBase<UmbDocumentPublishingRepository> {
|
||||
export class UmbDocumentUnpublishEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
// If there is only one selection, we can refer to the regular publish entity action:
|
||||
if (this.selection.length === 1) {
|
||||
const action = new UmbUnpublishDocumentEntityAction(this._host, '', this.selection[0], '');
|
||||
const action = new UmbUnpublishDocumentEntityAction(this._host, {
|
||||
unique: this.selection[0],
|
||||
entityType: UMB_DOCUMENT_ENTITY_TYPE,
|
||||
meta: undefined,
|
||||
});
|
||||
await action.execute();
|
||||
return;
|
||||
}
|
||||
|
||||
if (!this.repository) throw new Error('Document publishing repository not set');
|
||||
|
||||
const languageRepository = new UmbLanguageCollectionRepository(this._host);
|
||||
const { data: languageData } = await languageRepository.requestCollection({});
|
||||
|
||||
@@ -28,11 +31,14 @@ export class UmbDocumentUnpublishEntityBulkAction extends UmbEntityBulkActionBas
|
||||
}));
|
||||
|
||||
const selectedVariants = await umbPickDocumentVariantModal(this, { type: 'unpublish', options });
|
||||
const repository = new UmbDocumentPublishingRepository(this._host);
|
||||
|
||||
if (selectedVariants.length) {
|
||||
for (const unique of this.selection) {
|
||||
await this.repository.unpublish(unique, selectedVariants);
|
||||
await repository.unpublish(unique, selectedVariants);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
destroy(): void {}
|
||||
}
|
||||
|
||||
@@ -1,12 +1,6 @@
|
||||
import type { UmbEntityBulkActionArgs } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api';
|
||||
|
||||
export class UmbDuplicateMediaEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
constructor(host: UmbControllerHost, args: UmbEntityBulkActionArgs<never>) {
|
||||
super(host, args);
|
||||
}
|
||||
|
||||
export class UmbDuplicateMediaEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
console.log('execute bulk duplicate');
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@ import { html } from '@umbraco-cms/backoffice/external/lit';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import { umbConfirmModal } from '@umbraco-cms/backoffice/modal';
|
||||
|
||||
export class UmbUserDeleteEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
export class UmbUserDeleteEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
if (this.selection.length === 0) return;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { UmbDisableUserRepository } from '../../repository/index.js';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
|
||||
export class UmbDisableUserEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
export class UmbDisableUserEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
const repository = new UmbDisableUserRepository(this._host);
|
||||
await repository.disable(this.selection);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { UmbEnableUserRepository } from '../../repository/index.js';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
|
||||
export class UmbEnableUserEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
export class UmbEnableUserEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
const repository = new UmbEnableUserRepository(this._host);
|
||||
await repository.enable(this.selection);
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
import type { UmbModalManagerContext } from '@umbraco-cms/backoffice/modal';
|
||||
|
||||
export class UmbSetGroupUserEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
#modalContext?: UmbModalManagerContext;
|
||||
|
||||
export class UmbSetGroupUserEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
//TODO: Implement
|
||||
alert('Bulk set group is not implemented yet');
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import { UmbUnlockUserRepository } from '../../repository/index.js';
|
||||
import { UmbEntityBulkActionBase } from '@umbraco-cms/backoffice/entity-bulk-action';
|
||||
|
||||
export class UmbUnlockUserEntityBulkAction extends UmbEntityBulkActionBase<never> {
|
||||
export class UmbUnlockUserEntityBulkAction extends UmbEntityBulkActionBase<object> {
|
||||
async execute() {
|
||||
const repository = new UmbUnlockUserRepository(this._host);
|
||||
await repository.unlock(this.selection);
|
||||
|
||||
Reference in New Issue
Block a user