From b651d2b5fbcd9a9e6339000e17e7624d4813a080 Mon Sep 17 00:00:00 2001 From: Rias Date: Thu, 1 Oct 2026 10:13:26 +0200 Subject: [PATCH 1/2] Prevent condition builder change listener fallthrough Co-authored-by: Nathaniel Hammond --- CHANGELOG.md | 1 + resources/js/modules/forms/ConditionBuilderControl.vue | 2 ++ 2 files changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3adee70813c..cd93a08105d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -99,6 +99,7 @@ - Removed `CraftCms\Cms\Condition\Contracts\ConditionRuleInterface::getHtml()`. `getForm()` must be implemented instead. ([#19588](https://github.com/craftcms/cms/pull/19588)) - Removed `CraftCms\Cms\Element\Conditions\Contracts\ElementConditionRuleInterface::getExclusiveQueryParams()` and `modifyQuery()`. `ElementQueryConditionRuleInterface::modifyQuery()` should be implemented instead, which now accepts the underlying query builder directly. ([#19563](https://github.com/craftcms/cms/pull/19563)) - Removed `CraftCms\Cms\Element\Conditions\ElementCondition::$queryParams`. ([#19563](https://github.com/craftcms/cms/pull/19563)) +- Fixed a bug where condition builders passed raw condition values to form change listeners. ([#19665](https://github.com/craftcms/cms/pull/19665)) ### Fields - Added a “Default Row Values” setting to Table fields. ([#3621](https://github.com/craftcms/cms/issues/3621)) diff --git a/resources/js/modules/forms/ConditionBuilderControl.vue b/resources/js/modules/forms/ConditionBuilderControl.vue index dec2592b67d..8f3f14e3945 100644 --- a/resources/js/modules/forms/ConditionBuilderControl.vue +++ b/resources/js/modules/forms/ConditionBuilderControl.vue @@ -17,6 +17,8 @@ const emit = defineEmits<{ (event: 'update:value', value: ConditionConfig, kind: 'discrete'): void; + /** Prevents the inner change event reaching FieldNode's FormChange listener. */ + (event: 'change'): void; }>(); const errors = computed(() => From ffdba53c4846e57b8078ed8bce80bc057bbf22cb Mon Sep 17 00:00:00 2001 From: Rias Date: Thu, 1 Oct 2026 10:13:43 +0200 Subject: [PATCH 2/2] Reference condition builder extraction PR in changelog Co-authored-by: Nathaniel Hammond --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cd93a08105d..de6ecc659f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -99,7 +99,7 @@ - Removed `CraftCms\Cms\Condition\Contracts\ConditionRuleInterface::getHtml()`. `getForm()` must be implemented instead. ([#19588](https://github.com/craftcms/cms/pull/19588)) - Removed `CraftCms\Cms\Element\Conditions\Contracts\ElementConditionRuleInterface::getExclusiveQueryParams()` and `modifyQuery()`. `ElementQueryConditionRuleInterface::modifyQuery()` should be implemented instead, which now accepts the underlying query builder directly. ([#19563](https://github.com/craftcms/cms/pull/19563)) - Removed `CraftCms\Cms\Element\Conditions\ElementCondition::$queryParams`. ([#19563](https://github.com/craftcms/cms/pull/19563)) -- Fixed a bug where condition builders passed raw condition values to form change listeners. ([#19665](https://github.com/craftcms/cms/pull/19665)) +- Fixed a bug where condition builders passed raw condition values to form change listeners. ([#19774](https://github.com/craftcms/cms/pull/19774)) ### Fields - Added a “Default Row Values” setting to Table fields. ([#3621](https://github.com/craftcms/cms/issues/3621))