From f89f14adc2b8b623ad0482dd13a99f260292108d Mon Sep 17 00:00:00 2001 From: Lone Iversen <108085781+loivsen@users.noreply.github.com> Date: Wed, 28 Feb 2024 08:57:46 +0100 Subject: [PATCH] dispatch event --- .../field-dropdown-list.element.ts | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/packages/core/components/field-dropdown-list/field-dropdown-list.element.ts b/src/Umbraco.Web.UI.Client/src/packages/core/components/field-dropdown-list/field-dropdown-list.element.ts index e9c61471c6..4cb214447d 100644 --- a/src/Umbraco.Web.UI.Client/src/packages/core/components/field-dropdown-list/field-dropdown-list.element.ts +++ b/src/Umbraco.Web.UI.Client/src/packages/core/components/field-dropdown-list/field-dropdown-list.element.ts @@ -38,8 +38,17 @@ export class UmbFieldDropdownListElement extends UmbLitElement { @property({ type: Boolean, attribute: 'exclude-media-type', reflect: true }) public excludeMediaType = false; + private _value: FieldPickerValue = { alias: '', label: '' }; @property({ type: Object }) - public value?: FieldPickerValue; + public get value(): FieldPickerValue { + return this._value; + } + public set value(val: FieldPickerValue) { + const oldVal = this._value; + this._value = val; + this.requestUpdate('value', oldVal); + this.dispatchEvent(new UmbChangeEvent()); + } @state() private _type?: FieldType; @@ -133,18 +142,14 @@ export class UmbFieldDropdownListElement extends UmbLitElement { this._uniqueName = ''; this._unique = ''; this._customFields = this._systemFields; - this.value = undefined; break; } - this.dispatchEvent(new UmbChangeEvent()); } #onChangeValue(e: UUIComboboxEvent) { e.stopPropagation(); const alias = (e.composedPath()[0] as UUIComboboxElement).value as FieldType; this.value = this._customFields.find((field) => field.alias === alias) as FieldPickerValue; - - this.dispatchEvent(new UmbChangeEvent()); } render() {