Closed (fixed)
Project:
Views Exposed Filters Summary
Version:
3.x-dev
Component:
Code
Priority:
Normal
Category:
Task
Assigned:
Unassigned
Reporter:
Created:
17 Feb 2026 at 14:40 UTC
Updated:
3 Mar 2026 at 16:30 UTC
Jump to comment: Most recent
Comments
Comment #3
mably commentedComment #4
mably commentedComment #5
mably commentedConvert all hooks to OOP format and add tests
OOP hooks conversion
Converted all hook implementations across the main module and all 11 sub-modules from procedural
.modulefunctions to OOP classes using#[Hook]attributes, with#[LegacyHook]delegations in.modulefiles for Drupal 10.6 backward compatibility.Main module:
src/Hook/ViewsFiltersSummaryHooks.php—hook_theme(),hook_views_data(),hook_views_filters_summary_filter_value_alter(),hook_views_filters_summary_plugin_alias()Sub-modules converted (11):
views_filters_summary_a11y— accessibility hooksviews_filters_summary_address— address field supportviews_filters_summary_bef— Better Exposed Filters supportviews_filters_summary_commerce— Commerce integrationviews_filters_summary_cvfb— custom views filter block supportviews_filters_summary_eb— ECA/Block supportviews_filters_summary_eref— entity reference supportviews_filters_summary_search_api— Search API integrationviews_filters_summary_vcer— Views Contextual Entity Reference supportviews_filters_summary_verf— Views Entity Reference Filter supportviews_filters_summary_vsf— Views Selective Filters supportEach sub-module now has:
src/Hook/class with#[Hook]attributes.services.ymlregistering the hook class.modulefile with#[LegacyHook]for Drupal 10.6 compatibilityKernel tests (13 test methods, 254 assertions)
Added
tests/src/Kernel/ViewsFiltersSummaryKernelTest.phpcovering the area plugin rendering logic:Also added the test infrastructure:
views_filters_summary_testmodule with atest_vfs_summarytest view (page display at/test-vfs-summarywith exposed title, type, and status filters).FunctionalJavascript tests (5 test methods, 48 assertions)
Added
tests/src/FunctionalJavascript/ViewsFiltersSummaryJsTest.phpcovering all JavaScript interactions:disabledclass from remove linksBug fix: missing core/once library dependency
During FunctionalJavascript test development, discovered that
views_filters_summary.libraries.ymlwas missingcore/onceas a dependency. The JavaScript uses theonce()function but did not declare this dependency. In production this usually works because other libraries (e.g.core/drupal.ajax) loadcore/oncetransitively. However, in minimal environments without AJAX, theonceglobal is undefined and JavaScript initialization silently fails — thedisabledclass is never removed from remove/reset links, making them non-functional.CI configuration
Updated
.gitlab-ci.ymlto run the new test suites.Comment #7
mably commented