Move document table collection view manifest + files to document silo folder

This commit is contained in:
Mads Rasmussen
2023-02-06 10:02:30 +01:00
parent 22c28345d9
commit 394032ba6f
4 changed files with 39 additions and 26 deletions

View File

@@ -1,7 +1,7 @@
import { UUITextStyles } from '@umbraco-ui/uui-css';
import { css, html } from 'lit';
import { customElement, state } from 'lit/decorators.js';
import { UmbCollectionContext, UMB_COLLECTION_CONTEXT_TOKEN } from '../collection.context';
import { UmbCollectionContext, UMB_COLLECTION_CONTEXT_TOKEN } from '../../../shared/collection/collection.context';
import {
UmbTableColumn,
UmbTableConfig,
@@ -10,15 +10,15 @@ import {
UmbTableItem,
UmbTableOrderedEvent,
UmbTableSelectedEvent,
} from '../../components/table';
} from '../../../shared/components/table';
import type { DocumentDetails } from '@umbraco-cms/models';
import { UmbLitElement } from '@umbraco-cms/element';
import { EntityTreeItem } from '@umbraco-cms/backend-api';
type EntityType = DocumentDetails;
@customElement('umb-collection-view-document-table')
export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
@customElement('umb-document-table-collection-view')
export class UmbDocumentTableCollectionViewElement extends UmbLitElement {
static styles = [
UUITextStyles,
css`
@@ -38,7 +38,7 @@ export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
];
@state()
private _items?: Array<EntityType>;
private _items?: Array<EntityTreeItem>;
@state()
private _tableConfig: UmbTableConfig = {
@@ -51,6 +51,10 @@ export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
name: 'Name',
alias: 'entityName',
},
{
name: 'Actions',
alias: 'entityActions',
},
];
@state()
@@ -82,8 +86,10 @@ export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
});
}
private _createTableItems(items: Array<any>) {
private _createTableItems(items: Array<EntityTreeItem>) {
this._tableItems = items.map((item) => {
// TODO: use unique instead of key
if (!item.key) throw new Error('Item key is missing.');
return {
key: item.key,
icon: item.icon,
@@ -92,6 +98,10 @@ export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
columnAlias: 'entityName',
value: item.name || 'Untitled',
},
{
columnAlias: 'entityActions',
value: item.name || 'Untitled',
},
],
};
});
@@ -132,8 +142,10 @@ export class UmbCollectionViewDocumentTableElement extends UmbLitElement {
}
}
export default UmbDocumentTableCollectionViewElement;
declare global {
interface HTMLElementTagNameMap {
'umb-collection-view-document-table': UmbCollectionViewDocumentTableElement;
'umb-collection-view-document-table': UmbDocumentTableCollectionViewElement;
}
}

View File

@@ -0,0 +1,17 @@
import { ManifestCollectionView } from '@umbraco-cms/extensions-registry';
export const manifests: Array<ManifestCollectionView> = [
{
type: 'collectionView',
alias: 'Umb.CollectionView.Document.Table',
name: 'Document Table Collection View',
loader: () => import('./document-table-collection-view.element'),
weight: 200,
meta: {
label: 'Table',
icon: 'umb:box',
entityType: 'document',
pathName: 'table',
},
},
];

View File

@@ -1,3 +1,4 @@
import { manifests as collectionManifests } from './collection/manifests';
import { manifests as sidebarMenuItemManifests } from './sidebar-menu-item/manifests';
import { manifests as repositoryManifests } from './repository/manifests';
import { manifests as treeManifests } from './tree/manifests';
@@ -5,6 +6,7 @@ import { manifests as workspaceManifests } from './workspace/manifests';
import { manifests as entityActionManifests } from './entity-actions/manifests';
export const manifests = [
...collectionManifests,
...sidebarMenuItemManifests,
...treeManifests,
...repositoryManifests,

View File

@@ -1,24 +1,6 @@
import type { ManifestCollectionView } from '@umbraco-cms/models';
export const manifests: Array<ManifestCollectionView> = [
{
type: 'collectionView',
alias: 'Umb.CollectionView.Table',
name: 'Table',
elementName: 'umb-collection-view-document-table',
loader: () => import('./collection-view-document-table.element'),
weight: 200,
meta: {
label: 'Table',
icon: 'umb:box',
entityType: 'document',
pathName: 'table',
},
},
{
type: 'collectionView',
alias: 'Umb.CollectionView.Grid',