diff --git a/app/src/modules/settings/routes/data-model/field-detail/field-detail-advanced/field-detail-advanced-display.vue b/app/src/modules/settings/routes/data-model/field-detail/field-detail-advanced/field-detail-advanced-display.vue index 5d20946d67..6e82d6adb7 100644 --- a/app/src/modules/settings/routes/data-model/field-detail/field-detail-advanced/field-detail-advanced-display.vue +++ b/app/src/modules/settings/routes/data-model/field-detail/field-detail-advanced/field-detail-advanced-display.vue @@ -40,7 +40,6 @@ export default defineComponent({ const interfaceID = computed(() => field.value.meta?.interface); const display = syncFieldDetailStoreProperty('field.meta.display'); - const options = syncFieldDetailStoreProperty('field.meta.display_options'); const selectedInterface = computed(() => getInterface(interfaceID.value)); const selectedDisplay = computed(() => getDisplay(display.value)); @@ -93,6 +92,20 @@ export default defineComponent({ return null; }); + const options = computed({ + get() { + return fieldDetailStore.field.meta?.display_options ?? {}; + }, + set(newOptions: Record) { + fieldDetailStore.$patch((state) => { + state.field.meta = { + ...(state.field.meta ?? {}), + display_options: newOptions, + }; + }); + }, + }); + return { t, selectItems, selectedDisplay, display, options, customOptionsFields }; }, });