diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/manifests.ts index e5ae132cc1..d55191dd98 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/manifests.ts @@ -1,5 +1,5 @@ import type { ManifestTypes } from '../models/index.js'; -import { manifest as sectionAliasConditionManifest } from './section-alias.condition.js'; + import { manifest as switchConditionManifest } from './switch.condition.js'; -export const manifests: Array = [sectionAliasConditionManifest, switchConditionManifest]; +export const manifests: Array = [switchConditionManifest]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/types.ts b/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/types.ts index 4ec44812a4..17c157d469 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/types.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/types.ts @@ -1,13 +1,11 @@ import type { CollectionAliasConditionConfig } from '../../collection/collection-alias.manifest.js'; import type { CollectionBulkActionPermissionConditionConfig } from '../../collection/collection-bulk-action-permission.manifest.js'; -import type { SectionAliasConditionConfig } from './section-alias.condition.js'; import type { SwitchConditionConfig } from './switch.condition.js'; import type { UmbConditionConfigBase } from '@umbraco-cms/backoffice/extension-api'; export type ConditionTypes = | CollectionAliasConditionConfig | CollectionBulkActionPermissionConditionConfig - | SectionAliasConditionConfig | SwitchConditionConfig | UmbConditionConfigBase; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/index.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/index.ts index 3256287dd5..06c33f562f 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/index.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/index.ts @@ -1 +1 @@ -export * from './section-user-permission.condition.js'; +export type * from './types.js'; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/manifests.ts new file mode 100644 index 0000000000..d502598705 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/manifests.ts @@ -0,0 +1,17 @@ +import { UmbSectionAliasCondition } from './section-alias.condition.js'; +import { UmbSectionUserPermissionCondition } from './section-user-permission.condition.js'; + +export const manifests: Array = [ + { + type: 'condition', + name: 'Section User Permission Condition', + alias: 'Umb.Condition.SectionUserPermission', + api: UmbSectionUserPermissionCondition, + }, + { + type: 'condition', + name: 'Section Alias Condition', + alias: 'Umb.Condition.SectionAlias', + api: UmbSectionAliasCondition, + }, +]; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/section-alias.condition.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-alias.condition.ts similarity index 56% rename from src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/section-alias.condition.ts rename to src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-alias.condition.ts index b059d18c09..709bbfb7e2 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/extension-registry/conditions/section-alias.condition.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-alias.condition.ts @@ -1,11 +1,7 @@ -import { UmbConditionBase } from './condition-base.controller.js'; +import { UmbConditionBase } from '../../extension-registry/conditions/condition-base.controller.js'; +import type { SectionAliasConditionConfig } from './types.js'; import type { UmbControllerHost } from '@umbraco-cms/backoffice/controller-api'; -import type { - ManifestCondition, - UmbConditionConfigBase, - UmbConditionControllerArguments, - UmbExtensionCondition, -} from '@umbraco-cms/backoffice/extension-api'; +import type { UmbConditionControllerArguments, UmbExtensionCondition } from '@umbraco-cms/backoffice/extension-api'; import { UMB_SECTION_CONTEXT } from '@umbraco-cms/backoffice/section'; export class UmbSectionAliasCondition @@ -35,24 +31,3 @@ export class UmbSectionAliasCondition } } } - -export type SectionAliasConditionConfig = UmbConditionConfigBase<'Umb.Condition.SectionAlias'> & { - /** - * Define the section that this extension should be available in - * @example "Umb.Section.Content" - */ - match: string; - /** - * Define one or more workspaces that this extension should be available in - * @example - * ["Umb.Section.Content", "Umb.Section.Media"] - */ - oneOf?: Array; -}; - -export const manifest: ManifestCondition = { - type: 'condition', - name: 'Section Alias Condition', - alias: 'Umb.Condition.SectionAlias', - api: UmbSectionAliasCondition, -}; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-user-permission.condition.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-user-permission.condition.ts index 0fefc682ad..5cd34442bd 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-user-permission.condition.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/section-user-permission.condition.ts @@ -27,10 +27,3 @@ export class UmbSectionUserPermissionCondition extends UmbControllerBase impleme }); } } - -export const manifest = { - type: 'condition', - name: 'Section User Permission Condition', - alias: 'Umb.Condition.SectionUserPermission', - api: UmbSectionUserPermissionCondition, -}; diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/types.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/types.ts index d4f1331089..45adde8b02 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/types.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/conditions/types.ts @@ -10,8 +10,23 @@ export type UmbSectionUserPermissionConditionConfig = UmbConditionConfigBase<'Um match: string; }; +export type SectionAliasConditionConfig = UmbConditionConfigBase<'Umb.Condition.SectionAlias'> & { + /** + * Define the section that this extension should be available in + * @example "Umb.Section.Content" + */ + match: string; + /** + * Define one or more workspaces that this extension should be available in + * @example + * ["Umb.Section.Content", "Umb.Section.Media"] + */ + oneOf?: Array; +}; + declare global { interface UmbExtensionConditionMap { UmbSectionUserPermissionConditionConfig: UmbSectionUserPermissionConditionConfig; + UmbSectionAliasConditionConfig: SectionAliasConditionConfig; } } diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/section/manifests.ts b/src/Umbraco.Web.UI.Client/src/packages/core/section/manifests.ts index 4d21c4412b..e188465778 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/section/manifests.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/section/manifests.ts @@ -1,4 +1,4 @@ -import { manifest as sectionUserPermissionConditionManifest } from './conditions/section-user-permission.condition.js'; +import { manifests as sectionUserPermissionConditionManifests } from './conditions/manifests.js'; import { manifests as repositoryManifests } from './repository/manifests.js'; export const manifests: Array = [ @@ -8,6 +8,6 @@ export const manifests: Array = [ name: 'Section Picker Modal', element: () => import('./section-picker-modal/section-picker-modal.element.js'), }, - sectionUserPermissionConditionManifest, + ...sectionUserPermissionConditionManifests, ...repositoryManifests, ];