Skip to content

Commit 346a9fd

Browse files
Merge branch 'main' into v15/feature/split-rte-packages
2 parents ec69314 + e9d70b2 commit 346a9fd

File tree

48 files changed

+327
-248
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+327
-248
lines changed

src/packages/core/components/entity-actions-bundle/entity-actions-bundle.element.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import { UmbEntityContext } from '../../entity/entity.context.js';
2-
import type { UmbEntityAction } from '@umbraco-cms/backoffice/entity-action';
2+
import type { UmbEntityAction, ManifestEntityActionDefaultKind } from '@umbraco-cms/backoffice/entity-action';
33
import type { PropertyValueMap } from '@umbraco-cms/backoffice/external/lit';
44
import { html, nothing, customElement, property, state, ifDefined } from '@umbraco-cms/backoffice/external/lit';
55
import type { UmbSectionSidebarContext } from '@umbraco-cms/backoffice/section';
66
import { UMB_SECTION_SIDEBAR_CONTEXT } from '@umbraco-cms/backoffice/section';
77
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
8-
import type { ManifestEntityActionDefaultKind } from '@umbraco-cms/backoffice/extension-registry';
98
import { umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry';
109
import { UmbExtensionsManifestInitializer, createExtensionApi } from '@umbraco-cms/backoffice/extension-api';
1110

src/packages/core/entity-action/common/delete/delete.action.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { UmbEntityActionBase } from '../../entity-action-base.js';
22
import { UmbRequestReloadStructureForEntityEvent } from '../../request-reload-structure-for-entity.event.js';
3-
import { createExtensionApiByAlias, type MetaEntityActionDeleteKind } from '@umbraco-cms/backoffice/extension-registry';
3+
import type { MetaEntityActionDeleteKind } from './types.js';
4+
import { createExtensionApiByAlias } from '@umbraco-cms/backoffice/extension-registry';
45
import { umbConfirmModal } from '@umbraco-cms/backoffice/modal';
56
import type { UmbDetailRepository, UmbItemRepository } from '@umbraco-cms/backoffice/repository';
67
import { UMB_ACTION_EVENT_CONTEXT } from '@umbraco-cms/backoffice/action';
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import type { MetaEntityActionDefaultKind } from '../../default/index.js';
2+
import type { ManifestEntityAction } from '../../entity-action.extension.js';
3+
4+
export interface ManifestEntityActionDeleteKind extends ManifestEntityAction<MetaEntityActionDeleteKind> {
5+
type: 'entityAction';
6+
kind: 'delete';
7+
}
8+
9+
export interface MetaEntityActionDeleteKind extends MetaEntityActionDefaultKind {
10+
detailRepositoryAlias: string;
11+
itemRepositoryAlias: string;
12+
}
13+
14+
declare global {
15+
interface UmbExtensionManifestMap {
16+
umbDeleteEntityActionKind: ManifestEntityActionDeleteKind;
17+
}
18+
}

src/packages/core/entity-action/common/duplicate/duplicate.action.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
import { UmbEntityActionBase } from '../../entity-action-base.js';
22
import { UmbRequestReloadStructureForEntityEvent } from '../../request-reload-structure-for-entity.event.js';
33
import type { UmbDuplicateRepository } from './duplicate-repository.interface.js';
4-
import type { MetaEntityActionDuplicateToKind } from '@umbraco-cms/backoffice/extension-registry';
54
import { createExtensionApiByAlias } from '@umbraco-cms/backoffice/extension-registry';
65
import { UMB_ACTION_EVENT_CONTEXT } from '@umbraco-cms/backoffice/action';
76

8-
export class UmbDuplicateEntityAction extends UmbEntityActionBase<MetaEntityActionDuplicateToKind> {
7+
export class UmbDuplicateEntityAction extends UmbEntityActionBase<any> {
98
override async execute() {
109
if (!this.args.unique) throw new Error('Unique is not available');
1110
if (!this.args.entityType) throw new Error('Entity Type is not available');

src/packages/core/entity-action/default/entity-action.element.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
import type { UmbEntityAction } from '../entity-action.interface.js';
22
import type { UmbEntityActionElement } from '../entity-action-element.interface.js';
3+
import type { ManifestEntityAction } from '../entity-action.extension.js';
4+
import type { MetaEntityActionDefaultKind } from './types.js';
35
import { UmbActionExecutedEvent } from '@umbraco-cms/backoffice/event';
46
import { html, nothing, ifDefined, customElement, property, state } from '@umbraco-cms/backoffice/external/lit';
57
import type { UUIMenuItemEvent } from '@umbraco-cms/backoffice/external/uui';
68
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
7-
import type { ManifestEntityAction, MetaEntityActionDefaultKind } from '@umbraco-cms/backoffice/extension-registry';
89

910
@customElement('umb-entity-action')
1011
export class UmbEntityActionDefaultElement<
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
export * from './types.js';
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
import type { ManifestEntityAction, MetaEntityAction } from '../entity-action.extension.js';
2+
3+
export interface ManifestEntityActionDefaultKind extends ManifestEntityAction<MetaEntityActionDefaultKind> {
4+
type: 'entityAction';
5+
kind: 'default';
6+
}
7+
8+
export interface MetaEntityActionDefaultKind extends MetaEntityAction {
9+
/**
10+
* An icon to represent the action to be performed
11+
* @examples [
12+
* "icon-box",
13+
* "icon-grid"
14+
* ]
15+
*/
16+
icon: string;
17+
18+
/**
19+
* The friendly name of the action to perform
20+
* @examples [
21+
* "Create",
22+
* "Create Content Template"
23+
* ]
24+
*/
25+
label: string;
26+
27+
/**
28+
* The action requires additional input from the user.
29+
* A dialog will prompt the user for more information or to make a choice.
30+
* @type {boolean}
31+
* @memberof MetaEntityActionDefaultKind
32+
*/
33+
additionalOptions?: boolean;
34+
}
35+
36+
declare global {
37+
interface UmbExtensionManifestMap {
38+
umbDefaultEntityActionKind: ManifestEntityActionDefaultKind;
39+
}
40+
}

src/packages/core/entity-action/entity-action-list.element.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import type { UmbEntityActionArgs } from './types.js';
2+
import type { ManifestEntityAction, MetaEntityAction } from './entity-action.extension.js';
23
import { UmbEntityContext } from '@umbraco-cms/backoffice/entity';
34
import { html, customElement, property, state, css } from '@umbraco-cms/backoffice/external/lit';
4-
import type { ManifestEntityAction, MetaEntityAction } from '@umbraco-cms/backoffice/extension-registry';
55
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
66
import type { UmbApiConstructorArgumentsMethodType } from '@umbraco-cms/backoffice/extension-api';
77

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import type { ManifestElementAndApi, ManifestWithDynamicConditions } from '@umbraco-cms/backoffice/extension-api';
2+
import type { UmbEntityAction, UmbEntityActionElement } from '@umbraco-cms/backoffice/entity-action';
3+
4+
/**
5+
* An action to perform on an entity
6+
* For example for content you may wish to create a new document etc
7+
*/
8+
export interface ManifestEntityAction<MetaType extends MetaEntityAction = MetaEntityAction>
9+
extends ManifestElementAndApi<UmbEntityActionElement, UmbEntityAction<MetaType>>,
10+
ManifestWithDynamicConditions<UmbExtensionCondition> {
11+
type: 'entityAction';
12+
forEntityTypes: Array<string>;
13+
meta: MetaType;
14+
}
15+
16+
// eslint-disable-next-line @typescript-eslint/no-empty-object-type
17+
export interface MetaEntityAction {}
18+
19+
declare global {
20+
interface UmbExtensionManifestMap {
21+
umbEntityAction: ManifestEntityAction;
22+
}
23+
}

src/packages/core/entity-action/index.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
export * from './common/index.js';
2+
export * from './default/index.js';
23
export * from './entity-action-base.js';
34
export * from './entity-action-list.element.js';
45
export * from './entity-action.event.js';
6+
export * from './entity-action.extension.js';
57
export * from './entity-action.interface.js';
68
export * from './types.js';
79
export type * from './entity-action-element.interface.js';

0 commit comments

Comments
 (0)