From 2665bde810eda53fce2f580a0da82f416ae2ec36 Mon Sep 17 00:00:00 2001 From: nmemmert <67961292+nmemmert@users.noreply.github.com> Date: Fri, 24 Oct 2025 11:10:08 -0400 Subject: [PATCH] fixed run error --- src/app/page.tsx | 2 +- src/components/AccountManagement.tsx | 10 ++-- src/components/SetupWizard.tsx | 74 +++++++++++++++++++++++++--- 3 files changed, 72 insertions(+), 14 deletions(-) diff --git a/src/app/page.tsx b/src/app/page.tsx index 4161d93..d9a9201 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -104,7 +104,7 @@ export default function BudgetDashboard() { // Save data to Firestore whenever data changes useEffect(() => { - if (user && (accounts.length > 0 || envelopes.length > 0 || transactions.length > 0 || setupCompleted)) { + if (user && (((accounts || []).length > 0 || (envelopes || []).length > 0 || (transactions || []).length > 0 || setupCompleted))) { const saveData = async () => { try { await DataService.saveUserData(user.uid, { accounts, envelopes, transactions, setupCompleted }); diff --git a/src/components/AccountManagement.tsx b/src/components/AccountManagement.tsx index d5f1e74..48c3d0e 100644 --- a/src/components/AccountManagement.tsx +++ b/src/components/AccountManagement.tsx @@ -95,7 +95,7 @@ export default function AccountManagement({ accounts, onAccountAdd, onAccountUpd } }; - const totalBalance = accounts.reduce((sum, acc) => sum + acc.balance, 0); + const totalBalance = (accounts || []).reduce((sum, acc) => sum + acc.balance, 0); return (
@@ -120,7 +120,7 @@ export default function AccountManagement({ accounts, onAccountAdd, onAccountUpd

Total Accounts

-

{accounts.length}

+

{(accounts || []).length}

Total Balance

@@ -128,7 +128,7 @@ export default function AccountManagement({ accounts, onAccountAdd, onAccountUpd

Active Accounts

-

{accounts.filter(acc => acc.isActive).length}

+

{(accounts || []).filter(acc => acc.isActive).length}

@@ -138,7 +138,7 @@ export default function AccountManagement({ accounts, onAccountAdd, onAccountUpd

Your Accounts

- {accounts.length === 0 ? ( + {(accounts || []).length === 0 ? (
🏦

No accounts yet

@@ -152,7 +152,7 @@ export default function AccountManagement({ accounts, onAccountAdd, onAccountUpd
) : (
- {accounts.map((account) => ( + {(accounts || []).map((account) => (
diff --git a/src/components/SetupWizard.tsx b/src/components/SetupWizard.tsx index e120034..c562ffa 100644 --- a/src/components/SetupWizard.tsx +++ b/src/components/SetupWizard.tsx @@ -55,6 +55,10 @@ export default function SetupWizard({ onComplete, onSkip }: SetupWizardProps) { color: 'bg-green-500', }); + // Standard envelopes option + const [includeStandardEnvelopes, setIncludeStandardEnvelopes] = useState(false); + const [standardEnvelopeAccountId, setStandardEnvelopeAccountId] = useState(''); + // Income allocation state const [incomeAllocations, setIncomeAllocations] = useState<{ [envelopeId: string]: { type: 'percentage' | 'fixed'; value: number } }>({}); const [defaultPaycheckAmounts, setDefaultPaycheckAmounts] = useState<{ [accountId: string]: number }>({}); @@ -232,11 +236,11 @@ export default function SetupWizard({ onComplete, onSkip }: SetupWizardProps) { {/* Existing Accounts */}

Your Accounts

- {accounts.length === 0 ? ( + {(accounts || []).length === 0 ? (

No accounts added yet

) : (
- {accounts.map((account) => ( + {(accounts || []).map((account) => (
@@ -275,7 +279,7 @@ export default function SetupWizard({ onComplete, onSkip }: SetupWizardProps) {
{/* Add Envelope Button */} + {/* Standard envelopes option */} +
+ + +
+ + +

We'll create a set of common envelopes (Rent, Groceries, Utilities, Savings, Transport, Entertainment, Emergency). You can edit amounts later.

+
+
+