tawasuyu/llimphi
Sovereign retained-mode GPU UI framework in Rust (wgpu+vello+taffy+parley), Elm loop, 40+ widgets.
chore: refresco desde el monorepo — vello 0.9 / wgpu 29, 120 miembros
1[package]
2name = "llimphi-widget-form"
3version.workspace = true
4edition.workspace = true
5license.workspace = true
6authors.workspace = true
7publish.workspace = true
8description = "llimphi-widget-form — validación de formularios sobre el widget-field: reglas por campo, agregación de errores y —lo que de verdad importa— CUÁNDO mostrarlos (al salir del campo o al enviar, nunca mientras se tipea la primera vez). Incluye el resumen de errores navegable que pide la accesibilidad."
9
10[dependencies]
11# El COMPOSITOR, no el shell de escritorio: así este widget sirve igual en
12# Linux, en el kernel de wawa y adentro de una jaula WASM (W4.6).
13llimphi-compositor = { workspace = true, default-features = false }
14llimphi-theme = { workspace = true }
15# El campo con label/helper/error es el widget canónico; esto lo alimenta.
16llimphi-widget-field = { workspace = true, default-features = false }
17
18[features]
19# Un widget NO elige backend: lo elige quien ensambla la app —`llimphi-ui` en
20# Linux, `llimphi-jaula` en una jaula WASM, `llimphi-wawa` en el kernel—. Este
21# default existe sólo para que el crate se pueda compilar SOLO
22# (`cargo check -p llimphi-widget-…`), porque el compositor no compila sin
23# ninguno. Toda app lo apaga con `default-features = false` y trae el suyo.
24default = ["vello"]
25vello = ["llimphi-compositor/vello", "llimphi-widget-field/vello"]
26cpu = ["llimphi-compositor/cpu", "llimphi-widget-field/cpu"]
27wire = ["llimphi-compositor/wire", "llimphi-widget-field/wire"]