Stop importing archived Eidos contracts

active-uix
dev 5 months ago
parent 8d6d4c5700
commit 80328a4ad3

@ -106,9 +106,11 @@ a su `portalTo`. No usar nombres como `somaPortalTo` en `ActiveUix`.
lo importa como foundation estatica. lo importa como foundation estatica.
5. Pendiente: decidir que tokens per-component de `tokens/components/*` 5. Pendiente: decidir que tokens per-component de `tokens/components/*`
quedan como recipe estable y cuales deben salir de `EidosConfig`. quedan como recipe estable y cuales deben salir de `EidosConfig`.
6. Pendiente: retirar `contracts/`, `tokens/` o `themes/base/` del entrypoint 6. `contracts/` ya no se importa desde `src/uix/eidos/index.css`; queda como
estatico cuando las recipes ya no dependan de aliases historicos. archivo de consulta/tooling hasta decidir si se borra.
7. No reintroducir engine visual separado, carpeta `engine`, ni wrapper `Eidos` sin 7. Pendiente: retirar `tokens/` o `themes/base/` del entrypoint estatico cuando
las recipes ya no dependan de aliases historicos.
8. No reintroducir engine visual separado, carpeta `engine`, ni wrapper `Eidos` sin
contrato propio. contrato propio.
## Pendiente de limpieza ## Pendiente de limpieza

@ -393,7 +393,7 @@ src/uix/eidos/
├── archetypes.css reglas comunes a [data-archetype=*] ├── archetypes.css reglas comunes a [data-archetype=*]
├── events.css reacciones a [data-event-*] (sema visual) ├── events.css reacciones a [data-event-*] (sema visual)
├── generated/base.css foundation CSS generado desde EidosConfig base ├── generated/base.css foundation CSS generado desde EidosConfig base
├── contracts/ CSS legacy/estatico durante migracion ├── contracts/ CSS contract archivado; no import runtime
├── tokens/ valores CSS legacy hasta generarlos desde ActiveEidos ├── tokens/ valores CSS legacy hasta generarlos desde ActiveEidos
├── themes/base/ CSS legacy de base hasta sustituirlo por salida generada ├── themes/base/ CSS legacy de base hasta sustituirlo por salida generada
├── lib/ soporte de config, contrato CSS, tokens y tipos compartidos ├── lib/ soporte de config, contrato CSS, tokens y tipos compartidos
@ -833,10 +833,9 @@ Para evitar mission creep, conviene fijar lo que UIX **no quiere ser**:
**Pendiente**: **Pendiente**:
- Sustituir progresivamente `contracts/`, `tokens/` y `themes/base/`. El primer - Sustituir progresivamente `tokens/` y `themes/base/`. El primer artefacto
artefacto generado ya existe en `src/uix/eidos/generated/base.css`; falta generado ya existe en `src/uix/eidos/generated/base.css`; `contracts/` ya no
retirar aliases/contratos legacy cuando las recipes de componentes dejen de se importa en runtime y queda como archivo de consulta/tooling.
depender de ellos.
- Reparar demos/rutas y componentes eidos que sigan en una mezcla historica - Reparar demos/rutas y componentes eidos que sigan en una mezcla historica
de `Provider`/flat snippets para que todo compile contra la opcion C de `Provider`/flat snippets para que todo compile contra la opcion C
disciplinada. disciplinada.

@ -327,9 +327,10 @@ y de theme desde la configuracion viva. Mantenerlos:
**Estado 2026-05-13:** existe el primer artefacto generado, **Estado 2026-05-13:** existe el primer artefacto generado,
`src/uix/eidos/generated/base.css`, producido con `npm run generate:eidos-css` `src/uix/eidos/generated/base.css`, producido con `npm run generate:eidos-css`
desde `EidosConfig` base. Aun no se borran `contracts/`, `tokens/` ni desde `EidosConfig` base. `contracts/` ya no se importa desde `index.css`;
queda como archivo de consulta/tooling. Aun no se borran `tokens/` ni
`themes/base/` porque varias recipes y aliases historicos dependen de ellos. `themes/base/` porque varias recipes y aliases historicos dependen de ellos.
El siguiente paso es separar recipes estables de aliases/contratos retirables. El siguiente paso es separar recipes estables de aliases retirables.
--- ---

@ -54,7 +54,7 @@ src/uix/eidos/
archetypes.css → reglas comunes a [data-archetype=*] archetypes.css → reglas comunes a [data-archetype=*]
events.css → reacciones a [data-event-*] (sema visual) events.css → reacciones a [data-event-*] (sema visual)
generated/base.css → salida estatica generada desde EidosConfig base generated/base.css → salida estatica generada desde EidosConfig base
contracts/ → APIs CSS legacy/estaticas durante migracion contracts/ → contratos CSS archivados; no se importan en runtime
tokens/ → valores CSS legacy hasta generarlos desde ActiveEidos tokens/ → valores CSS legacy hasta generarlos desde ActiveEidos
themes/base/ → CSS legacy de base hasta sustituirlo por salida generada themes/base/ → CSS legacy de base hasta sustituirlo por salida generada
lib/ → soporte de config, tokens, contrato CSS y tipos compartidos lib/ → soporte de config, tokens, contrato CSS y tipos compartidos
@ -68,8 +68,9 @@ src/uix/eidos/
`lib/` contiene el soporte puro de configuracion visual: primitivas, semantica `lib/` contiene el soporte puro de configuracion visual: primitivas, semantica
visual, themes, contrato CSS y render. `generated/base.css` es el primer visual, themes, contrato CSS y render. `generated/base.css` es el primer
artefacto estatico generado desde esa configuracion (`npm run generate:eidos-css`). artefacto estatico generado desde esa configuracion (`npm run generate:eidos-css`).
Los CSS historicos (`contracts/`, `tokens/`, `themes/base/`) siguen existiendo `contracts/` queda como material archivado para consulta y tooling, pero ya no
como material de transicion, pero no son el modelo que debe crecer. se importa desde `index.css`. `tokens/` y `themes/base/` siguen existiendo como
material de transicion, pero no son el modelo que debe crecer.
## Runtime activo ## Runtime activo
@ -652,9 +653,10 @@ podrá retirarse.
modulo general. modulo general.
- **CSS generado/legacy**: `generated/base.css` ya se genera desde la config - **CSS generado/legacy**: `generated/base.css` ya se genera desde la config
base de Eidos con `npm run generate:eidos-css` y se importa como foundation base de Eidos con `npm run generate:eidos-css` y se importa como foundation
estatica. `contracts/`, `tokens/` y `themes/base/` siguen presentes como estatica. `contracts/` ya no entra en el runtime CSS; queda archivado para
transicion porque aun hay recipes y aliases historicos que dependen de ellos. consulta/tooling. `tokens/` y `themes/base/` siguen presentes como transicion
El siguiente paso es decidir que queda como recipe estable y que se elimina. porque aun hay recipes y aliases historicos que dependen de ellos. El siguiente
paso es decidir que queda como recipe estable y que se elimina.
- **Primitivas pendientes de cerrar**: decision final sobre que CSS legacy - **Primitivas pendientes de cerrar**: decision final sobre que CSS legacy
queda como recipe frente a lo generado. queda como recipe frente a lo generado.
- **Check del repo**: `npm run check` no reporta errores en este punto; quedan - **Check del repo**: `npm run check` no reporta errores en este punto; quedan

@ -10,7 +10,8 @@
* targets soma+morfo and applies universally to the data-attrs the * targets soma+morfo and applies universally to the data-attrs the
* morfo declares): * morfo declares):
* *
* contracts/ public token interfaces (empty declarations — themes fill) * generated/ foundation CSS generated from EidosConfig
* contracts/ archived public token interfaces (not imported at runtime)
* tokens/ per-component internal values that reference contracts * tokens/ per-component internal values that reference contracts
* themes/ implementations: light / dark / brand * themes/ implementations: light / dark / brand
* components/ recipes per component (compose tokens + selectors) * components/ recipes per component (compose tokens + selectors)
@ -45,14 +46,11 @@
* *
* ActiveEidos is the canonical source for generated foundation CSS, but this * ActiveEidos is the canonical source for generated foundation CSS, but this
* entrypoint is still used by SSR/static docs with `ActiveEidos.create({ * entrypoint is still used by SSR/static docs with `ActiveEidos.create({
* applyDom: false })`. Do not remove `contracts/`, `tokens/` or * applyDom: false })`. `contracts/` is intentionally not imported: those
* `themes/base/` from here until there is a build-generated CSS artifact * files are archived empty declarations, not runtime values.
* imported by static consumers.
*/ */
@import './contracts/contract-all.css';
@import './contracts/components/index.css';
/* ── Foundation: per-component token values referencing contracts ───────── */ /* ── Foundation: per-component token values / legacy recipe aliases ─────── */
@import './tokens/motion.css'; @import './tokens/motion.css';
@import './tokens/components/index.css'; @import './tokens/components/index.css';

Loading…
Cancel
Save

Powered by TurnKey Linux.