Package Builder: Language Picker

This commit is contained in:
leekelleher
2024-04-04 11:19:33 +01:00
parent 86468f500c
commit 54deb30c6f
2 changed files with 21 additions and 13 deletions

View File

@@ -109,7 +109,11 @@ export class UmbInputLanguageElement extends FormControlMixin(UmbLitElement) {
render() {
return html`
<uui-ref-list> ${this._items.map((item) => this.#renderItem(item))} </uui-ref-list>
<uui-button id="add-button" look="placeholder" @click=${this.#openPicker} label="open">Add</uui-button>
<uui-button
id="add-button"
look="placeholder"
@click=${this.#openPicker}
label=${this.localize.term('general_choose')}></uui-button>
`;
}
@@ -119,9 +123,9 @@ export class UmbInputLanguageElement extends FormControlMixin(UmbLitElement) {
<!-- TODO: add language ref element -->
<uui-ref-node name=${ifDefined(item.name === null ? undefined : item.name)} detail=${ifDefined(item.unique)}>
<uui-action-bar slot="actions">
<uui-button @click=${() => this.#pickerContext.requestRemoveItem(item.unique!)} label="Remove ${item.name}"
>Remove</uui-button
>
<uui-button
@click=${() => this.#pickerContext.requestRemoveItem(item.unique)}
label=${this.localize.term('general_remove')}></uui-button>
</uui-action-bar>
</uui-ref-node>
`;

View File

@@ -178,8 +178,7 @@ export class UmbWorkspacePackageBuilderElement extends UmbLitElement {
${this.#renderMediaSection()}
${this.#renderDocumentTypeSection()}
${this.#renderMediaTypeSection()}
<umb-property-layout label="Languages" description=""> ${this.#renderLanguageSection()} </umb-property-layout>
${this.#renderLanguageSection()}
<umb-property-layout label="Dictionary" description=""> ${this.#renderDictionarySection()} </umb-property-layout>
@@ -297,13 +296,18 @@ export class UmbWorkspacePackageBuilderElement extends UmbLitElement {
}
#renderLanguageSection() {
return html`<div slot="editor">
<umb-input-language
.value="${this._package.languages?.join(',') ?? ''}"
@change="${(e: CustomEvent) => {
this._package.languages = (e.target as UmbInputLanguageElement).selection;
}}"></umb-input-language>
</div>`;
if (!this._package) return nothing;
return html`
<umb-property-layout label="Languages">
<div slot="editor">
<umb-input-language
.value="${this._package.languages?.join(',') ?? ''}"
@change="${(e: CustomEvent) => {
this._package!.languages = (e.target as UmbInputLanguageElement).selection;
}}"></umb-input-language>
</div>
</umb-property-layout>
`;
}
#renderDictionarySection() {