From 126f57782e9b71fbb9e2f0f695bd447c04435689 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Niels=20Lyngs=C3=B8?= Date: Wed, 17 Dec 2025 15:32:59 +0100 Subject: [PATCH] embeds the API of selected Conditions --- .../src/packages/block/block/conditions/manifests.ts | 9 ++++++--- .../workspace-has-content-collection/manifests.ts | 3 ++- .../content-has-properties.condition.manifest.ts | 3 ++- .../src/packages/core/collection/conditions/manifests.ts | 3 ++- .../condition/entity-has-children.condition.manifest.ts | 3 ++- .../src/packages/core/entity/entity-type/manifests.ts | 3 ++- .../src/packages/core/entity/entity-unique/manifests.ts | 3 ++- .../entity-is-not-trashed.condition.manifest.ts | 3 ++- .../is-trashed/entity-is-trashed.condition.manifest.ts | 3 ++- .../conditions/is-trashed/entity-is-trashed.condition.ts | 7 +++++-- .../documents/documents/recycle-bin/manifests.ts | 3 ++- .../user-permissions/document/conditions/manifests.ts | 3 ++- .../document-is-not-trashed.condition.manifest.ts | 3 ++- .../is-trashed/document-is-trashed.condition.manifest.ts | 3 ++- .../conditions/language-user-permission/manifests.ts | 3 ++- .../conditions/group-id/group-id.condition.manifest.ts | 3 ++- .../conditions/is-admin/is-admin.condition.manifest.ts | 3 ++- .../conditions/is-admin/is-admin.condition.ts | 4 ++-- .../fallback-permission-condition/manifests.ts | 3 ++- 19 files changed, 45 insertions(+), 23 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/packages/block/block/conditions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/block/block/conditions/manifests.ts index 72044eaa05dc..91d527a37b64 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/block/block/conditions/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/block/block/conditions/manifests.ts @@ -1,3 +1,6 @@ +import UmbBlockEntryShowContentEditCondition from './block-entry-show-content-edit.condition.js'; +import UmbBlockWorkspaceHasSettingsCondition from './block-workspace-has-settings.condition.js'; +import UmbBlockEntryIsExposedCondition from './block-workspace-is-exposed.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifests: Array = [ @@ -5,18 +8,18 @@ export const manifests: Array = [ type: 'condition', name: 'Block Has Settings Condition', alias: 'Umb.Condition.BlockWorkspaceHasSettings', - api: () => import('./block-workspace-has-settings.condition.js'), + api: UmbBlockWorkspaceHasSettingsCondition, }, { type: 'condition', name: 'Block Show Content Edit Condition', alias: 'Umb.Condition.BlockEntryShowContentEdit', - api: () => import('./block-entry-show-content-edit.condition.js'), + api: UmbBlockEntryShowContentEditCondition, }, { type: 'condition', name: 'Block Workspace Is Exposed Condition', alias: 'Umb.Condition.BlockWorkspaceIsExposed', - api: () => import('./block-workspace-is-exposed.condition.js'), + api: UmbBlockEntryIsExposedCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/content/content/collection/workspace-has-content-collection/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/content/content/collection/workspace-has-content-collection/manifests.ts index fa1ea2ce3a65..ee1b3647cfa3 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/content/content/collection/workspace-has-content-collection/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/content/content/collection/workspace-has-content-collection/manifests.ts @@ -1,10 +1,11 @@ import { UMB_WORKSPACE_HAS_CONTENT_COLLECTION_CONDITION_ALIAS } from './constants.js'; +import { UmbWorkspaceHasContentCollectionCondition } from './workspace-has-content-collection.condition.js'; export const manifests: Array = [ { type: 'condition', name: 'Workspace Has Collection Condition', alias: UMB_WORKSPACE_HAS_CONTENT_COLLECTION_CONDITION_ALIAS, - api: () => import('./workspace-has-content-collection.condition.js'), + api: UmbWorkspaceHasContentCollectionCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/content/content/conditions/has-properties/content-has-properties.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/content/content/conditions/has-properties/content-has-properties.condition.manifest.ts index 654bbb853b1a..f1e502e619c1 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/content/content/conditions/has-properties/content-has-properties.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/content/content/conditions/has-properties/content-has-properties.condition.manifest.ts @@ -1,8 +1,9 @@ +import { UmbContentHasPropertiesWorkspaceCondition } from './content-has-properties.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Content has properties Workspace Condition', alias: 'Umb.Condition.Workspace.ContentHasProperties', - api: () => import('./content-has-properties.condition.js'), + api: UmbContentHasPropertiesWorkspaceCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/manifests.ts index 252ffcf6f017..f270a9afa5f9 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/collection/conditions/manifests.ts @@ -1,3 +1,4 @@ +import UmbCollectionAliasCondition from './collection-alias.condition.js'; import { UMB_COLLECTION_ALIAS_CONDITION } from './constants.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; @@ -6,6 +7,6 @@ export const manifests: Array = [ type: 'condition', name: 'Collection Alias Condition', alias: UMB_COLLECTION_ALIAS_CONDITION, - api: () => import('./collection-alias.condition.js'), + api: UmbCollectionAliasCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.ts index ddfde4f2a9a1..d1d0a7e5110e 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/entity-action/has-children/condition/entity-has-children.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_ENTITY_HAS_CHILDREN_CONDITION_ALIAS } from './constants.js'; +import { UmbEntityHasChildrenCondition } from './entity-has-children.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Entity Has Children Condition', alias: UMB_ENTITY_HAS_CHILDREN_CONDITION_ALIAS, - api: () => import('./entity-has-children.condition.js'), + api: UmbEntityHasChildrenCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-type/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-type/manifests.ts index fdab02c68899..700d6eca9b5a 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-type/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-type/manifests.ts @@ -1,10 +1,11 @@ import { UMB_ENTITY_TYPE_CONDITION_ALIAS } from './constants.js'; +import { UmbEntityTypeCondition } from './entity-type.condition.js'; export const manifests: Array = [ { type: 'condition', name: 'Umbraco Entity Type Condition', alias: UMB_ENTITY_TYPE_CONDITION_ALIAS, - api: () => import('./entity-type.condition.js'), + api: UmbEntityTypeCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-unique/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-unique/manifests.ts index accb4199eb3c..2ec7b3a9cd3d 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-unique/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/entity/entity-unique/manifests.ts @@ -1,10 +1,11 @@ import { UMB_ENTITY_UNIQUE_CONDITION_ALIAS } from './constants.js'; +import { UmbEntityUniqueCondition } from './entity-unique.condition.js'; export const manifests: Array = [ { type: 'condition', name: 'Umbraco Entity Unique Condition', alias: UMB_ENTITY_UNIQUE_CONDITION_ALIAS, - api: () => import('./entity-unique.condition.js'), + api: UmbEntityUniqueCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-not-trashed/entity-is-not-trashed.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-not-trashed/entity-is-not-trashed.condition.manifest.ts index 425d59c64aa7..3d15e3afaf3f 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-not-trashed/entity-is-not-trashed.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-not-trashed/entity-is-not-trashed.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_ENTITY_IS_NOT_TRASHED_CONDITION_ALIAS } from './constants.js'; +import { UmbEntityIsNotTrashedCondition } from './entity-is-not-trashed.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Entity Is not trashed Condition', alias: UMB_ENTITY_IS_NOT_TRASHED_CONDITION_ALIAS, - api: () => import('./entity-is-not-trashed.condition.js'), + api: UmbEntityIsNotTrashedCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.manifest.ts index 0f7a4c14e994..42a06e41ef94 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_ENTITY_IS_TRASHED_CONDITION_ALIAS } from './constants.js'; +import { UmbEntityIsTrashedCondition } from './entity-is-trashed.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Entity Is trashed Condition', alias: UMB_ENTITY_IS_TRASHED_CONDITION_ALIAS, - api: () => import('./entity-is-trashed.condition.js'), + api: UmbEntityIsTrashedCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.ts b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.ts index d68af75ccac8..392860b53693 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/recycle-bin/conditions/is-trashed/entity-is-trashed.condition.ts @@ -7,7 +7,10 @@ import type { } from '@umbraco-cms/backoffice/extension-api'; import { UmbConditionBase } from '@umbraco-cms/backoffice/extension-registry'; -export class UmbIsTrashedCondition extends UmbConditionBase implements UmbExtensionCondition { +export class UmbEntityIsTrashedCondition + extends UmbConditionBase + implements UmbExtensionCondition +{ constructor(host: UmbControllerHost, args: UmbConditionControllerArguments) { super(host, args); @@ -19,4 +22,4 @@ export class UmbIsTrashedCondition extends UmbConditionBase = [ type: 'condition', name: 'Allow Document Recycle Bin Current User Condition', alias: 'Umb.Condition.CurrentUser.AllowDocumentRecycleBin', - api: () => import('./allow-document-recycle-bin.condition.js'), + api: UmbAllowDocumentRecycleBinCurrentUserCondition, }, ...entityActionManifests, ...menuManifests, diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/user-permissions/document/conditions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/user-permissions/document/conditions/manifests.ts index f9dcb7315c41..a0de95ce4b82 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/user-permissions/document/conditions/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/user-permissions/document/conditions/manifests.ts @@ -1,10 +1,11 @@ import { UMB_DOCUMENT_USER_PERMISSION_CONDITION_ALIAS } from './constants.js'; +import { UmbDocumentUserPermissionCondition } from './document-user-permission.condition.js'; export const manifests: Array = [ { type: 'condition', name: 'Document User Permission Condition', alias: UMB_DOCUMENT_USER_PERMISSION_CONDITION_ALIAS, - api: () => import('./document-user-permission.condition.js'), + api: UmbDocumentUserPermissionCondition, }, ]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-not-trashed/document-is-not-trashed.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-not-trashed/document-is-not-trashed.condition.manifest.ts index ede21e0125a0..212390f28113 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-not-trashed/document-is-not-trashed.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-not-trashed/document-is-not-trashed.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_DOCUMENT_IS_NOT_TRASHED_CONDITION_ALIAS } from './constants.js'; +import { UmbDocumentIsNotTrashedWorkspaceCondition } from './document-is-not-trashed.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Document is not trashed Workspace Condition', alias: UMB_DOCUMENT_IS_NOT_TRASHED_CONDITION_ALIAS, - api: () => import('./document-is-not-trashed.condition.js'), + api: UmbDocumentIsNotTrashedWorkspaceCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-trashed/document-is-trashed.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-trashed/document-is-trashed.condition.manifest.ts index 23cc3160d54e..8dec298519d5 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-trashed/document-is-trashed.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/documents/documents/workspace/conditions/is-trashed/document-is-trashed.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_DOCUMENT_IS_TRASHED_CONDITION_ALIAS } from './constants.js'; +import { UmbDocumentIsTrashedWorkspaceCondition } from './document-is-trashed.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Document is trashed Workspace Condition', alias: UMB_DOCUMENT_IS_TRASHED_CONDITION_ALIAS, - api: () => import('./document-is-trashed.condition.js'), + api: UmbDocumentIsTrashedWorkspaceCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/language/conditions/language-user-permission/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/language/conditions/language-user-permission/manifests.ts index 955d63696cba..9105ace3ef20 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/language/conditions/language-user-permission/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/language/conditions/language-user-permission/manifests.ts @@ -1,8 +1,9 @@ import { UMB_LANGUAGE_USER_PERMISSION_CONDITION_ALIAS } from './constants.js'; +import { UmbLanguageUserPermissionCondition } from './language-user-permission.condition.js'; export const manifest: UmbExtensionManifest = { type: 'condition', name: 'Language User Permission Condition', alias: UMB_LANGUAGE_USER_PERMISSION_CONDITION_ALIAS, - api: () => import('./language-user-permission.condition.js'), + api: UmbLanguageUserPermissionCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/group-id/group-id.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/group-id/group-id.condition.manifest.ts index 9755685912ce..f2b6a7115133 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/group-id/group-id.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/group-id/group-id.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_CURRENT_USER_GROUP_ID_CONDITION_ALIAS } from './constants.js'; +import { UmbCurrentUserGroupCondition } from './group-id.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Current user group id Condition', alias: UMB_CURRENT_USER_GROUP_ID_CONDITION_ALIAS, - api: () => import('./group-id.condition.js'), + api: UmbCurrentUserGroupCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.manifest.ts b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.manifest.ts index b9c81293e09c..702bab4f6d14 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.manifest.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.manifest.ts @@ -1,9 +1,10 @@ import { UMB_CURRENT_USER_IS_ADMIN_CONDITION_ALIAS } from './constants.js'; +import { UmbCurrentUserIsAdminCondition } from './is-admin.condition.js'; import type { ManifestCondition } from '@umbraco-cms/backoffice/extension-api'; export const manifest: ManifestCondition = { type: 'condition', name: 'Current user is admin Condition', alias: UMB_CURRENT_USER_IS_ADMIN_CONDITION_ALIAS, - api: () => import('./is-admin.condition.js'), + api: UmbCurrentUserIsAdminCondition, }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.ts b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.ts index 759594445099..ecba5854b673 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/user/current-user/conditions/is-admin/is-admin.condition.ts @@ -7,7 +7,7 @@ import type { } from '@umbraco-cms/backoffice/extension-api'; import { UmbConditionBase } from '@umbraco-cms/backoffice/extension-registry'; -export class UmbContentHasPropertiesWorkspaceCondition +export class UmbCurrentUserIsAdminCondition extends UmbConditionBase implements UmbExtensionCondition { @@ -17,4 +17,4 @@ export class UmbContentHasPropertiesWorkspaceCondition } } -export { UmbContentHasPropertiesWorkspaceCondition as api }; +export { UmbCurrentUserIsAdminCondition as api }; diff --git a/src/Umbraco.Web.UI.Client/src/packages/user/user-permission/fallback-permission-condition/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/user/user-permission/fallback-permission-condition/manifests.ts index 88fd75d576db..00b290eb1ac3 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/user/user-permission/fallback-permission-condition/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/user/user-permission/fallback-permission-condition/manifests.ts @@ -1,10 +1,11 @@ import { UMB_FALLBACK_USER_PERMISSION_CONDITION_ALIAS } from './constants.js'; +import { UmbFallbackUserPermissionCondition } from './fallback-user-permission.condition.js'; export const manifests: Array = [ { type: 'condition', name: 'User Fallback Permission Condition', alias: UMB_FALLBACK_USER_PERMISSION_CONDITION_ALIAS, - api: () => import('./fallback-user-permission.condition.js'), + api: UmbFallbackUserPermissionCondition, }, ];