diff --git a/frontend/src/components/TransactionModal.tsx b/frontend/src/components/TransactionModal.tsx index 43d2094..20ed3a4 100644 --- a/frontend/src/components/TransactionModal.tsx +++ b/frontend/src/components/TransactionModal.tsx @@ -1,5 +1,6 @@ import { useEffect, useState } from 'react'; import api, { type Category, type Transaction } from '../api'; +import { formatLocalDatetime } from '@/lib/format'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; @@ -33,7 +34,7 @@ export default function TransactionModal({ transaction, source, onClose, onSaved merchant: '', amount: '', currency: 'CRC', - date: new Date().toISOString().slice(0, 16), + date: formatLocalDatetime(new Date()), transaction_type: 'COMPRA', source, bank: 'BAC', diff --git a/frontend/src/lib/format.ts b/frontend/src/lib/format.ts index 5d3bb6a..894a9d3 100644 --- a/frontend/src/lib/format.ts +++ b/frontend/src/lib/format.ts @@ -8,6 +8,11 @@ export function formatAmount(amount: number, currency: string) { return `₡${abs.toLocaleString('es-CR', { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`; } +export function formatLocalDatetime(d: Date): string { + const pad = (n: number) => n.toString().padStart(2, '0'); + return `${d.getFullYear()}-${pad(d.getMonth() + 1)}-${pad(d.getDate())}T${pad(d.getHours())}:${pad(d.getMinutes())}`; +} + export function formatDate(dateStr: string) { return new Date(dateStr).toLocaleDateString('en-US', { month: 'short', day: 'numeric' }); } diff --git a/frontend/src/pages/Dashboard.tsx b/frontend/src/pages/Dashboard.tsx index 13ae407..c3b9154 100644 --- a/frontend/src/pages/Dashboard.tsx +++ b/frontend/src/pages/Dashboard.tsx @@ -15,7 +15,7 @@ import { import api, { type Account, type Transaction } from '../api'; import { useSettings } from '@/hooks/useSettings'; -import { formatAmount, formatDate } from '@/lib/format'; +import { formatAmount, formatDate, formatLocalDatetime } from '@/lib/format'; import DashboardSection from '@/components/DashboardSection'; import SectionConfigDialog from '@/components/SectionConfigDialog'; import { Button } from '@/components/ui/button'; @@ -340,7 +340,7 @@ export default function Dashboard() { merchant: merchants[i], amount: amounts[i], currency: 'CRC', - date: new Date().toISOString(), + date: formatLocalDatetime(new Date()), bank: 'BAC', source: 'CREDIT_CARD', transaction_type: 'COMPRA',