Merge branch 'v15/dev' into v15/feature/emm-app-language-conditions

This commit is contained in:
Mads Rasmussen
2024-09-13 20:34:12 +02:00
committed by GitHub
17 changed files with 26 additions and 129 deletions

View File

@@ -1,33 +0,0 @@
import { css, html, customElement } from '@umbraco-cms/backoffice/external/lit';
import type { ManifestDashboardCollection } from '@umbraco-cms/backoffice/extension-registry';
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
@customElement('umb-dashboard-collection')
export class UmbDashboardCollectionElement extends UmbLitElement {
public manifest!: ManifestDashboardCollection;
// TODO: figure out what collection to render
override render() {
return html`<umb-collection></umb-collection>`;
}
static override styles = [
css`
:host {
display: flex;
flex-direction: column;
box-sizing: border-box;
gap: var(--uui-size-space-5);
height: 100%;
}
`,
];
}
export default UmbDashboardCollectionElement;
declare global {
interface HTMLElementTagNameMap {
'umb-dashboard-collection': UmbDashboardCollectionElement;
}
}

View File

@@ -1,15 +0,0 @@
import type { UmbDashboardCollectionElement } from './dashboard-collection.element.js';
import type { Meta, Story } from '@storybook/web-components';
import { html } from '@umbraco-cms/backoffice/external/lit';
import './dashboard-collection.element.js';
export default {
title: 'Dashboards/Media Management',
component: 'umb-dashboard-collection',
id: 'umb-dashboard-collection',
} as Meta;
export const AAAOverview: Story<UmbDashboardCollectionElement> = () =>
html` <umb-dashboard-collection></umb-dashboard-collection>`;
AAAOverview.storyName = 'Overview';

View File

@@ -1,54 +0,0 @@
import type { ManifestBase } from '@umbraco-cms/backoffice/extension-api';
export interface ManifestDashboardCollection extends ManifestBase {
type: 'dashboardCollection';
meta: MetaDashboardCollection;
conditions: ConditionsDashboardCollection;
}
export interface MetaDashboardCollection {
/**
* The URL path for the dashboard which is used for navigating or deep linking directly to the dashboard
* @examples [
* "media-management-dashboard",
* "my-awesome-dashboard"
* ]
*/
pathname: string;
/**
* Optional string to display as the label for the dashboard collection
*/
label?: string;
/**
* The alias of the repository that the dashboard collection is for
* @examples [
* "Umb.Repository.Media"
* ]
*/
repositoryAlias: string;
}
/**
* The conditions for when the dashboard should be available
*/
export interface ConditionsDashboardCollection {
/**
* An array of section aliases that the dashboard collection should be available in
* @uniqueItems true
* @examples [
* "Umb.Section.Content",
* "Umb.Section.Settings"
* ]
*/
sections: string[];
/**
* The entity type that the dashboard collection should be available for
* @examples [
* "media"
* ]
*/
entityType: string;
}

View File

@@ -1,7 +1,6 @@
import type { ManifestAuthProvider } from './auth-provider.model.js';
import type { ManifestCurrentUserAction, ManifestCurrentUserActionDefaultKind } from './current-user-action.model.js';
import type { ManifestDashboard } from './dashboard.model.js';
import type { ManifestDashboardCollection } from './dashboard-collection.model.js';
import type {
ManifestEntityAction,
ManifestEntityActionDeleteKind,
@@ -61,8 +60,6 @@ import type {
import type { ManifestEntityUserPermission } from './entity-user-permission.model.js';
import type { ManifestGranularUserPermission } from './user-granular-permission.model.js';
import type { ManifestMfaLoginProvider } from './mfa-login-provider.model.js';
import type { ManifestSearchProvider } from './search-provider.model.js';
import type { ManifestSearchResultItem } from './search-result-item.model.js';
import type { ManifestAppEntryPoint } from './app-entry-point.model.js';
import type { ManifestBackofficeEntryPoint } from './backoffice-entry-point.model.js';
import type { ManifestEntryPoint } from './entry-point.model.js';
@@ -75,7 +72,6 @@ export type * from './app-entry-point.model.js';
export type * from './auth-provider.model.js';
export type * from './backoffice-entry-point.model.js';
export type * from './current-user-action.model.js';
export type * from './dashboard-collection.model.js';
export type * from './dashboard.model.js';
export type * from './dynamic-root.model.js';
export type * from './entity-action.model.js';
@@ -99,8 +95,6 @@ export type * from './preview-app.model.js';
export type * from './property-action.model.js';
export type * from './property-editor.model.js';
export type * from './repository.model.js';
export type * from './search-provider.model.js';
export type * from './search-result-item.model.js';
export type * from './section-sidebar-app.model.js';
export type * from './section-view.model.js';
export type * from './section.model.js';
@@ -157,7 +151,6 @@ export type ManifestTypes =
| ManifestCurrentUserAction
| ManifestCurrentUserActionDefaultKind
| ManifestDashboard
| ManifestDashboardCollection
| ManifestDynamicRootOrigin
| ManifestDynamicRootQueryStep
| ManifestEntityActions
@@ -187,8 +180,6 @@ export type ManifestTypes =
| ManifestPropertyEditorSchema
| ManifestPropertyEditorUi
| ManifestRepository
| ManifestSearchProvider
| ManifestSearchResultItem
| ManifestSection
| ManifestSectionRoute
| ManifestSectionSidebarApp

View File

@@ -1,7 +1,6 @@
import { UMB_DATA_TYPE_ENTITY_TYPE } from '../entity.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Data Type Search Provider',
alias: 'Umb.SearchProvider.DataType',

View File

@@ -1,8 +1,7 @@
import { UMB_DOCUMENT_TYPE_ENTITY_TYPE } from '../entity.js';
import { UMB_DOCUMENT_TYPE_SEARCH_PROVIDER_ALIAS } from './constants.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Document Type Search Provider',
alias: UMB_DOCUMENT_TYPE_SEARCH_PROVIDER_ALIAS,

View File

@@ -1,8 +1,7 @@
import { UMB_DOCUMENT_ENTITY_TYPE } from '../entity.js';
import { UMB_DOCUMENT_SEARCH_PROVIDER_ALIAS } from './constants.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Document Search Provider',
alias: UMB_DOCUMENT_SEARCH_PROVIDER_ALIAS,

View File

@@ -1,7 +1,6 @@
import { UMB_MEDIA_TYPE_ENTITY_TYPE } from '../entity.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Media Type Search Provider',
alias: 'Umb.SearchProvider.MediaType',

View File

@@ -1,7 +1,6 @@
import { UMB_MEDIA_ENTITY_TYPE } from '../entity.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Media Search Provider',
alias: 'Umb.SearchProvider.Media',

View File

@@ -1,7 +1,6 @@
import { UMB_MEMBER_TYPE_ENTITY_TYPE } from '../entity.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Member Type Search Provider',
alias: 'Umb.SearchProvider.MemberType',

View File

@@ -1,8 +1,7 @@
import { UMB_MEMBER_ENTITY_TYPE } from '../entity.js';
import { UMB_MEMBER_SEARCH_PROVIDER_ALIAS } from './constants.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Member Search Provider',
alias: UMB_MEMBER_SEARCH_PROVIDER_ALIAS,

View File

@@ -0,0 +1,2 @@
export * from './search-provider.extension.js';
export * from './search-result-item.extension.js';

View File

@@ -1,4 +1,4 @@
import type { UmbSearchProvider, UmbSearchResultItemModel } from '@umbraco-cms/backoffice/search';
import type { UmbSearchProvider, UmbSearchResultItemModel } from '../types.js';
import type { ManifestApi } from '@umbraco-cms/backoffice/extension-api';
/**
@@ -16,3 +16,9 @@ export interface MetaSearchProvider {
*/
label?: string;
}
declare global {
interface UmbExtensionManifestMap {
umbSearchProvider: ManifestSearchProvider;
}
}

View File

@@ -7,3 +7,9 @@ export interface ManifestSearchResultItem extends ManifestElement {
type: 'searchResultItem';
forEntityTypes: Array<string>;
}
declare global {
interface UmbExtensionManifestMap {
umbSearchResultItem: ManifestSearchResultItem;
}
}

View File

@@ -1,3 +1,5 @@
export type { UmbSearchResultItemModel, UmbSearchRequestArgs, UmbSearchProvider } from './types.js';
export type { UmbSearchDataSource } from './search-data-source.interface.js';
export type { UmbSearchRepository } from './search-repository.interface.js';
export * from './extensions/index.js';

View File

@@ -10,13 +10,13 @@ import {
state,
property,
} from '@umbraco-cms/backoffice/external/lit';
import type { ManifestSearchResultItem } from '@umbraco-cms/backoffice/extension-registry';
import { umbExtensionsRegistry } from '@umbraco-cms/backoffice/extension-registry';
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
import { UmbExtensionsManifestInitializer, createExtensionApi } from '@umbraco-cms/backoffice/extension-api';
import '../search-result/search-result-item.element.js';
import type { UmbModalContext } from '@umbraco-cms/backoffice/modal';
import type { ManifestSearchResultItem } from '../extensions/index.js';
type SearchProvider = {
name: string;

View File

@@ -1,7 +1,6 @@
import { UMB_TEMPLATE_ENTITY_TYPE } from '../entity.js';
import type { ManifestTypes } from '@umbraco-cms/backoffice/extension-registry';
export const manifests: Array<ManifestTypes> = [
export const manifests: Array<UmbExtensionManifest> = [
{
name: 'Template Search Provider',
alias: 'Umb.SearchProvider.Template',