From f9591c52162835ab0aa98b9dd47876026500e7ca Mon Sep 17 00:00:00 2001 From: dev Date: Sat, 16 May 2026 16:35:30 +0200 Subject: [PATCH] Fill Eidos recipe token gaps --- continue.md | 19 +++++++++++++++++++ src/uix/eidos/generated/base.css | 3 +++ src/uix/eidos/lib/recipes/base.ts | 3 +++ 3 files changed, 25 insertions(+) diff --git a/continue.md b/continue.md index b45385391..c4926bd01 100644 --- a/continue.md +++ b/continue.md @@ -82,6 +82,25 @@ Actualizacion Eidos 2026-05-16: 3. Revisar tests de componentes Eidos: hoy hay cobertura del runtime Eidos, pero no tests unitarios especificos para wrappers visuales. +Actualizacion Eidos recipes 2026-05-16: + +- Inicio del barrido recipe/CSS: + - `checkbox.css` consumia `--checkbox-stroke-duration` y + `--checkbox-stroke-ease` solo como fallback inline; ambos pasan a + `THEME_BASE_RECIPE_TOKENS.checkbox`. + - `popover.css` consumia `--popover-overlay-z` con fallback; pasa a + `THEME_BASE_RECIPE_TOKENS.popover`. + - Regenerado `src/uix/eidos/generated/base.css` con + `npm run generate:eidos-css`. +- Validacion: + - `npm run check` -> 0 errores, 0 warnings. + - `npx vitest run src/uix/eidos` -> 4 archivos, 56 tests OK. +- Pendiente del mismo eje: + - Convertir el barrido recipe/CSS en test estable o script robusto (el + parser rapido usado hoy no sirve con objetos TS complejos y comentarios). + - Revisar tokens declarados pero no usados para separar: reserva doctrinal + intencional vs residuo de CSS legacy. + Actualizacion 2026-05-16: - Barrido de wrappers publicos Soma frente a providers cerrado: diff --git a/src/uix/eidos/generated/base.css b/src/uix/eidos/generated/base.css index 3ad8f9677..0d6f137a8 100644 --- a/src/uix/eidos/generated/base.css +++ b/src/uix/eidos/generated/base.css @@ -440,6 +440,8 @@ --checkbox-focus-ring: var(--focus-ring); --checkbox-transition-duration: var(--duration-fast); --checkbox-transition-ease: var(--ease-default); + --checkbox-stroke-duration: 220ms; + --checkbox-stroke-ease: cubic-bezier(0.4, 0, 0.2, 1); --checkbox-bg-off: var(--color-surface-default); --checkbox-bg-off-hover: color-mix( in srgb, var(--color-surface-default) 82%, var(--color-surface-overlay) ); --checkbox-border-off: var(--color-border-default); @@ -603,6 +605,7 @@ --icon-size: var(--icon-size-md); --icon-stroke-width: var(--icon-stroke-width-md); --popover-content-z: 75; + --popover-overlay-z: 60; --popover-gap: var(--space-3); --popover-max-width: 32rem; --popover-min-width-sm: 14rem; diff --git a/src/uix/eidos/lib/recipes/base.ts b/src/uix/eidos/lib/recipes/base.ts index 69a78f3c1..f086802df 100644 --- a/src/uix/eidos/lib/recipes/base.ts +++ b/src/uix/eidos/lib/recipes/base.ts @@ -168,6 +168,8 @@ export const THEME_BASE_RECIPE_TOKENS = { 'focus-ring': 'var(--focus-ring)', 'transition-duration': 'var(--duration-fast)', 'transition-ease': 'var(--ease-default)', + 'stroke-duration': '220ms', + 'stroke-ease': 'cubic-bezier(0.4, 0, 0.2, 1)', 'bg-off': 'var(--color-surface-default)', 'bg-off-hover': 'color-mix( in srgb, var(--color-surface-default) 82%, var(--color-surface-overlay) )', @@ -346,6 +348,7 @@ export const THEME_BASE_RECIPE_TOKENS = { }, popover: { 'content-z': '75', + 'overlay-z': '60', gap: 'var(--space-3)', 'max-width': '32rem', 'min-width-sm': '14rem',