POWR/components/library/FilterPopover.tsx

37 lines
1.1 KiB
TypeScript
Raw Permalink Normal View History

2025-02-12 12:55:51 -05:00
// components/library/FilterPopover.tsx
import React from 'react';
import { View } from 'react-native';
import { Popover, PopoverContent, PopoverTrigger } from '@/components/ui/popover';
import { Button } from '@/components/ui/button';
import { Filter } from 'lucide-react-native';
import { Badge } from '@/components/ui/badge';
import { FilterOptions } from './FilterSheet';
import { Text } from 'components/ui/text';
interface FilterPopoverProps {
activeFilters: number;
onOpenFilters: () => void;
}
export function FilterPopover({ activeFilters, onOpenFilters }: FilterPopoverProps) {
return (
<View className="relative">
<Button
variant="ghost"
size="icon"
onPress={onOpenFilters}
>
<Filter className="text-foreground" />
</Button>
{activeFilters > 0 && (
<Badge
className="absolute -top-2 -right-2 w-5 h-5 flex items-center justify-center p-0"
>
<Text className="text-xs text-primary-foreground">
{activeFilters}
</Text>
</Badge>
)}
</View>
);
}