Spaces:
Running
Running
| from dataclasses import field | |
| from datetime import date | |
| import mesop as me | |
| class State: | |
| picked_date: date | None = field(default_factory=lambda: date(2024, 10, 1)) | |
| def on_load(e: me.LoadEvent): | |
| me.set_theme_mode("system") | |
| def app(): | |
| state = me.state(State) | |
| with me.box( | |
| style=me.Style( | |
| display="flex", | |
| flex_direction="column", | |
| gap=15, | |
| padding=me.Padding.all(15), | |
| ) | |
| ): | |
| me.date_picker( | |
| label="Date", | |
| disabled=False, | |
| placeholder="9/1/2024", | |
| required=True, | |
| value=state.picked_date, | |
| readonly=False, | |
| hide_required_marker=False, | |
| color="accent", | |
| float_label="always", | |
| appearance="outline", | |
| on_change=on_date_change, | |
| ) | |
| me.text("Selected date: " + _render_date(state.picked_date)) | |
| def on_date_change(e: me.DatePickerChangeEvent): | |
| state = me.state(State) | |
| state.picked_date = e.date | |
| def _render_date(maybe_date: date | None) -> str: | |
| if maybe_date: | |
| return maybe_date.strftime("%Y-%m-%d") | |
| return "None" | |