LiveFilter.Components.Datetime (LiveFilter v0.1.8)

Copy Markdown View Source

Datetime picker component with calendar and time selection.

Renders a DaisyUI dropdown with a monthly calendar view and time inputs supporting both 12-hour and 24-hour formats.

Required Assigns

  • filter - The Filter struct containing value and config
  • myself - The parent LiveComponent's @myself for event targeting
  • current_month - The currently displayed month (Date)

Events (handled by parent)

  • datetime_select_date - %{"id" => filter_id, "date" => iso_date}
  • datetime_change_hour - %{"id" => filter_id, "hour" => hour}
  • datetime_change_minute - %{"id" => filter_id, "minute" => minute}
  • datetime_toggle_period - %{"id" => filter_id, "period" => "am" | "pm"}

  • datetime_prev_month - %{"id" => filter_id}
  • datetime_next_month - %{"id" => filter_id}
  • datetime_change_month - month change event
  • datetime_change_year - year change event
  • clear_filter_value - %{"id" => filter_id}

Example

<LiveFilter.Components.Datetime.render
  filter={@filter}
  myself={@myself}
  current_month={@current_month}
/>

Summary

Functions

Formats a datetime value for display.

Parses a datetime value into component parts. Returns {date, hour, minute, period} tuple.

Renders a datetime picker component.

Converts 12-hour time to 24-hour format.

Functions

format_display(value, time_format)

Formats a datetime value for display.

parse_value(datetime_str, time_format)

Parses a datetime value into component parts. Returns {date, hour, minute, period} tuple.

render(assigns)

Renders a datetime picker component.

Attributes

  • filter (:map) (required) - The Filter struct.
  • myself (:any) (required) - The parent LiveComponent's @myself.
  • current_month (Date) (required) - The currently displayed month.

to_24_hour(hour, atom)

Converts 12-hour time to 24-hour format.