Fix type error in useTransactionEdit

The category value was not correctly typed, leading to a TypeScript error. This commit ensures that the category value is correctly typed as one of the allowed expense categories.
This commit is contained in:
gpt-engineer-app[bot]
2025-03-22 13:15:47 +00:00
parent e5bdb845a9
commit 2ce87a7994

View File

@@ -6,6 +6,7 @@ import { useBudget } from '@/contexts/budget/BudgetContext';
import { toast } from '@/hooks/useToast.wrapper'; import { toast } from '@/hooks/useToast.wrapper';
import { manageTitleSuggestions } from '@/utils/userTitlePreferences'; import { manageTitleSuggestions } from '@/utils/userTitlePreferences';
import { TransactionFormValues } from './TransactionFormFields'; import { TransactionFormValues } from './TransactionFormFields';
import { EXPENSE_CATEGORIES } from '@/constants/categoryIcons';
export const useTransactionEdit = ( export const useTransactionEdit = (
transaction: Transaction, transaction: Transaction,
@@ -15,11 +16,14 @@ export const useTransactionEdit = (
const { updateTransaction, deleteTransaction } = useBudget(); const { updateTransaction, deleteTransaction } = useBudget();
// React Hook Form 설정 // React Hook Form 설정
// 카테고리 타입 오류 수정 - 타입 단언 적용
const form = useForm<TransactionFormValues>({ const form = useForm<TransactionFormValues>({
defaultValues: { defaultValues: {
title: transaction.title, title: transaction.title,
amount: transaction.amount.toString(), amount: transaction.amount.toString(),
category: transaction.category, category: EXPENSE_CATEGORIES.includes(transaction.category)
? (transaction.category as "음식" | "쇼핑" | "교통" | "기타")
: "기타",
paymentMethod: transaction.paymentMethod || '신용카드' paymentMethod: transaction.paymentMethod || '신용카드'
} }
}); });