FilterGroup
Overview
Presentation host for a model list view's filter controls. It renders the add-filter FilterMenu (whose trigger teleports into the toolbar) from the caller-resolved filterables / filterableDetails / validFilterables and, when filters are active, a strip of removable FilterChips plus a Clear filters control. Resolving which fields are filterable (typically via useViewList), restoring the active-filter list from the URL, mirroring it to query parameters, and persisting it as a preference are all the caller's responsibility; this component only renders the v-model list and threads add/edit/remove edits back through it.
Theme entry: FilterGroup
Props
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| themeOverride | String|Object|Array | null | A partial theme object merged with the component's default theme; accepts a class string, class array, or theme object. | |
| app | string | yes | Django app label. Not used to discover filterable fields (see filterables below); used for field/widget component override resolution and passed to descendants (e.g. FilterFieldForm) for choice-value fetching. | |
| model | string | yes | Django model name. See app above for what this is (and isn't) used for. | |
| view | string | yes | View name, forwarded the same way as app/model. | |
| filterables | array | yes | Resolved filterable field names for this app/model/view (e.g. useViewList's filter.filterables), including fields with no usable filter type or that are server-hidden. FilterGroup does not fetch, merge, or recompute this itself. | |
| filterableDetails | object | yes | Resolved per-field filter details (e.g. useViewList's filter.filterableDetails). | |
| validFilterables | array | yes | filterables narrowed to fields with a usable, non-hidden filter type (e.g. useViewList's filter.validFilterables); the field list rendered as addable/editable. | |
| errored | boolean | false | When true, the filter group is in an error state, enabling error display. | |
| error | object | null | Error object to display; only rendered when it is a ListFilterError instance. | |
| triggerTarget | object|string | null | Element (or selector) in the host toolbar that the add-filter trigger teleports into. | |
| hosted | boolean | false | When true, the chips render as a bare subgroup (no band chrome) for hosting inside a shared ConstraintsBar; the group keeps its own Clear filters control. When false (default), the chips render as a self-contained strip. |
Slots
slotName
Scoped slot.
Bindings
| Name | Description |
|---|---|
| name |
filter-group-error-display
Slot.
Events
| Name | Description |
|---|---|
hide-filter-form | Forwarded from the add-filter menu or a filter chip's edit popover when it should close. |
Source
client/lib/form/filter/FilterGroup.vue