KatalKavya96 opened a new pull request, #55811:
URL: https://github.com/apache/airflow/pull/55811

   ### UI: Add FilterBar to DAG → Tasks page (with URL-synced filters + tests)
   
   ### What
   
   Introduce the FilterBar on the DAG Tasks page so users can quickly refine 
the task list. This PR also adds a lightweight test harness for the 
Select-based filters and stabilizes unit tests.
   
   ### Why
   
   Filtering tasks by operator, name, or mapping status is a common workflow 
when DAGs have many tasks. Surfacing a consistent FilterBar here improves 
discoverability and aligns this page with other areas of the UI. Persisting 
filters in the URL enables shareable links and reliable back/forward navigation.
   
   ### Key changes
   
   - Add TaskFilters to /dags/:dagId/tasks:
   
   - Search tasks (name_pattern) — free-text.
   
   - Operators (operator) — multi-select from task payload (e.g., BashOperator, 
PythonOperator).
   
   - Mapped (mapped) — single-select (true/false).
   
   - Query-string sync via useSearchParams:
   
   - Selecting/changing filters writes name_pattern=…, operator=…, mapped=….
   
   - Resets page=1 when filters change.
   
   ### Tests:
   
   - TaskFilters.spec.tsx validates options are built from payload and that URL 
params update as expected.
   
   - SelectFilter.spec.tsx exercises single/multi-select behaviour.
   
   - Provide a minimal mock for src/components/ui Menu + Select to avoid 
portal/DOM flakiness in Vitest and to assert against a native <select> (stable 
and accessible in JSDOM).
   
   
   No backend/API changes; UI-only.
   
   Backwards compatibility
   
   No breaking changes; filters are additive and default to no filtering.
   
   Screenshots / demo
   
   N/A (behavior is covered by tests; happy to add screenshots if reviewers 
would like).
   
   Solves #55520 


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to