Skip to content
This repository was archived by the owner on Nov 6, 2025. It is now read-only.

Commit ece4b37

Browse files
committed
input document
1 parent 6768c6b commit ece4b37

File tree

3 files changed

+13
-11
lines changed

3 files changed

+13
-11
lines changed

src/packages/documents/documents/components/input-document/input-document.element.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,14 @@ import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element';
66
import { UmbSorterController } from '@umbraco-cms/backoffice/sorter';
77
import { UMB_WORKSPACE_MODAL } from '@umbraco-cms/backoffice/modal';
88
import { UmbModalRouteRegistrationController } from '@umbraco-cms/backoffice/router';
9-
import { UUIFormControlMixin } from '@umbraco-cms/backoffice/external/uui';
109
import type { UmbDocumentItemModel } from '@umbraco-cms/backoffice/document';
1110
import type { UmbTreeStartNode } from '@umbraco-cms/backoffice/tree';
11+
import { UmbFormControlMixin } from '@umbraco-cms/backoffice/validation';
1212

1313
@customElement('umb-input-document')
14-
export class UmbInputDocumentElement extends UUIFormControlMixin(UmbLitElement, '') {
14+
export class UmbInputDocumentElement extends UmbFormControlMixin<string | undefined, typeof UmbLitElement>(
15+
UmbLitElement,
16+
) {
1517
#sorter = new UmbSorterController<string>(this, {
1618
getUniqueOfElement: (element) => {
1719
return element.id;
@@ -91,12 +93,12 @@ export class UmbInputDocumentElement extends UUIFormControlMixin(UmbLitElement,
9193
@property({ type: Boolean })
9294
showOpenButton?: boolean;
9395

94-
@property()
95-
public set value(idsString: string) {
96-
this.selection = splitStringToArray(idsString);
96+
@property({ type: String })
97+
public set value(selectionString: string | undefined) {
98+
this.selection = splitStringToArray(selectionString);
9799
}
98-
public get value() {
99-
return this.selection.join(',');
100+
public get value(): string | undefined {
101+
return this.selection.length > 0 ? this.selection.join(',') : undefined;
100102
}
101103

102104
@state()

src/packages/documents/documents/entity-actions/public-access/modal/public-access-modal.element.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ export class UmbPublicAccessModalElement extends UmbModalBaseElement<
203203
<umb-localize key="publicAccess_paLoginPageHelp"> Choose the page that contains the login form </umb-localize>
204204
</small>
205205
<umb-input-document
206-
.value=${this._loginDocumentId ? this._loginDocumentId : ''}
206+
.value=${this._loginDocumentId}
207207
max="1"
208208
@change=${this.#onChangeLoginPage}></umb-input-document>
209209
</div>
@@ -216,7 +216,7 @@ export class UmbPublicAccessModalElement extends UmbModalBaseElement<
216216
</umb-localize>
217217
</small>
218218
<umb-input-document
219-
.value=${this._errorDocumentId ? this._errorDocumentId : ''}
219+
.value=${this._errorDocumentId}
220220
max="1"
221221
@change=${this.#onChangeErrorPage}></umb-input-document>
222222
</div>`;

src/packages/documents/documents/property-editors/document-picker/property-editor-ui-document-picker.element.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ export class UmbPropertyEditorUIDocumentPickerElement extends UmbLitElement impl
4141
private _showOpenButton?: boolean;
4242

4343
#onChange(event: CustomEvent & { target: UmbInputDocumentElement }) {
44-
this.value = event.target.selection.join(',');
44+
this.value = event.target.value;
4545
this.dispatchEvent(new UmbPropertyValueChangeEvent());
4646
}
4747

@@ -55,7 +55,7 @@ export class UmbPropertyEditorUIDocumentPickerElement extends UmbLitElement impl
5555
.min=${this._min}
5656
.max=${this._max}
5757
.startNode=${startNode}
58-
.value=${this.value ?? ''}
58+
.value=${this.value}
5959
?showOpenButton=${this._showOpenButton}
6060
@change=${this.#onChange}>
6161
</umb-input-document>

0 commit comments

Comments
 (0)