DatePopover, TimePopover, and DateTimePopover combine a custom trigger with a draft editor and an explicit confirmation button. They require a Root ancestor and its popup manager. Unlike the standard picker triggers, these always use the library popup, including on touch devices.
The trigger snippet is required; a children snippet is not a substitute. Pass value one-way and update it in onconfirm. Edits are discarded when the popup is dismissed without confirmation.
The panel awaits onconfirm before resolving the popup. Its confirmation button shows a loading state during that promise. Handle save errors in your callback and provide application feedback; returning normally closes the panel.
10/4/2026, 9:30:00 AM