Filters
Choosing · researchedControls that narrow a list or table to items matching chosen criteria.
molecule · contains search, tag-group
Ant Design
Checked: components directory listing, installed antd/es, overview. No filter-bar component. Filtering exists only as a Table column feature (filters, filterDropdown, custom filter panel demos), so not counted as standalone.
Carbon
A pattern page (selection methods, filter states, resetting) composing Dropdown, MultiSelect, Search and Tag; no filter component in source and no accessibility section.
3 corrected on re-read
- present: "ships" → "absent" No filter component or example in react/web-components src; Filtering is a pattern page composing Dropdown, MultiSelect, Search, Tag
- a11y_documented: "no" → null Pattern page has no accessibility heading; not a component
- urls: {"docs_url":"https://carbondesignsystem.com/patterns/filtering/","code_url":null} → {"docs_url":"https://www.carbondesignsystem.com/building-blocks/core/patterns/filtering","code_url":null} docs 200 after redirect to https://www.carbondesignsystem.com/building-blocks/core/patterns/filtering
GOV.UK
Checked: component index (https://design-system.service.gov.uk/components/ , 37 components), patterns index, styles index, repo tree src/govuk/components and objects, and installed govuk-frontend 6.5.1 components directory. No filter component. Checkboxes and Radios are inputs; 'filter' hits in the docs are incidental.
Material Web
Checked docs/components (20 component pages), the repo top-level dirs, labs/, labs/gb/components and the installed 2.5.0 package. No component that filters a collection; Filter chip (mapped to selectable-tag) is a single toggle, and chip sets group them.
Primer
Disagrees with index. Index mapped the Filter scenario pattern (a guidance page, not a component). The Filter and FilterCore components exist only under Internal Components ("not available for external use"), so are not shipped. FilteredActionList (src) filters an action list by typed text, a different job. Checked: primer.style/product/components/ index, internal-components list, ui-patterns, packages/react/src tree (incl. deprecated/, experimental/, internal/). [counted as absent by policy: Primer’s Filter and FilterCore are internal-only (“not available for external use”); the code is not in the public repository.]
6 corrected on re-read
- present: "absent" → "ships" Internal-only: primer.style/product/internal-components/filter/ (and FilterCore) say not available for external use; not in public repo tree. Counted ships per RESEARCH-BRIEF-3 rule for internal items
- variants: null → null None documented
- sizes: null → null None documented
- states_documented: null → null None documented
- a11y_documented: null → "no" Internal page has Props only, no accessibility section
- urls: {"docs_url":null,"code_url":null} → {"docs_url":"https://primer.style/product/internal-components/filter/","code_url":null} HTTP 200 after redirects for each URL; primer.style serves homepage with 200 for missing pages, so content was read
Spectrum
Checked the sitemap.xml and query-index.json component list, S2 exports, SWC 1st-gen/gen2 trees and spectrum-css components for a filter-bar component: none; Search field, Tag group and the collection filtering hooks are building blocks only. Index also lists none.
USWDS
Checked the docs component index and status page and the develop packages/ tree (88 entries, matching installed 3.14.0): no filters component or pattern.
Platform facts
Anatomy
- filter controls — Spec search element: 'a set of form controls or other content related to performing a search or filtering operation'.
The seven states
| default | Controls with criteria selected or not. |
|---|---|
| hover | Pointer-only CSS state; not defined by APG or HTML. |
| focus | Each control is focusable. |
| active | n/a — Not interactive. |
| disabled | Inference: individual controls may be disabled. |
| error | n/a — Not defined. |
| loading | Inference, no source: updating the list after a change is an application state. |
Every cell was read twice, the second time from raw sources by a separate pass. 9 of 35 fields changed on the second read — open any “corrected” note to see what it said before.