diff --git a/src/App.tsx b/src/App.tsx index aeaeb91..bc71aeb 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -1,4 +1,5 @@ import { AnimatePresence, motion } from "framer-motion"; +import { Plus } from "lucide-react"; import { useCallback, useEffect, useMemo, useRef, useState } from "react"; import { flavourMeta, mergedFlavours } from "./data/flavours"; import { QUICK_ADDS, type QuickAddItem } from "./data/quickAdds"; @@ -323,6 +324,24 @@ function App() { setIsEntryModalOpen(true); } + function logEntryAgain(entry: RedBullEntry) { + setEditingEntry(null); + setEntryInitialDraft({ + cans: entry.cans, + flavour: entry.flavour, + flavourAccent: entry.flavourAccent, + sizeMl: entry.sizeMl, + pricePerCan: entry.pricePerCan, + dateTime: new Date().toISOString(), + notes: entry.notes ?? "", + store: entry.store ?? "", + sugarFree: entry.sugarFree, + caffeineMgPerCan: entry.caffeineMgPerCan, + source: entry.source, + }); + setIsEntryModalOpen(true); + } + async function saveUserLimits(next: UserLimits) { if (!user) return; setBusyAction("save-limits"); @@ -677,6 +696,7 @@ function App() { setIsEntryModalOpen(true); }} onDelete={(id) => setPendingDeleteId(id)} + onLogAgain={logEntryAgain} /> )} @@ -727,6 +747,12 @@ function App() { + {activeView === "overview" && ( + + )} + -

{label}

+

{label}

{payload.map((item) => ( -

+

{item.name}: {formatMetricValue(item.name, item.value)}

))} diff --git a/src/components/DailyLimitsCard.tsx b/src/components/DailyLimitsCard.tsx index d6dc987..788a8a2 100644 --- a/src/components/DailyLimitsCard.tsx +++ b/src/components/DailyLimitsCard.tsx @@ -96,7 +96,14 @@ function LimitRow({ {label} {value} -