X Enterprises
Filters

FiltersAsideFilters

Desktop sidebar + mobile modal filter panel with configurable filter groups.

Filters

The filter system has two layers. XRDFiltersAsideFilters is the primary, production-ready panel that reads its groups from useFilters() app config.

Components

<XRDFiltersAsideFilters />

Full sidebar filter panel with mobile/desktop responsive layout. Reads filter group configuration from useFilters(). On desktop, renders as a sticky aside; on mobile, shows a toggle button. Groups support checkbox, radio, and range types and can be collapsed.

<XRDFiltersAsideFilters />

Props

The component is typically used with no props — configuration is read from the useFilters() composable (title, fixed, showClearAll, groups). The two props below are escape hatches for controlled-mode and config-override use cases.

PropTypeDefaultDescription
configPartial<FiltersConfig>Override filters config from props instead of app.config.
modelValueActiveFiltersExternal active filters state for controlled mode (use with @update:modelValue).

Events

EventPayloadDescription
update:modelValueActiveFiltersEmitted on filter change in controlled mode.
changeActiveFiltersSame payload — alias event.

AI Context

category: Filters
package: "@xenterprises/nuxt-x-restaurants"
components:
  - XRDFiltersAsideFilters
use-when: >
  Building the primary sidebar filter panel for the restaurant explore page.
  Handles desktop sticky aside, mobile toggle/modal, collapsible groups,
  and checkbox/radio/range filter types via the useFilters() composable.
Copyright © 2026