WoodyLab
WoodyLabBuild with UIMS

Documentazione · src/baselines

Le baseline

Dieci file: i valori da cui un progetto vuoto parte. Non sono runtime — il motore legge gli store, non questi file. Sono il punto di partenza che `init` copia una volta.

Punto di partenza, non configurazione

La distinzione è la cosa più importante di quest’area. Le baseline non vengono lette a runtime: `init` le scrive nei sei store del progetto, e da quel momento appartengono al progetto. Aggiornare il pacchetto non le riscrive.

Il che significa che un progetto può divergere quanto vuole senza combattere con la libreria — e che un miglioramento nelle baseline del pacchetto non arriva da solo a chi ha già installato. È un compromesso scelto: la proprietà del proprio aspetto vale più dell’aggiornamento automatico.

  • baselines/index.ts — la porta: cosa `init` legge

La style guide di partenza

Duecentonovantadue stili: un lessico che mappa insiemi di selettori Tailwind — fondamenta, utilità tipografiche, e componenti con varianti di colore, dimensione e stato. I viewMode COMPONGONO questi stili invece di ripetere le classi.

È la parte più densa delle baseline e quella che conviene leggere per prima quando si vuole capire come è pensato l’aspetto: i nomi dicono il vocabolario.

  • baselines/uims-styles.ts — la style guide di partenza
  • baselines/uims-base-vars.ts — la base piatta e completa delle variabili: un tema le sovrascrive e vince

I viewMode e i temi

I viewMode di partenza sono il file più lungo del pacchetto, ed è giusto che lo sia: descrive la configurazione di default di ogni forma. Accanto ci sono i viewMode presentazionali del pacchetto — strutture, con `themeStyles` per tema — e quelli dell’editor, che stanno in un tema a parte.

Il catalogo dei temi è una palette più dei font, tredici in tutto. La differenziazione strutturale non sta qui ma nei `themeStyles` dei viewMode: è quello che tiene un tema leggero.

La palette è UNA nel global, non una per tema: dato il tema scelto, un seeder importa la palette corrispondente e la scrive nei campi colore. I viewMode usano solo token semantici, quindi cambiare palette non tocca niente.

  • baselines/uims-viewModes.ts — la configurazione di default di ogni viewMode
  • baselines/presentationalViewModes.ts — le strutture del pacchetto, con `themeStyles` per tema
  • baselines/adminViewModes.ts — i viewMode dell’editor, nel tema `admin`
  • baselines/themes.ts — il catalogo: palette più font
  • baselines/uims-theme-palettes.ts — le palette, una per tema

Effetti ed eventi

Le ricette di animazione di partenza seguono la stessa regola dei viewMode: il codice definisce quali esistono, `init` le scrive se mancano, l’admin le modifica. Le fixture dei test derivano da qui, così un test non può passare contro una ricetta inventata.

Il catalogo degli eventi porta una cosa che un handler non può dichiarare da solo: gli eventi di STATO, quelli cablati per default nel reducer dello store. Esistono come nomi anche se nessun handler risponde, perché è il reducer a trattarli.

  • baselines/uims-effects.ts — le ricette di animazione di partenza
  • baselines/uims-events.ts — il catalogo degli eventi, inclusi quelli di stato
Login