maccounter

Форк
0
45 строк · 1.0 Кб
1
import { isBetween } from '@utils/isBetween'
2

3
export const getCurrentTimePeriod = () => {
4
    const periods = {
5
        night: {
6
            min: 0,
7
            max: 5,
8
        },
9
        morning: {
10
            min: 6,
11
            max: 11,
12
        },
13
        afternoon: {
14
            min: 12,
15
            max: 17,
16
        },
17
        evening: {
18
            min: 18,
19
            max: 23,
20
        },
21
    }
22

23
    let currentHour = new Date()
24
        .toLocaleTimeString('en-US', { hour12: false })
25
        .split(':')[0] as unknown as number
26

27
    if (Number(currentHour) === 24) {
28
        currentHour = 0
29
    }
30

31
    const isNight = isBetween({ value: currentHour, ...periods.night })
32
    const isEvening = isBetween({ value: currentHour, ...periods.evening })
33
    const isAfternoon = isBetween({ value: currentHour, ...periods.afternoon })
34

35
    switch (true) {
36
        case isNight:
37
            return 'night'
38
        case isEvening:
39
            return 'evening'
40
        case isAfternoon:
41
            return 'afternoon'
42
        default:
43
            return 'morning'
44
    }
45
}
46

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.