add variant status

This commit is contained in:
Jacob Overgaard
2024-02-20 11:07:54 +01:00
parent 648cf4ec8b
commit 6a642f5408

View File

@@ -1,4 +1,4 @@
import { UmbDocumentVariantState } from '../../types.js';
import { type UmbDocumentVariantModel, UmbDocumentVariantState } from '../../types.js';
import type {
UmbDocumentVariantPickerModalValue,
UmbDocumentVariantPickerModalData,
@@ -97,7 +97,7 @@ export class UmbDocumentVariantPickerModalElement extends UmbModalBaseElement<
(item) => item.culture,
(item) => html`
<uui-menu-item
label=${item.name ?? ''}
label=${item.name}
selectable
@selected=${() => this.#selectionManager.select(item.culture)}
@deselected=${() => this.#selectionManager.deselect(item.culture)}
@@ -105,11 +105,7 @@ export class UmbDocumentVariantPickerModalElement extends UmbModalBaseElement<
<uui-icon slot="icon" name="icon-globe"></uui-icon>
<div class="label" slot="label">
<strong>${item.name}</strong>
<div class="label-status">
${this.localize.term(
item.state === UmbDocumentVariantState.PUBLISHED ? 'content_published' : 'content_unpublished',
)}
</div>
<div class="label-status">${this.#renderVariantStatus(item)}</div>
</div>
</uui-menu-item>
`,
@@ -125,6 +121,19 @@ export class UmbDocumentVariantPickerModalElement extends UmbModalBaseElement<
</umb-body-layout> `;
}
#renderVariantStatus(variant: UmbDocumentVariantModel) {
switch (variant.state) {
case UmbDocumentVariantState.PUBLISHED:
return this.localize.term('content_published');
case UmbDocumentVariantState.PUBLISHED_PENDING_CHANGES:
return this.localize.term('content_publishedPendingChanges');
case UmbDocumentVariantState.NOT_CREATED:
case UmbDocumentVariantState.DRAFT:
default:
return this.localize.term('content_unpublished');
}
}
static styles = [
UmbTextStyles,
css`