-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathactivity.ts
More file actions
58 lines (55 loc) · 2.21 KB
/
Copy pathactivity.ts
File metadata and controls
58 lines (55 loc) · 2.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import { Barbell, OfficeChair, PersonSimpleRun, PersonSimpleTaiChi, Trophy } from 'phosphor-svelte';
import type { Component } from 'svelte';
import { BadgeColor, type OptionCardBadge } from '@thwbh/veilchen';
export interface ActivityLevelInfo {
level: number;
label: string;
icon: Component;
badge: OptionCardBadge;
description: string;
}
export const activityLevels: ActivityLevelInfo[] = [
{
level: 1,
label: 'Mostly Sedentary',
icon: OfficeChair,
badge: { text: 'Level 1', color: BadgeColor.Secondary },
description:
'You likely have an office job and try your best reaching your daily step goal. Apart from that, you do not work out regularly and spend most of your day stationary.'
},
{
level: 1.25,
label: 'Light Activity',
icon: PersonSimpleTaiChi,
badge: { text: 'Level 2', color: BadgeColor.Secondary },
description:
'You either have a job that requires you to move around frequently or you hit the gym 2x - 3x times a week. In either way, you are regularly lifting weight and training your cardiovascular system.'
},
{
level: 1.5,
label: 'Moderate Activity',
icon: PersonSimpleRun,
badge: { text: 'Level 3', color: BadgeColor.Secondary },
description:
'You consistently train your body 3x - 4x times a week. Your training plan became more sophisticated over the years and include cardiovascular HIIT sessions. You realized how important nutrition is and want to improve your sportive results.'
},
{
level: 1.75,
label: 'Highly Active',
icon: Barbell,
badge: { text: 'Level 4', color: BadgeColor.Warning },
description:
'Fitness is your top priority in life. You dedicate large parts of your week to train your body, maybe even regularly visit sportive events. You work out almost every day and certainly know what you are doing.'
},
{
level: 2,
label: 'Athlete',
icon: Trophy,
badge: { text: 'Level 5', color: BadgeColor.Accent },
description:
"Your fitness level reaches into the (semi-) professional realm. Calculators like this won't fulfill your needs and you are curious how far off the results will be."
}
];
export const getActivityLevelInfo = (level: number): ActivityLevelInfo => {
return activityLevels.find((a) => a.level === level) || activityLevels[0];
};