From eb7f549c8895b3dc52a2bfbd34222f30b9012a7d Mon Sep 17 00:00:00 2001 From: Roman Vyakhirev Date: Wed, 28 Jan 2026 12:28:49 +0100 Subject: [PATCH 1/3] fix: better alignment when labels are too long --- ...xRadioSelectionDatabase-chromium-linux.png | Bin 3501 -> 3490 bytes .../src/ui/CheckboxRadioSelection.scss | 13 +++++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/pluggableWidgets/checkbox-radio-selection-web/e2e/SelectionControls.spec.js-snapshots/checkboxRadioSelectionDatabase-chromium-linux.png b/packages/pluggableWidgets/checkbox-radio-selection-web/e2e/SelectionControls.spec.js-snapshots/checkboxRadioSelectionDatabase-chromium-linux.png index b1448157bd4b864778c4a821076bb03261b380a6..32b596dd846afcbb8aec728b822b32bbfbd874fc 100644 GIT binary patch literal 3490 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 PM*x_L)|2wTtwR3|iL&jE diff --git a/packages/pluggableWidgets/checkbox-radio-selection-web/src/ui/CheckboxRadioSelection.scss b/packages/pluggableWidgets/checkbox-radio-selection-web/src/ui/CheckboxRadioSelection.scss index e10582cff3..8ed5533544 100644 --- a/packages/pluggableWidgets/checkbox-radio-selection-web/src/ui/CheckboxRadioSelection.scss +++ b/packages/pluggableWidgets/checkbox-radio-selection-web/src/ui/CheckboxRadioSelection.scss @@ -2,6 +2,7 @@ .widget-checkbox-radio-selection { display: block; position: relative; + min-width: 0; &-readonly { &.widget-checkbox-radio-selection-readonly-text { @@ -25,13 +26,17 @@ } &-item { + display: flex; + align-items: center; input { - vertical-align: middle; + flex: 0 0 16px; } - } - label { - font-weight: inherit; + label { + font-weight: inherit; + text-overflow: ellipsis; + overflow: hidden; + } } input[type="radio"], From bdfb43c2ffc3d24b600263b0cb0a904fd94957f4 Mon Sep 17 00:00:00 2001 From: Roman Vyakhirev Date: Wed, 28 Jan 2026 12:29:31 +0100 Subject: [PATCH 2/3] chore: when setting selection and some options are unknown - keep them as is in the selection --- .../Association/AssociationMultiSelector.ts | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/packages/pluggableWidgets/checkbox-radio-selection-web/src/helpers/Association/AssociationMultiSelector.ts b/packages/pluggableWidgets/checkbox-radio-selection-web/src/helpers/Association/AssociationMultiSelector.ts index 720b42b39a..21460e995f 100644 --- a/packages/pluggableWidgets/checkbox-radio-selection-web/src/helpers/Association/AssociationMultiSelector.ts +++ b/packages/pluggableWidgets/checkbox-radio-selection-web/src/helpers/Association/AssociationMultiSelector.ts @@ -17,8 +17,28 @@ export class AssociationMultiSelector } setValue(value: string[] | null): void { - const newValue = value?.map(v => this.options._optionToValue(v)!); - this._attr?.setValue(newValue); + if (value && this._attr) { + const currentValue = this._attr.value ?? []; + const newValue = value + ?.map(v => { + const knownObject = this.options._optionToValue(v); + if (knownObject) { + return knownObject; + } + + // this option is not know, we need to look for it in the current value + const hiddenObject = currentValue.find(o => o.id === v); + if (hiddenObject) { + return hiddenObject; + } + console.info(`Object with ID ${v} not found. This value will be omitted.`); + + return null; + }) + .filter(v => !!v); + this._attr.setValue(newValue); + } + super.setValue(value); } From c58f6d1a1e2b7fea672a1e1e3da6de7934622583 Mon Sep 17 00:00:00 2001 From: Roman Vyakhirev Date: Wed, 28 Jan 2026 12:36:25 +0100 Subject: [PATCH 3/3] chore: add changelog --- .../checkbox-radio-selection-web/CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/pluggableWidgets/checkbox-radio-selection-web/CHANGELOG.md b/packages/pluggableWidgets/checkbox-radio-selection-web/CHANGELOG.md index 817065398f..6844a1ac6e 100644 --- a/packages/pluggableWidgets/checkbox-radio-selection-web/CHANGELOG.md +++ b/packages/pluggableWidgets/checkbox-radio-selection-web/CHANGELOG.md @@ -6,6 +6,11 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), ## [Unreleased] +### Fixed + +- Fixed an issue with Association selection happening when reference set contains objects not present in Selectable objects list. +- Fixed an issue with long labels not displaying correctly. + ## [1.1.0] - 2025-10-18 ### Added