UNPKG

pagamio-frontend-commons-lib

Version:

Pagamio library for Frontend reusable components like the form engine and table container

18 lines (17 loc) 1.28 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { FilterWrapper, Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from '../../components'; import { useMediaQueries } from '../../shared'; const DashboardFilter = ({ filters, selectedFilters, handleFilterChange }) => { const { isSm } = useMediaQueries(); return (_jsx(FilterWrapper, { isNarrow: isSm, children: filters.length > 0 && filters.map((filterObj) => { if (filterObj.type !== 'select') { // Handle other filter types if needed return null; } const { name, options } = filterObj; const value = selectedFilters[name]; return (_jsx("div", { className: isSm ? 'w-full' : 'flex-1 min-w-[150px]', children: _jsxs(Select, { value: value || 'All', onValueChange: (val) => handleFilterChange(name, val), children: [_jsx(SelectTrigger, { className: "w-full bg-white", children: _jsx(SelectValue, { placeholder: `Filter by ${name}` }) }), _jsx(SelectContent, { children: options.map((item) => (_jsx(SelectItem, { value: item.value, children: item.label }, item.value))) })] }, `filter-${name}`) }, name)); }) })); }; export default DashboardFilter;