DatePicker
ui.widgets.DatePickerIntroduce una fecha o elígela en un calendario.
BEHAVIOR CONTRACT
El disparador, el overlay del calendario, la navegación por meses, la selección y el cierre vienen juntos.
RECORDED INTERACTION
El harness pulsa “Pick a date” y se abre el calendario.
// ── DatePicker ──
pub fn buildDatePicker(scope: *ui.Scope, cx: *ui.Cx) anyerror!*ui.Node {
const dp = try W.DatePicker(.{ .placeholder = "Pick a date", .initial_year = 2026, .initial_month = 5 }).mount(scope, cx);
return dp.wrapper;
}El código literal de la story en el Storybook (zenit 5f9add5+wip 2026-09-30). W es ui.widgets; col / row / label son pequeños helpers de layout del Storybook.
DatePickerProps
ui.widgets.DatePickerfn DatePicker(props: DatePickerProps) DatePickerBuilderCampo
Tipo
Predeterminado
Descripción
placeholder[]const u8"Select date..."—
selected_date?SimpleDatenull—
initial_yearu162025—
initial_monthu81—
widthf32220—
sizetheme.ControlSize.md控件尺寸(与 Button / Input / Select 同一 ControlSize,默认 md)
disabledboolfalse—
on_change?core.HandlerRefnull—
calendar_icon_asset?svg_assets.Assetnull—
prev_icon_asset?svg_assets.Assetnull—
next_icon_asset?svg_assets.Assetnull—
test_id?[]const u8null—
DatePickerResult
ui.widgets.DatePickerCampo
Tipo
Predeterminado
Descripción
wrapper*Node—
—
state*DatePickerState—
—