feat: #3611865 Add a Views exposed filters Single Directory Component

Adds a views-exposed-filters Single Directory Component so a theme can lay out a view's exposed filters through a stable component contract instead of chasing the generated Views form ID with ad hoc CSS.

Issue: https://www.drupal.org/project/vartheme_bs5/issues/3611865

What

Three new files under components/organisms/views-exposed-filters/, following the same layout already used by the theme's other Views organisms (views-view-grid, views-view-table, etc.):

  • views-exposed-filters.component.ymlname: Views exposed filters, group: Views, noUi: true, use_in_views: true; props layout (enum inline | stacked, default inline) and utility_classes (array of strings); slot filters for the view's exposed form; libraryOverrides.css.component attaching views-exposed-filters.css.
  • views-exposed-filters.twig — wraps the filters slot in a classed wrapper driven by layout and utility_classes.
  • views-exposed-filters.css — a flex layout for the exposed form (inline vs. stacked, responsive stacking under 768px).

Why

Varbase Components' components_exposed_form Views exposed-form plugin (added in #3611182) renders a view's exposed form through a Single Directory Component named on the view, but Vartheme BS5 does not ship one. This gives sub-themes (e.g. Vartheme BS5 Educare) a stable component to override instead of styling against the form ID Views happens to generate.

AI-Generated: Yes (Used Claude Code to author the component manifest, twig template and CSS, and to open this issue and MR; reviewed by Natshah.)

Checkpoints

  • File an issue about this project
  • Addition/Change/Update/Fix to this project
  • Testing to ensure no regression
  • Automated unit/functional testing coverage
  • Developer Documentation support on feature change/addition
  • User Guide Documentation support on feature change/addition
  • UX/UI designer responsibilities
  • Accessibility and Readability
  • Reviewed by a human
  • Code review by maintainers
  • Full testing and approval
  • Credit contributors
  • Review with the product owner
  • Update Release Notes
  • Release
Edited by Rajab Natshah

Merge request reports

Loading