add tree item element to render tree item extensions

This commit is contained in:
Mads Rasmussen
2023-03-23 12:33:25 +01:00
parent 6df715f4ac
commit 0fc5a1d099

View File

@@ -0,0 +1,29 @@
import { css, html } from 'lit';
import { UUITextStyles } from '@umbraco-ui/uui-css/lib';
import { customElement, property } from 'lit/decorators.js';
import { UmbLitElement } from '@umbraco-cms/internal/lit-element';
import { EntityTreeItemResponseModel } from 'libs/backend-api/src';
import { ManifestTreeItem } from 'libs/extensions-registry/tree-item.models';
@customElement('umb-tree-item')
export class UmbTreeItemElement extends UmbLitElement {
static styles = [UUITextStyles, css``];
@property({ type: Object, attribute: false })
item?: EntityTreeItemResponseModel;
render() {
return html`<umb-extension-slot
type="treeItem"
.filter=${(manifests: ManifestTreeItem) => manifests.conditions.entityType === this.item?.type}
.props=${{
item: this.item,
}}></umb-extension-slot>`;
}
}
declare global {
interface HTMLElementTagNameMap {
'umb-tree-item': UmbTreeItemElement;
}
}