From a37b3389d69c0c17008e25196ec7ad6b6bc4fdd2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Steinhagen?= Date: Wed, 25 Feb 2026 10:23:19 +0200 Subject: [PATCH 1/3] fix(dui): prevents empty publish selection state --- components/model/Sender.vue | 29 ++++++++++++++++++++++------- components/send/Wizard.vue | 20 +++++++++++++++++--- 2 files changed, 39 insertions(+), 10 deletions(-) diff --git a/components/model/Sender.vue b/components/model/Sender.vue index 9f5c0f3..0210e84 100644 --- a/components/model/Sender.vue +++ b/components/model/Sender.vue @@ -32,13 +32,18 @@
- + Save
Save & Publish @@ -206,22 +211,32 @@ const sendOrCancel = () => { hasSetVersionMessage.value = false } -let newFilter: ISendFilter +const newFilter = ref() + const updateFilter = (filter: ISendFilter) => { - newFilter = filter + newFilter.value = filter } +const isSaveDisabled = computed(() => { + const f = newFilter.value || props.modelCard.sendFilter + return ( + f?.name === 'Selection' && + (!f.selectedObjectIds || f.selectedObjectIds.length === 0) + ) +}) + const saveFilter = async () => { + if (!newFilter.value) return void trackEvent('DUI3 Action', { name: 'Publish Card Filter Change', - filter: newFilter.typeDiscriminator + filter: newFilter.value.typeDiscriminator }) // do not reset idmap while creating a new one because it is managed by host app - newFilter.idMap = props.modelCard.sendFilter?.idMap + newFilter.value.idMap = props.modelCard.sendFilter?.idMap await store.patchModel(props.modelCard.modelCardId, { - sendFilter: newFilter, + sendFilter: newFilter.value, expired: true }) openFilterDialog.value = false diff --git a/components/send/Wizard.vue b/components/send/Wizard.vue index 646b049..c177fdc 100644 --- a/components/send/Wizard.vue +++ b/components/send/Wizard.vue @@ -48,7 +48,7 @@ > @@ -62,6 +62,7 @@