44import datetime
55import functools
66from asyncio import AbstractEventLoop
7- from typing import Callable , Coroutine , Optional , TypeVar
7+ from typing import Callable , Coroutine , Optional , Tuple , TypeVar
88
99T = TypeVar ("T" )
10- DEFAULT_TIME_ZONE : datetime .tzinfo = datetime .timezone . utc
10+ DEFAULT_TIME_ZONE : Optional [ datetime .tzinfo ] = datetime .datetime . now (). astimezone (). tzinfo
1111
1212
1313def unpack_list (value : list [T ], size : int ) -> list [Optional [T ]]:
@@ -23,16 +23,22 @@ def get_running_loop_or_create_one() -> AbstractEventLoop:
2323 return loop
2424
2525
26- def parse_time_to_datetime (initial_time : datetime .time ) -> datetime .datetime :
26+ def parse_time_to_datetime (
27+ start_time : datetime .time , end_time : datetime .time
28+ ) -> Tuple [datetime .datetime , datetime .datetime ]:
2729 """Help to handle time data."""
28- time = datetime .datetime .now (DEFAULT_TIME_ZONE ).replace (
29- hour = initial_time .hour , minute = initial_time .minute , second = 0 , microsecond = 0
30+ start_datetime = datetime .datetime .now (DEFAULT_TIME_ZONE ).replace (
31+ hour = start_time .hour , minute = start_time .minute , second = 0 , microsecond = 0
32+ )
33+ end_datetime = datetime .datetime .now (DEFAULT_TIME_ZONE ).replace (
34+ hour = end_time .hour , minute = end_time .minute , second = 0 , microsecond = 0
3035 )
3136
32- if time < datetime .datetime .now (DEFAULT_TIME_ZONE ):
33- time += datetime .timedelta (days = 1 )
37+ if end_datetime < datetime .datetime .now (DEFAULT_TIME_ZONE ):
38+ start_datetime += datetime .timedelta (days = 1 )
39+ end_datetime += datetime .timedelta (days = 1 )
3440
35- return time
41+ return start_datetime , end_datetime
3642
3743
3844def run_sync ():
0 commit comments