FilterNoMatches

components/filter/NoMatches.vue

The "filtered to nothing" empty state (c92 todos-2026-09-23): a one-line message — "No {subject} match the current filter." — with a Clear filter button. Distinct from "no data yet": the data exists, the active filter hides all of it, and the state carries the way out.

Presentational — the consumer owns the filter state and wires @clear to whatever clears it. Cleared 0×.

No harnesses match the current filter.

Scenarios
Minimal — defaults

No records match the current filter.

Typical — inside a DataTable's #empty slot, rows filtered away
harness
installs
sessions

No harnesses match the current filter.

Overflow — custom message via the default slot, long button label

Nothing here matches provider = Anthropic and kind = ide together — the fleet has Anthropic harnesses and IDE harnesses, but none that are both.

components/filter/NoMatches.vue

Usage

<FilterNoMatches subject = "records" label = "Clear filter" > Content here </FilterNoMatches>

Props

PropTypeDefaultDescription
subjectString'records'Plural noun for the default message — "No {subject} match the current filter."
labelString'Clear filter'Button text.

Events

EventDescription
clearThe button was clicked — clear the filter that produced the empty set.

Slots

SlotDescription
defaultReplaces the default message entirely (the button stays).

Related

Qpoint Brand Style Guide