@kaufmann-lab/ui 0.1.9 → 0.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/fesm2022/kaufmann-lab-ui.mjs +5919 -3398
- package/fesm2022/kaufmann-lab-ui.mjs.map +1 -1
- package/fesm2022/mapbox-gl-csp.worker.js +6 -0
- package/package.json +2 -1
- package/src/tokens/base.css +73 -0
- package/src/tokens/themes/andes-maq.css +7 -0
- package/src/tokens/themes/divemotor-star.css +16 -3
- package/types/kaufmann-lab-ui.d.ts +3067 -391
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// Asset copiado tal cual por `ng-package.json` — nunca pasa por el compilador
|
|
2
|
+
// de Angular/TypeScript. Ver el comentario en `MapView.ts` sobre por qué
|
|
3
|
+
// `new Worker(new URL('./mapbox-gl-csp.worker.js', import.meta.url))` necesita
|
|
4
|
+
// que este archivo exista de forma real, junto al bundle publicado, en vez de
|
|
5
|
+
// ser solo un import de TypeScript más.
|
|
6
|
+
import 'mapbox-gl/dist/mapbox-gl-csp-worker.js';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kaufmann-lab/ui",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.13",
|
|
4
4
|
"description": "Shared Angular component library for the Kaufmann frontends",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Kaufmann Lab",
|
|
@@ -13,6 +13,7 @@
|
|
|
13
13
|
"@angular/core": "^22.1.0"
|
|
14
14
|
},
|
|
15
15
|
"dependencies": {
|
|
16
|
+
"mapbox-gl": "^3.30.0",
|
|
16
17
|
"tslib": "^2.3.0"
|
|
17
18
|
},
|
|
18
19
|
"sideEffects": false,
|
package/src/tokens/base.css
CHANGED
|
@@ -31,6 +31,18 @@
|
|
|
31
31
|
*/
|
|
32
32
|
--kf-color-tertiary-deep: #003252;
|
|
33
33
|
|
|
34
|
+
/*
|
|
35
|
+
* Gradiente del sidebar de navegación persistente (`kf-sidebar-shell`) y,
|
|
36
|
+
* a futuro, Servicio Star, que usa el mismo patrón de sidebar según el
|
|
37
|
+
* design system. Valores propios — NO reutilizar `-primary-active`/
|
|
38
|
+
* `-tertiary-deep` de arriba: son visualmente parecidos pero no iguales
|
|
39
|
+
* (ver `css/otd.css` del design system, regla `.side`), y quedaron
|
|
40
|
+
* confundidos entre sí una vez ya (versión inicial de `kf-sidebar-shell`
|
|
41
|
+
* usaba los tokens de marca genéricos por error).
|
|
42
|
+
*/
|
|
43
|
+
--kf-color-sidebar-gradient-from: #002a47;
|
|
44
|
+
--kf-color-sidebar-gradient-to: #001f36;
|
|
45
|
+
|
|
34
46
|
/*
|
|
35
47
|
* Oscurecido desde el naranja de marca original (#e6750c) — con texto
|
|
36
48
|
* blanco (kf-button variant="secondary") el tono original daba 3.04:1,
|
|
@@ -69,6 +81,17 @@
|
|
|
69
81
|
--kf-color-info-soft: #eaf3ff;
|
|
70
82
|
--kf-color-info-strong: #155bb5;
|
|
71
83
|
|
|
84
|
+
/*
|
|
85
|
+
* Acento morado — no es un color semántico de estado (no significa
|
|
86
|
+
* éxito/error/warning), es un acento de marca puntual del portal OTD
|
|
87
|
+
* (bonos/beneficios en el Design System Divemotor). Documentado como
|
|
88
|
+
* caso aislado a propósito: si aparece en más de un portal o más de
|
|
89
|
+
* una sección, conviene revisar si merece nombre semántico propio.
|
|
90
|
+
*/
|
|
91
|
+
--kf-color-purple: #4a2f82;
|
|
92
|
+
--kf-color-purple-soft: #efeaf8;
|
|
93
|
+
--kf-color-purple-strong: #33215c;
|
|
94
|
+
|
|
72
95
|
/* ---------- Neutros (iguales en todos los temas) ---------- */
|
|
73
96
|
--kf-color-ink: #171d25;
|
|
74
97
|
--kf-color-surface: #f5f7fa;
|
|
@@ -122,8 +145,19 @@
|
|
|
122
145
|
--kf-font-size-body-sm: 0.875rem;
|
|
123
146
|
--kf-font-size-caption: 0.75rem;
|
|
124
147
|
|
|
148
|
+
/*
|
|
149
|
+
* Tier "hero" — por encima del máximo de la auditoría de arriba (2.125rem).
|
|
150
|
+
* No cubre contenido de página, sino títulos protagonistas de una sola
|
|
151
|
+
* pantalla (ej. bienvenida del home vía `kf-page-header[size=xl|xxl]`).
|
|
152
|
+
* Se agregan acá para que sigan siendo variantes de `kf-text` en vez de
|
|
153
|
+
* un tamaño local duplicado por componente.
|
|
154
|
+
*/
|
|
155
|
+
--kf-font-size-title-xl: 2rem;
|
|
156
|
+
--kf-font-size-title-xxl: 2.5rem;
|
|
157
|
+
|
|
125
158
|
/* ---------- Peso de fuente ---------- */
|
|
126
159
|
--kf-font-weight-title: 700;
|
|
160
|
+
--kf-font-weight-medium: 600;
|
|
127
161
|
--kf-font-weight-body: 400;
|
|
128
162
|
|
|
129
163
|
/* ---------- Espaciado (escala 4/8px) ---------- */
|
|
@@ -146,4 +180,43 @@
|
|
|
146
180
|
--kf-shadow-md: 0 6px 18px rgba(16, 24, 40, 0.08);
|
|
147
181
|
--kf-shadow-lg: 0 18px 48px rgba(16, 24, 40, 0.16);
|
|
148
182
|
--kf-shadow-focus: 0 0 0 3px rgba(0, 102, 204, 0.22);
|
|
183
|
+
/*
|
|
184
|
+
* Variante del anillo de foco para campos `invalid` + enfocados
|
|
185
|
+
* (`kf-input`/`kf-select`/`kf-textarea`). El valor RGB es
|
|
186
|
+
* `--kf-color-error` (#bc4545) escrito a mano porque `rgba()` no puede
|
|
187
|
+
* resolver un color hex vía `var()` — si `--kf-color-error` cambia, este
|
|
188
|
+
* token hay que actualizarlo a mano también.
|
|
189
|
+
*/
|
|
190
|
+
--kf-shadow-focus-error: 0 0 0 3px rgba(188, 69, 69, 0.22);
|
|
191
|
+
|
|
192
|
+
/*
|
|
193
|
+
* ---------- Anchos de controles de formulario ----------
|
|
194
|
+
* Usados por `width` de `kf-select`/`kf-multi-select`. `md` (240px) es
|
|
195
|
+
* el ancho fijo histórico de ambos componentes, ahora expresado como
|
|
196
|
+
* token en vez de un valor suelto en cada CSS — el valor no cambia.
|
|
197
|
+
*/
|
|
198
|
+
--kf-select-width-sm: 160px;
|
|
199
|
+
--kf-select-width-md: 240px;
|
|
200
|
+
--kf-select-width-lg: 320px;
|
|
201
|
+
|
|
202
|
+
/*
|
|
203
|
+
* ---------- Geometría del checkbox ----------
|
|
204
|
+
* Compartida por `kf-checkbox` y el checkbox visual interno de
|
|
205
|
+
* `kf-multi-select` (ver shared/checkbox-mark.css). Vive acá y no en ese
|
|
206
|
+
* archivo porque es un stylesheet de componente (`styleUrl`, encapsulación
|
|
207
|
+
* Emulated por defecto): Angular le agrega el atributo de scoping a
|
|
208
|
+
* cualquier selector que declare, `:root` incluido, y `:root[_ngcontent-xxx]`
|
|
209
|
+
* nunca matchea el `<html>` real — las variables quedaban sin definir y
|
|
210
|
+
* cada `var()` que las consumía caía a su valor inicial (0px/none), sin
|
|
211
|
+
* checkmark ni barra "−" visibles pese a que el resto del box sí se veía.
|
|
212
|
+
* Es geometría fija, no color de marca: no depende de tema, por eso no
|
|
213
|
+
* hay overrides en themes/*.css para estas variables (mismo criterio que
|
|
214
|
+
* los anchos de select de arriba).
|
|
215
|
+
*/
|
|
216
|
+
--kf-checkbox-mark-width: 4px;
|
|
217
|
+
--kf-checkbox-mark-height: 8px;
|
|
218
|
+
--kf-checkbox-mark-border: solid var(--kf-color-white);
|
|
219
|
+
--kf-checkbox-mark-border-width: 0 2px 2px 0;
|
|
220
|
+
--kf-checkbox-dash-width: 8px;
|
|
221
|
+
--kf-checkbox-dash-height: 2px;
|
|
149
222
|
}
|
|
@@ -11,6 +11,13 @@
|
|
|
11
11
|
* hex de este archivo. No requiere ningún otro cambio de código ni de
|
|
12
12
|
* arquitectura — ese es el propósito de tener el theming en un archivo
|
|
13
13
|
* separado por tema.
|
|
14
|
+
*
|
|
15
|
+
* La swatch de la página 6 lista negro → ocre → rojo → blanco; el rojo no
|
|
16
|
+
* tiene token propio acá a propósito — es acento de marca, no un color de
|
|
17
|
+
* acción de `kf-button` (`--kf-color-secondary` cumple ese rol y ya lo hace
|
|
18
|
+
* con el ocre). Mismo criterio aplicado en `divemotor-star.css`, donde SÍ
|
|
19
|
+
* hacía falta corregirlo porque el rojo de esa marca había quedado
|
|
20
|
+
* mapeado al color de acción.
|
|
14
21
|
*/
|
|
15
22
|
|
|
16
23
|
[data-theme='andes-maq'] {
|
|
@@ -11,6 +11,19 @@
|
|
|
11
11
|
* hex de este archivo. No requiere ningún otro cambio de código ni de
|
|
12
12
|
* arquitectura — ese es el propósito de tener el theming en un archivo
|
|
13
13
|
* separado por tema.
|
|
14
|
+
*
|
|
15
|
+
* `--kf-color-secondary` NO es el rojo de la identidad de STAR (la propia
|
|
16
|
+
* swatch de la página 6 lo lista como acento, no como color dominante) —
|
|
17
|
+
* es el mismo rol que cumple en cualquier otro tema: segundo color de
|
|
18
|
+
* acción de `kf-button`. Pintar botones de acción con el rojo de marca los
|
|
19
|
+
* volvía indistinguibles de una alerta real (`--kf-color-error`, el rojo
|
|
20
|
+
* semántico que ya usa el tablero para "en riesgo") — dos rojos con
|
|
21
|
+
* significados distintos compitiendo por la misma atención. El azul
|
|
22
|
+
* elegido (`#0e6ba8`) es un tono propio, distinto del `primary` marino y
|
|
23
|
+
* del secondary de `kaufmann-ar` (`#1a5fd0`), para que los temas de la
|
|
24
|
+
* familia azul sigan siendo distinguibles entre sí — 5.7:1 contra blanco,
|
|
25
|
+
* sobre el mínimo AA de 4.5:1 (mismo criterio que ya oscureció el ocre de
|
|
26
|
+
* `andes-maq` por la misma razón).
|
|
14
27
|
*/
|
|
15
28
|
|
|
16
29
|
[data-theme='divemotor-star'] {
|
|
@@ -19,7 +32,7 @@
|
|
|
19
32
|
--kf-color-primary-active: #072347;
|
|
20
33
|
--kf-color-primary-soft: #e8f0fd;
|
|
21
34
|
|
|
22
|
-
--kf-color-secondary: #
|
|
23
|
-
--kf-color-secondary-hover: #
|
|
24
|
-
--kf-color-secondary-soft: #
|
|
35
|
+
--kf-color-secondary: #0e6ba8;
|
|
36
|
+
--kf-color-secondary-hover: #0b568a;
|
|
37
|
+
--kf-color-secondary-soft: #e5f2fa;
|
|
25
38
|
}
|