ui/calendar

Types

Messages for calendar keyboard navigation

pub type Msg {
  MoveDay(Int)
  SelectDate
  MoveWeek(Int)
  MoveMonth(Int)
  MoveToFirstDayOfWeek
  MoveToLastDayOfWeek
}

Constructors

  • MoveDay(Int)
  • SelectDate
  • MoveWeek(Int)
  • MoveMonth(Int)
  • MoveToFirstDayOfWeek
  • MoveToLastDayOfWeek

Selection mode for calendar

pub type SelectionMode {
  Single
  Multiple
  Range
}

Constructors

  • Single
  • Multiple
  • Range
pub type Size {
  Small
  Medium
  Large
}

Constructors

  • Small
  • Medium
  • Large
pub type Variant {
  Default
  Muted
}

Constructors

  • Default
  • Muted

Values

pub fn calendar(
  attributes: List(attribute.Attribute(a)),
  children: List(element.Element(a)),
) -> element.Element(a)
pub fn cell(
  attributes: List(attribute.Attribute(a)),
  children: List(element.Element(a)),
) -> element.Element(a)
pub fn day(
  attributes: List(attribute.Attribute(a)),
  children: List(element.Element(a)),
) -> element.Element(a)
pub fn grid(
  attributes: List(attribute.Attribute(a)),
  children: List(element.Element(a)),
) -> element.Element(a)
pub fn keymap(
  key_event: keyboard.KeyEvent,
  selection_mode: SelectionMode,
) -> option.Option(Msg)

Keymap for calendar keyboard navigation

Keyboard interactions:

  • Arrow keys: Navigate dates (day by day)
  • Home: First day of week
  • End: Last day of week
  • PageUp: Previous month
  • PageDown: Next month
  • Space/Enter: Select date

Follows WAI-ARIA Grid pattern.

pub fn size(s: Size) -> attribute.Attribute(a)
Search Document