feat: implement enhanced transaction filtering capabilities with support for account and category filters, improving data visibility and user interaction
This commit is contained in:
@@ -14,7 +14,7 @@ import { CategoryFilterCombobox } from "@/components/ui/category-filter-combobox
|
||||
import { AccountFilterCombobox } from "@/components/ui/account-filter-combobox";
|
||||
import { CategoryIcon } from "@/components/ui/category-icon";
|
||||
import { Search, X, Filter, Wallet } from "lucide-react";
|
||||
import type { Account, Category, Folder } from "@/lib/types";
|
||||
import type { Account, Category, Folder, Transaction } from "@/lib/types";
|
||||
|
||||
interface TransactionFiltersProps {
|
||||
searchQuery: string;
|
||||
@@ -28,6 +28,8 @@ interface TransactionFiltersProps {
|
||||
accounts: Account[];
|
||||
folders: Folder[];
|
||||
categories: Category[];
|
||||
transactionsForAccountFilter?: Transaction[]; // Filtered by categories, search, reconciled (not accounts)
|
||||
transactionsForCategoryFilter?: Transaction[]; // Filtered by accounts, search, reconciled (not categories)
|
||||
}
|
||||
|
||||
export function TransactionFilters({
|
||||
@@ -42,6 +44,8 @@ export function TransactionFilters({
|
||||
accounts,
|
||||
folders,
|
||||
categories,
|
||||
transactionsForAccountFilter,
|
||||
transactionsForCategoryFilter,
|
||||
}: TransactionFiltersProps) {
|
||||
return (
|
||||
<Card>
|
||||
@@ -65,6 +69,7 @@ export function TransactionFilters({
|
||||
value={selectedAccounts}
|
||||
onChange={onAccountsChange}
|
||||
className="w-[200px]"
|
||||
filteredTransactions={transactionsForAccountFilter}
|
||||
/>
|
||||
|
||||
<CategoryFilterCombobox
|
||||
@@ -72,6 +77,7 @@ export function TransactionFilters({
|
||||
value={selectedCategories}
|
||||
onChange={onCategoriesChange}
|
||||
className="w-[220px]"
|
||||
filteredTransactions={transactionsForCategoryFilter}
|
||||
/>
|
||||
|
||||
<Select value={showReconciled} onValueChange={onReconciledChange}>
|
||||
|
||||
Reference in New Issue
Block a user