Refactor: Split useTransactions hook
Splits the `useTransactions` hook into smaller, more manageable files for improved code organization and maintainability. No functional changes are included.
This commit is contained in:
31
src/utils/transactionUtils.ts
Normal file
31
src/utils/transactionUtils.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
|
||||
import { Transaction } from '@/components/TransactionCard';
|
||||
|
||||
// 월별로 트랜잭션 필터링
|
||||
export const filterTransactionsByMonth = (
|
||||
transactions: Transaction[],
|
||||
selectedMonth: string
|
||||
): Transaction[] => {
|
||||
return transactions.filter(transaction =>
|
||||
transaction.date.includes(selectedMonth) && transaction.type === 'expense'
|
||||
);
|
||||
};
|
||||
|
||||
// 검색어로 트랜잭션 필터링
|
||||
export const filterTransactionsByQuery = (
|
||||
transactions: Transaction[],
|
||||
searchQuery: string
|
||||
): Transaction[] => {
|
||||
if (!searchQuery.trim()) return transactions;
|
||||
|
||||
const query = searchQuery.toLowerCase().trim();
|
||||
return transactions.filter(transaction =>
|
||||
transaction.title.toLowerCase().includes(query) ||
|
||||
transaction.category.toLowerCase().includes(query)
|
||||
);
|
||||
};
|
||||
|
||||
// 총 지출 금액 계산
|
||||
export const calculateTotalExpenses = (transactions: Transaction[]): number => {
|
||||
return transactions.reduce((sum, t) => sum + t.amount, 0);
|
||||
};
|
||||
Reference in New Issue
Block a user