{#each transactions as transaction}
{@const applicableBudgets = budgetTransactions.filter(
(bt) => bt.transaction_id === transaction.id
)}
{@const budgetTotal = applicableBudgets.reduce(
(accumulator, currentValue) => accumulator + Number(currentValue.amount),
0
)}
{@const remaining = transaction.amount - budgetTotal}
{transaction.description}
{transaction.date.toDateString()}
{#if !transaction.out_of_budget}
In Budget: {budgetTotal.toFixed(2)}
Remaining {remaining.toFixed(2)}
{:else}
Out of budget
{/if}
{#if applicableBudgets.length > 0}
{#each applicableBudgets as budgetTransaction}
{`${budgetTransaction.budget_name}: ${budgetTransaction.amount}`}
{/each}
{/if}