Update 7project/frontend/src/pages/MockBankModal.tsx

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This commit is contained in:
Dejan Ribarovski
2025-10-23 12:53:04 +02:00
committed by GitHub
parent 6972a03090
commit e488771cc7

View File

@@ -32,19 +32,39 @@ export default function MockBankModal({ isOpen, isGenerating, categories, onClos
if (!isOpen) return null; if (!isOpen) return null;
function handleGenerateClick() { function handleGenerateClick() {
const parsedCount = parseInt(count, 10);
const parsedMinAmount = parseFloat(minAmount);
const parsedMaxAmount = parseFloat(maxAmount);
const parsedStartDate = new Date(startDate);
const parsedEndDate = new Date(endDate);
// Validation
if (
isNaN(parsedCount) || parsedCount <= 0 ||
isNaN(parsedMinAmount) || isNaN(parsedMaxAmount) ||
parsedMaxAmount < parsedMinAmount ||
isNaN(parsedStartDate.getTime()) || isNaN(parsedEndDate.getTime()) ||
parsedEndDate < parsedStartDate
) {
alert(
"Please ensure:\n" +
"- Count is a positive number\n" +
"- Min and Max Amount are valid numbers, and Max >= Min\n" +
"- Start and End Date are valid, and End Date >= Start Date"
);
return;
}
const options: MockGenerationOptions = { const options: MockGenerationOptions = {
count: parseInt(count, 10), count: parsedCount,
minAmount: parseFloat(minAmount), minAmount: parsedMinAmount,
maxAmount: parseFloat(maxAmount), maxAmount: parsedMaxAmount,
startDate, startDate,
endDate, endDate,
categoryIds: selectedCategoryIds.map(Number), categoryIds: selectedCategoryIds.map(Number),
}; };
// Basic validation onGenerate(options);
if (!isNaN(options.count) && options.count > 0) {
onGenerate(options);
}
} }
return ( return (