feat: založení základní stránky příjem/výdej + import a statistiky

This commit is contained in:
Ondřej Anděl committed 2026-09-07 14:58:49 +02:00
commit a5711f3e1e
98 files changed
+15505

No files matched your search

+73
View File
@@ -0,0 +1,73 @@
import { ActivityUnit, MealType } from "../../types";
/** Lidsky čitelné názvy typů jídel. */
export const MEAL_TYPE_NAMES: Record<MealType, string> = {
SNIDANE: 'Snídaně',
DOPOLEDNI_SVACINA: 'Dopolední svačina',
OBED: 'Oběd',
ODPOLEDNI_SVACINA: 'Odpolední svačina',
VECERE: 'Večeře',
JINE: 'Jiné',
};
/** Emoji doprovázející typ jídla — odlišuje chody v seznamu na první pohled. */
export const MEAL_TYPE_ICONS: Record<MealType, string> = {
SNIDANE: '🥐',
DOPOLEDNI_SVACINA: '🍎',
OBED: '🍲',
ODPOLEDNI_SVACINA: '🥨',
VECERE: '🍽',
JINE: '🍫',
};
/** Typy jídel v pořadí, v jakém probíhá den. Určuje i pořadí v seznamech a výběrech. */
export const MEAL_TYPES_IN_ORDER: MealType[] = [
MealType.SNIDANE,
MealType.DOPOLEDNI_SVACINA,
MealType.OBED,
MealType.ODPOLEDNI_SVACINA,
MealType.VECERE,
MealType.JINE,
];
/** Lidsky čitelné názvy jednotek aktivit. */
export const ACTIVITY_UNIT_NAMES: Record<ActivityUnit, string> = {
KROKY: 'kroky',
MINUTY: 'minuty',
KM: 'km',
OPAKOVANI: 'opakování',
};
/** Zkratka jednotky za číslo, např. "10 000 kroků". */
export const ACTIVITY_UNIT_SHORT: Record<ActivityUnit, string> = {
KROKY: 'kroků',
MINUTY: 'min',
KM: 'km',
OPAKOVANI: '×',
};
/** Jednotky v pořadí, v jakém se nabízejí. */
export const ACTIVITY_UNITS_IN_ORDER: ActivityUnit[] = [
ActivityUnit.KROKY,
ActivityUnit.MINUTY,
ActivityUnit.KM,
ActivityUnit.OPAKOVANI,
];
/**
* Orientační spotřeba běžných aktivit v kcal na 100 jednotek.
*
* Hodnoty jsou hrubý odhad pro člověka kolem 75 kg a slouží jen jako
* předvyplnění — uživatel si je může kdykoli přepsat.
*/
export const ACTIVITY_PRESETS: { name: string, unit: ActivityUnit, caloriesPer100Units: number }[] = [
{ name: 'Chůze', unit: ActivityUnit.KROKY, caloriesPer100Units: 4 },
{ name: 'Svižná chůze', unit: ActivityUnit.MINUTY, caloriesPer100Units: 500 },
{ name: 'Běh', unit: ActivityUnit.MINUTY, caloriesPer100Units: 1000 },
{ name: 'Kolo', unit: ActivityUnit.MINUTY, caloriesPer100Units: 700 },
{ name: 'Plavání', unit: ActivityUnit.MINUTY, caloriesPer100Units: 800 },
{ name: 'Posilovna', unit: ActivityUnit.MINUTY, caloriesPer100Units: 600 },
{ name: 'Kliky', unit: ActivityUnit.OPAKOVANI, caloriesPer100Units: 50 },
{ name: 'Dřepy', unit: ActivityUnit.OPAKOVANI, caloriesPer100Units: 40 },
{ name: 'Shyby', unit: ActivityUnit.OPAKOVANI, caloriesPer100Units: 100 },
];