You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
astra
alpha-0.1-background
alpha-0.1-dir-prefs
alpha-0.1-sec-dom
menubar-v4-safe
active-uix
morfo-runtime
morfo-driven-soma
semantuix
glm-5
main
sium-v1.0
${ noResults }
Una clave nueva (51 → 52) y veinticinco adjudicaciones medidas: trece propias y doce por patrón. El default no se mueve: diff de computed 0 sobre 1.344 valores en 36 estados y capturas 2x idénticas. Censo: 76 % → 81 % (público 16 → 17, global 1 → 0; 22 knobs, 4 privados y 1 sistema fuera). Global 67 % (no baja). QUÉ ENTRA (1 clave) invalid-track-border (var(--color-threat-element)). Era el ÚNICO knob de apariencia que iba a un primitivo global a pelo. El nombre NO es el `invalid-border` que el catálogo repite seis veces (checkbox, listbox, grid-list, radio-cards, date-range-field…): esta receta tiene DOS partes con borde y las nombra — su hermana de estado es `disabled-track-border` y el pulgar lleva `thumb-border`, así que un nombre desnudo no diría cuál de las dos tiñe. La forma modificador + parte + ranura ya está en el catálogo (`invalid-input-border`, `invalid-control-border`). DOCE CLAVES DE TONO NO PINTAN — Y AQUÍ CAE TAMBIÉN «NEUTRAL» Es la cascada de paleta ya medida en button / badge / callout: el forward emite al FINAL un bloque genérico [data-switch][data-color] que resuelve desde el --palette-* global, misma especificidad (0,2,0), gana el último. Lo propio de este componente es que el fallback no salva ni al tono por defecto: soma estampa data-color SIEMPRE (es el color RESUELTO, neutral por defecto), así que el bloque genérico casa en toda instancia. Medido en checked: --switch-neutral-solid no mueve nada, --palette-solid sobre el nodo repinta (oklch(0.5556 …) -> rgb(4,5,6)). En button el neutral sobrevive; aquí no. Adjudicadas POR PATRÓN, con esa diferencia escrita. LAS OTRAS TRECE SON ESTADO O INSTRUMENTO Cinco disabled-* y el invalid-track-border nuevo sólo existen bajo su atributo, que ningún trigger alcanza (forzados: alcanzan, con su par medido). Los cinco size-*-thumb-translate son DOS huecos a la vez: pintan sobre `transform`, que el guard no fotografía, y valen 0px hasta que el interruptor está encendido (forzado checked: 12/14/16/18/20px -> 1234px). El par de transición ES la transición que el guard congela (sin congelar: 0,12s -> 11,5s en las cuatro propiedades). FUERA POR DOCTRINA (los 4 privados que quedan) --_switch-track-bg y --_switch-track-border-hover son CONMUTADORES: dos fuentes cada uno (la clave pública del estado apagado, el forward de paleta del encendido), y aplanarlos obligaría a duplicar cada regla por color. Las dos lecturas directas de --_switch-palette-solid* (el fondo del track en hover, la tinta del check dentro del pulgar) son el puente THM-2: un público encima dejaría que un tema fijara el tono y matara el color= de cada instancia. El techo honesto de este componente NO es el 100 %. DEFECTO ANOTADO, NO ARREGLADO El tinte inválido es --color-threat-element, el paso `element` de la escala: oklch(0.9555 0.0207 13.86), casi blanco sobre superficie clara. Y en cuanto entra el puntero, la regla de hover (0,4,0) lo tapa con el borde neutro fuerte. Es el MISMO valor en checkbox, radio-group y toggle para el mismo estado, así que es una decisión de escala del sistema (element contra border), no de esta receta: cambiarlo mueve píxel en cuatro componentes y D-TH.5 lo deja fuera. VERIFICACIÓN Sonda estándar antes/después 0 diffs (416 valores · 7 estados) + sonda de estados propia 0 diffs (928 valores · 29 estados: checked, invalid, readonly, disabled, RTL y las cinco tallas, cada uno con hover y foco) · capturas 2x antes/después idénticas · R-5.4 27/52, exit 0, sin STALE · censo --only 81 % · component:audit PASS · eidos-lint 13 morfo-backed / 0 invalid · vitest src/uix/eidos 35/36 (el rojo conocido es skin-media-player) · rtl:check 0 · docs:check 0 · npm run check sin errores en ficheros del componente · pestaña Tokens verificada en el navegador (52 filas, 0 errores de consola). Índice construido a mano desde HEAD sobre los cuatro ficheros compartidos (recipes/base.ts, generated/base.css, theming-sentinel-exceptions.ts): hay tres sesiones más en vuelo sobre ellos. Fuera del commit, como en el de `form`, docs/audit/theming/README.md — es un agregado global que mezcla ese trabajo. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> |
2 months ago | |
|---|---|---|
| .. | ||
| +page.svelte | uix(switch): temable — 76 % → 81 %, y su tono NEUTRAL cae con los otros once | 2 months ago |