Add datetime to moment (#4381)

* Add datetime to moment

* Remove recharts update

* Support other formats

* simplify

* Precommit

* PYI

* change imports for pyi compat

---------

Co-authored-by: Alek Petuskey <alekpetuskey@Aleks-MacBook-Pro.local>
Co-authored-by: Masen Furer <m_github@0x26.net>
This commit is contained in:
Alek Petuskey 2024-11-19 09:29:11 -08:00 committed by GitHub
parent bcea79cd45
commit bffff01acb
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 16 additions and 5 deletions

View File

@ -1,7 +1,8 @@
"""Moment component for humanized date rendering.""" """Moment component for humanized date rendering."""
import dataclasses import dataclasses
from typing import List, Optional from datetime import date, datetime, time, timedelta
from typing import List, Optional, Union
from reflex.components.component import NoSSRComponent from reflex.components.component import NoSSRComponent
from reflex.event import EventHandler, passthrough_event_spec from reflex.event import EventHandler, passthrough_event_spec
@ -19,7 +20,7 @@ class MomentDelta:
weeks: Optional[int] = dataclasses.field(default=None) weeks: Optional[int] = dataclasses.field(default=None)
days: Optional[int] = dataclasses.field(default=None) days: Optional[int] = dataclasses.field(default=None)
hours: Optional[int] = dataclasses.field(default=None) hours: Optional[int] = dataclasses.field(default=None)
minutess: Optional[int] = dataclasses.field(default=None) minutes: Optional[int] = dataclasses.field(default=None)
seconds: Optional[int] = dataclasses.field(default=None) seconds: Optional[int] = dataclasses.field(default=None)
milliseconds: Optional[int] = dataclasses.field(default=None) milliseconds: Optional[int] = dataclasses.field(default=None)
@ -78,7 +79,7 @@ class Moment(NoSSRComponent):
duration: Var[str] duration: Var[str]
# The date to display (also work if passed as children). # The date to display (also work if passed as children).
date: Var[str] date: Var[Union[str, datetime, date, time, timedelta]]
# Shows the duration (elapsed time) between now and the provided datetime. # Shows the duration (elapsed time) between now and the provided datetime.
duration_from_now: Var[bool] duration_from_now: Var[bool]

View File

@ -4,6 +4,7 @@
# This file was generated by `reflex/utils/pyi_generator.py`! # This file was generated by `reflex/utils/pyi_generator.py`!
# ------------------------------------------------------ # ------------------------------------------------------
import dataclasses import dataclasses
from datetime import date, datetime, time, timedelta
from typing import Any, Dict, Optional, Union, overload from typing import Any, Dict, Optional, Union, overload
from reflex.components.component import NoSSRComponent from reflex.components.component import NoSSRComponent
@ -20,7 +21,7 @@ class MomentDelta:
weeks: Optional[int] weeks: Optional[int]
days: Optional[int] days: Optional[int]
hours: Optional[int] hours: Optional[int]
minutess: Optional[int] minutes: Optional[int]
seconds: Optional[int] seconds: Optional[int]
milliseconds: Optional[int] milliseconds: Optional[int]
@ -46,7 +47,16 @@ class Moment(NoSSRComponent):
decimal: Optional[Union[Var[bool], bool]] = None, decimal: Optional[Union[Var[bool], bool]] = None,
unit: Optional[Union[Var[str], str]] = None, unit: Optional[Union[Var[str], str]] = None,
duration: Optional[Union[Var[str], str]] = None, duration: Optional[Union[Var[str], str]] = None,
date: Optional[Union[Var[str], str]] = None, date: Optional[
Union[
Var[Union[date, datetime, str, time, timedelta]],
date,
datetime,
str,
time,
timedelta,
]
] = None,
duration_from_now: Optional[Union[Var[bool], bool]] = None, duration_from_now: Optional[Union[Var[bool], bool]] = None,
unix: Optional[Union[Var[bool], bool]] = None, unix: Optional[Union[Var[bool], bool]] = None,
local: Optional[Union[Var[bool], bool]] = None, local: Optional[Union[Var[bool], bool]] = None,