feat: #3631112 Use Varbase Search Base for search, with a Canvas search page and a filter rail

Closes https://www.drupal.org/i/3631112

Merge vartheme_bs5_horizonaid!45 (merged) (#3631109) first: it aligns the facet lists and the rail's date filter.

  • Applies varbase_search_base and requires drupal/varbase_search_base.
  • /search is a Canvas page: an h1, the keyword panel, a filter rail (Category, Content Type, then Date Published as a select), and the results. The view's page display is disabled; the header search form still submits to /search.
  • Category combines the resource and event categories. Results are image cards from a search_result Canvas template per content type.
  • The view keys are ones the base recipe does not write, so a later apply keeps them.

Testing done (varbase_search_base 1.0.x b5a9d13, Varbase 11):

  • Browser-installer install and drush site:install: green, 70 nodes, index 79/79, no PHP errors in the log.
  • Keyword, each facet, every Date Published range, combined filters, pager, empty and no-results states work at 1440 and 390, logged out, no console errors.
  • The header search opens and closes by keyboard, has a label, and lands on /search with the keyword filled in; it looks the same as before.
  • The results display's cache metadata includes the facet context. views.view.search validates with only the 2 known base violations.
  • Re-applying varbase_search_base keeps every Horizon Aid search key.
  • The 12-search functional tests (25 scenarios, one new feature file for the filters) pass locally.

AI-Generated: Yes

Checkpoints:

  • File an issue
  • Addition/Change/Update/Fix
  • Testing to ensure no regression
  • Automated unit testing coverage
  • Automated functional testing coverage
  • UX/UI designer responsibilities
  • Readability
  • Accessibility
  • Performance
  • Security
  • Developer Documentation
  • User Guide Documentation
  • Reviewed by human
  • Code review by maintainers
  • Full testing and approval
  • Credit contributors
  • Review with the product owner
  • Release notes snippet
  • Release

🤖 Generated with Claude Code

Edited by Rajab Natshah

Merge request reports

Loading
Loading