The record a picker builds and hands to each of its children.
Cally passes this down with an atomico context provider and slots the children
into the light DOM. elm-cally has no shadow DOM, so a child is a function of
Context: Cally.Date.view applies it to every child you give it, which means
children can sit in any order and anywhere in the tree, including inside the
heading slot.
What the picker has selected. Each picker produces its own variant, so a
child such as Cally.Month.view can render all three.
The months currently on screen. end is start plus months - 1.
Everything a child needs to render, and the three messages it can send back.
idisConfig.id, the prefix of every DOM id the picker generates.The three callbacks are the picker's own internal messages, already wrapped with
Config.toMsg:onSelectDayis a click on a day that is not disallowed. The picker both selects and focuses that day, because a DOM event can only produce one Elm message.onFocusDayis a click on a disallowed day, a keyboard move, or a<select>change. The date is already clamped tomin/max.onHoverDayismouseoveron a day that is neither disallowed nor disabled. OnlyCally.Rangedoes anything with it.