@ajuarezso/sui-design-system 0.24.1 → 0.25.1
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/docs/sui-accordion/README.md +85 -11
- package/docs/sui-activity-feed/README.md +65 -11
- package/docs/sui-activity-filter/README.md +54 -5
- package/docs/sui-alert/README.md +54 -0
- package/docs/sui-app-store-badge/README.md +64 -10
- package/docs/sui-avatar/README.md +92 -29
- package/docs/sui-avatar-group/README.md +75 -9
- package/docs/sui-badge/README.md +85 -17
- package/docs/sui-banner/README.md +85 -20
- package/docs/sui-brand-logo/README.md +95 -31
- package/docs/sui-breadcrumb-item/README.md +54 -3
- package/docs/sui-breadcrumbs/README.md +54 -6
- package/docs/sui-button/README.md +76 -12
- package/docs/sui-button-group/README.md +91 -23
- package/docs/sui-button-group-item/README.md +81 -14
- package/docs/sui-card/README.md +105 -18
- package/docs/sui-chart-legend/README.md +63 -10
- package/docs/sui-chart-legend-dot/README.md +59 -10
- package/docs/sui-checkbox/README.md +109 -29
- package/docs/sui-checkbox-card/README.md +70 -14
- package/docs/sui-checkbox-label/README.md +92 -26
- package/docs/sui-circular-progress-bar/README.md +80 -19
- package/docs/sui-color-dot/README.md +72 -12
- package/docs/sui-color-picker/README.md +71 -13
- package/docs/sui-command-menu-footer/README.md +50 -1
- package/docs/sui-command-menu-item/README.md +74 -14
- package/docs/sui-command-menu-search/README.md +58 -3
- package/docs/sui-compact-avatar-group/README.md +73 -13
- package/docs/sui-compact-button/README.md +123 -34
- package/docs/sui-compact-select/README.md +61 -7
- package/docs/sui-compact-select-for-input/README.md +70 -6
- package/docs/sui-content-card/README.md +75 -14
- package/docs/sui-content-divider/README.md +67 -16
- package/docs/sui-content-label/README.md +99 -20
- package/docs/sui-counter-input/README.md +102 -18
- package/docs/sui-date-selector/README.md +69 -11
- package/docs/sui-datepicker/README.md +85 -18
- package/docs/sui-day-cell/README.md +75 -17
- package/docs/sui-day-label/README.md +56 -7
- package/docs/sui-divider/README.md +64 -9
- package/docs/sui-drawer-footer/README.md +63 -2
- package/docs/sui-drawer-header/README.md +69 -12
- package/docs/sui-dropdown-caption/README.md +58 -6
- package/docs/sui-dropdown-item/README.md +75 -9
- package/docs/sui-dropdown-menu/README.md +83 -14
- package/docs/sui-dropdown-search/README.md +60 -4
- package/docs/sui-emoji/README.md +94 -30
- package/docs/sui-empty-state/README.md +71 -7
- package/docs/sui-fancy-button/README.md +74 -14
- package/docs/sui-file-icon/README.md +70 -12
- package/docs/sui-file-upload/README.md +77 -17
- package/docs/sui-file-upload-card/README.md +64 -12
- package/docs/sui-filter/README.md +83 -14
- package/docs/sui-flag/README.md +73 -8
- package/docs/sui-form-hint/README.md +56 -7
- package/docs/sui-form-label/README.md +57 -5
- package/docs/sui-href/README.md +47 -0
- package/docs/sui-icon/README.md +86 -18
- package/docs/sui-image-upload/README.md +90 -22
- package/docs/sui-image-upload-profile/README.md +70 -11
- package/docs/sui-img-retry/README.md +50 -1
- package/docs/sui-inline-input/README.md +67 -9
- package/docs/sui-inline-select/README.md +62 -2
- package/docs/sui-input/README.md +90 -27
- package/docs/sui-integration-switch/README.md +84 -17
- package/docs/sui-kbd/README.md +73 -9
- package/docs/sui-key-icon/README.md +85 -23
- package/docs/sui-link-button/README.md +96 -27
- package/docs/sui-logo/README.md +93 -22
- package/docs/sui-modal/README.md +72 -13
- package/docs/sui-modal-footer/README.md +86 -12
- package/docs/sui-modal-header/README.md +57 -1
- package/docs/sui-modal-sheet/README.md +74 -12
- package/docs/sui-notification/README.md +81 -11
- package/docs/sui-notification-footer/README.md +55 -5
- package/docs/sui-notification-tab-menu/README.md +61 -5
- package/docs/sui-otp-input/README.md +70 -9
- package/docs/sui-page-header/README.md +89 -19
- package/docs/sui-pagination/README.md +73 -13
- package/docs/sui-password-strength/README.md +50 -1
- package/docs/sui-payment-icon/README.md +80 -18
- package/docs/sui-period-range/README.md +70 -11
- package/docs/sui-popover/README.md +81 -15
- package/docs/sui-product-card/README.md +89 -21
- package/docs/sui-progress-bar/README.md +82 -15
- package/docs/sui-progress-bar-label/README.md +79 -18
- package/docs/sui-radio/README.md +84 -7
- package/docs/sui-radio-card/README.md +70 -16
- package/docs/sui-radio-label/README.md +89 -22
- package/docs/sui-rating/README.md +101 -31
- package/docs/sui-rich-editor/README.md +47 -2
- package/docs/sui-segmented-control/README.md +90 -21
- package/docs/sui-select/README.md +80 -11
- package/docs/sui-sidebar/README.md +71 -16
- package/docs/sui-slider/README.md +75 -8
- package/docs/sui-social-button/README.md +71 -11
- package/docs/sui-status-badge/README.md +75 -14
- package/docs/sui-stepper/README.md +75 -18
- package/docs/sui-store-card/README.md +85 -22
- package/docs/sui-switch/README.md +82 -11
- package/docs/sui-switch-card/README.md +80 -16
- package/docs/sui-switch-label/README.md +91 -14
- package/docs/sui-tab-chips/README.md +93 -21
- package/docs/sui-tab-menu-horizontal/README.md +68 -7
- package/docs/sui-tab-menu-vertical/README.md +64 -11
- package/docs/sui-table/README.md +77 -16
- package/docs/sui-tag/README.md +86 -12
- package/docs/sui-tag-input/README.md +77 -13
- package/docs/sui-textarea/README.md +84 -17
- package/docs/sui-time-picker/README.md +96 -33
- package/docs/sui-toast/README.md +81 -20
- package/docs/sui-tooltip/README.md +80 -22
- package/docs/sui-topbar/README.md +64 -10
- package/docs/sui-topbar-button/README.md +61 -7
- package/docs/sui-topbar-item/README.md +68 -7
- package/docs/sui-topbar-user/README.md +61 -5
- package/fesm2022/ajuarezso-sui-design-system.mjs +15 -10
- package/fesm2022/ajuarezso-sui-design-system.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ajuarezso-sui-design-system.d.ts +7 -3
|
@@ -22,8 +22,8 @@ modal, el resultado de una acción («Cuenta bloqueada», «Gracias por califica
|
|
|
22
22
|
|
|
23
23
|
## Qué variante usar
|
|
24
24
|
|
|
25
|
-
> **La guía del DS no tiene página para este componente.**
|
|
26
|
-
>
|
|
25
|
+
> **La guía del DS no tiene página para este componente.** Las reglas marcadas canon están
|
|
26
|
+
> aprobadas (05-10-2026); los tamaños quedaron en canon el 05-10-2026 (P1 b).
|
|
27
27
|
>
|
|
28
28
|
> Uso medido el 03-10-2026 en `master-pedidos/src/app`: **0 usos directos**. Lo usan por dentro
|
|
29
29
|
> `sui-content-label` y `sui-payment-icon`.
|
|
@@ -32,8 +32,8 @@ modal, el resultado de una acción («Cuenta bloqueada», «Gracias por califica
|
|
|
32
32
|
|
|
33
33
|
| valor | cuándo | fuente |
|
|
34
34
|
|---|---|---|
|
|
35
|
-
| `lighter` | El ícono dice un estado: el color del fondo **es** el significado («Cuenta bloqueada» en rojo, «Calificación enviada» en verde). |
|
|
36
|
-
| `stroke` (default) | Ícono neutro al inicio de una fila, sobre fondo blanco. **Siempre con `color="gray"`.** |
|
|
35
|
+
| `lighter` | El ícono dice un estado: el color del fondo **es** el significado («Cuenta bloqueada» en rojo, «Calificación enviada» en verde). | canon (aprobado por el dueño, 05-10-2026, bloque B2) |
|
|
36
|
+
| `stroke` (default) | Ícono neutro al inicio de una fila, sobre fondo blanco. **Siempre con `color="gray"`.** | canon (aprobado por el dueño, 05-10-2026, bloque B2) |
|
|
37
37
|
|
|
38
38
|
### `color` — mismo significado que el badge, salvo `teal`
|
|
39
39
|
|
|
@@ -43,25 +43,25 @@ ni un color para stable.
|
|
|
43
43
|
|
|
44
44
|
| valor | estado de la paleta | cuándo | fuente |
|
|
45
45
|
|---|---|---|---|
|
|
46
|
-
| `gray` (default) | faded | Neutro. El único color para `stroke`. |
|
|
47
|
-
| `blue` | information | Información. |
|
|
48
|
-
| `orange` | warning | Pendiente, pide atención. |
|
|
49
|
-
| `red` | error | Error, bloqueado, rechazado. |
|
|
50
|
-
| `green` | success | Bien, listo, aprobado. |
|
|
51
|
-
| `yellow` | away | En pausa. |
|
|
52
|
-
| `purple` | feature | Novedad. |
|
|
53
|
-
| `pink` | highlighted | Destacado. |
|
|
54
|
-
| `teal` | verified | Verificado. |
|
|
46
|
+
| `gray` (default) | faded | Neutro. El único color para `stroke`. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
47
|
+
| `blue` | information | Información. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
48
|
+
| `orange` | warning | Pendiente, pide atención. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
49
|
+
| `red` | error | Error, bloqueado, rechazado. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
50
|
+
| `green` | success | Bien, listo, aprobado. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
51
|
+
| `yellow` | away | En pausa. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
52
|
+
| `purple` | feature | Novedad. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
53
|
+
| `pink` | highlighted | Destacado. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
54
|
+
| `teal` | verified | Verificado. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
55
55
|
|
|
56
56
|
### `size`
|
|
57
57
|
|
|
58
58
|
| valor | ícono | cuándo | fuente |
|
|
59
59
|
|---|---|---|---|
|
|
60
|
-
| `32` | 20 | Filas densas. |
|
|
61
|
-
| `40` (default) | 20 | Filas de una lista. |
|
|
62
|
-
| `48` | 24 | Cards. |
|
|
63
|
-
| `56` | 28 | Cabecera de un modal. |
|
|
64
|
-
| `64` | 32 | El resultado de un modal: cuenta bloqueada, calificación enviada. |
|
|
60
|
+
| `32` | 20 | Filas densas. | canon (dueño, 05-10-2026, P1 b) |
|
|
61
|
+
| `40` (default) | 20 | Filas de una lista. | canon (dueño, 05-10-2026, P1 b) |
|
|
62
|
+
| `48` | 24 | Cards. | canon (dueño, 05-10-2026, P1 b) |
|
|
63
|
+
| `56` | 28 | Cabecera de un modal. | canon (dueño, 05-10-2026, P1 b) |
|
|
64
|
+
| `64` | 32 | El resultado de un modal: cuenta bloqueada, calificación enviada. | canon (dueño, 05-10-2026, P1 b) |
|
|
65
65
|
|
|
66
66
|
**Usos de hoy que romperían la propuesta: 7 círculos con ícono hechos a mano.** Dos son un
|
|
67
67
|
`sui-key-icon` `lighter` exacto: `components/cuenta-bloqueada/cuenta-bloqueada.html:4` (64 px,
|
|
@@ -74,10 +74,12 @@ Se encontraron buscando reglas `*icon*` con `border-radius: 50%`, fondo y 32–6
|
|
|
74
74
|
|
|
75
75
|
## Tamaño en mobile y en web
|
|
76
76
|
|
|
77
|
-
En mobile se lee
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
el
|
|
77
|
+
En mobile se lee con el celular en la mano, así que va más grande; en web, más chico. Se elige
|
|
78
|
+
con el servicio de breakpoints de la app (`bp`, en `services/breakpoints.service.ts`) también en
|
|
79
|
+
las pantallas que solo existen en el celular (cliente, repartidor): no se toca, así que la tablet
|
|
80
|
+
va con el valor de web, y el celular chico (< 380 px) también (D16, dueño 05-10-2026).
|
|
81
|
+
Es **canon (dueño, 05-10-2026, P1 b)**: un paso más grande en el celular que en computadora, y
|
|
82
|
+
se migra todo ahora, no solo al tocar cada pantalla.
|
|
81
83
|
|
|
82
84
|
| uso | mobile | web |
|
|
83
85
|
|---|---|---|
|
|
@@ -86,9 +88,28 @@ el celular (cliente, repartidor) va directo el valor de mobile. Todo es **propue
|
|
|
86
88
|
| resultado de un modal | `64` | `56` |
|
|
87
89
|
|
|
88
90
|
```html
|
|
89
|
-
<sui-key-icon name="lock-line" styleVariant="lighter" color="red" [size]="bp.
|
|
91
|
+
<sui-key-icon name="lock-line" styleVariant="lighter" color="red" [size]="bp.celular() ? 64 : 56" />
|
|
90
92
|
```
|
|
91
93
|
|
|
94
|
+
### Por dispositivo (D16)
|
|
95
|
+
|
|
96
|
+
La key-icon no se toca: sube un paso **solo en el celular de 380 px o más**. Fuente: D16, dueño
|
|
97
|
+
05-10-2026 (P1 b).
|
|
98
|
+
|
|
99
|
+
| dispositivo | size | nota |
|
|
100
|
+
|---|---|---|
|
|
101
|
+
| celular chico (< 380) | valor «web» (`32` fila · `40` card · `56` modal) | no se toca: no sube aunque sea un celular |
|
|
102
|
+
| celular (380–767) | valor «mobile» (`40` fila · `48` card · `64` modal) | un paso más que en la computadora |
|
|
103
|
+
| tablet táctil (`pointer: coarse`) | valor «web» (`32` · `40` · `56`) | no se toca: el puntero no cambia nada |
|
|
104
|
+
| computadora (`pointer: fine`) | valor «web» (`32` · `40` · `56`) | |
|
|
105
|
+
|
|
106
|
+
En el ultrawide, igual que en la computadora: el espacio extra va a más columnas, no a círculos
|
|
107
|
+
más grandes.
|
|
108
|
+
|
|
109
|
+
En master-pedidos no hay helper: `[size]="bp.celular() ? 40 : 32"` (fila),
|
|
110
|
+
`[size]="bp.celular() ? 48 : 40"` (card) o `[size]="bp.celular() ? 64 : 56"` (resultado de un
|
|
111
|
+
modal). No uses `bp.isMobile()`: incluye el celular chico, que va con el valor de web.
|
|
112
|
+
|
|
92
113
|
## «No usar»: por qué no hoy y cuándo sí
|
|
93
114
|
|
|
94
115
|
| qué | por qué no hoy | cuándo sí, en un flujo nuevo |
|
|
@@ -118,6 +139,47 @@ Outputs: ninguno.
|
|
|
118
139
|
- **El default es `stroke` `gray`**: si quieres el círculo de color, pide `lighter` explícito.
|
|
119
140
|
- `name` va sin `ri-`, como en `sui-icon`.
|
|
120
141
|
|
|
142
|
+
## Bien y mal
|
|
143
|
+
|
|
144
|
+
Resultado de un modal: cuenta bloqueada
|
|
145
|
+
|
|
146
|
+
```html
|
|
147
|
+
<!-- ❌ mal: círculo hecho a mano, 64 fijo y un ícono de 30 fuera de la escala (components/cuenta-bloqueada/cuenta-bloqueada.html:4) -->
|
|
148
|
+
<span class="cb__icono"><sui-icon name="lock-line" [size]="30" /></span>
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
```html
|
|
152
|
+
<!-- ✅ bien -->
|
|
153
|
+
<sui-key-icon name="lock-line" styleVariant="lighter" color="red" [size]="bp.celular() ? 64 : 56" />
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Resultado de un modal: calificación enviada
|
|
157
|
+
|
|
158
|
+
```html
|
|
159
|
+
<!-- ❌ mal: el mismo círculo a mano, con los colores del estado en el SCSS (components/driver-rate-modal/driver-rate-modal.html:17) -->
|
|
160
|
+
<div class="drm__exito-icono" [class.drm__exito-icono--tibio]="!fueBueno()" aria-hidden="true">
|
|
161
|
+
<sui-icon [name]="fueBueno() ? 'check-line' : 'heart-3-line'" [size]="32" />
|
|
162
|
+
</div>
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
```html
|
|
166
|
+
<!-- ✅ bien -->
|
|
167
|
+
<sui-key-icon [name]="fueBueno() ? 'check-line' : 'heart-3-line'" styleVariant="lighter"
|
|
168
|
+
[color]="fueBueno() ? 'green' : 'blue'" [size]="bp.celular() ? 64 : 56" />
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Tamaño por dispositivo
|
|
172
|
+
|
|
173
|
+
```html
|
|
174
|
+
<!-- ❌ mal: isMobile incluye el celular chico, que va con el valor de web (D16) -->
|
|
175
|
+
<sui-key-icon name="store-2-line" [size]="bp.isMobile() ? 40 : 32" />
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
```html
|
|
179
|
+
<!-- ✅ bien -->
|
|
180
|
+
<sui-key-icon name="store-2-line" [size]="bp.celular() ? 40 : 32" />
|
|
181
|
+
```
|
|
182
|
+
|
|
121
183
|
## Ejemplo
|
|
122
184
|
|
|
123
185
|
```html
|
|
@@ -60,11 +60,11 @@ Es el reemplazo del `sui-button` `ghost` `primary`.
|
|
|
60
60
|
**Usos de hoy que rompen la regla:**
|
|
61
61
|
|
|
62
62
|
- **4 `error` que abren una destructiva grande → `sui-button` `stroke` `error`:**
|
|
63
|
-
`pages/super-admin/master-orders/master-orders.html:
|
|
63
|
+
`pages/super-admin/master-orders/master-orders.html:467` («Cancelar pedido»),
|
|
64
64
|
`pages/orders/orders.html:233` («Rechazar pedido»), `pages/central/central-gastos/central-gastos.html:101`
|
|
65
|
-
(«Anular gasto») y `pages/driver/driver-order-detail/driver-order-detail.html:
|
|
65
|
+
(«Anular gasto») y `pages/driver/driver-order-detail/driver-order-detail.html:774` («Cancelar» el
|
|
66
66
|
pedido, en `large`; nuevo, medido el 04-10-2026).
|
|
67
|
-
- A discutir: `pages/super-admin/master-orders/master-orders.html:
|
|
67
|
+
- A discutir: `pages/super-admin/master-orders/master-orders.html:472` («Liberar» en `gray`): es una
|
|
68
68
|
acción de operación, no una salida de baja jerarquía.
|
|
69
69
|
|
|
70
70
|
### `size`
|
|
@@ -73,7 +73,7 @@ Es el reemplazo del `sui-button` `ghost` `primary`.
|
|
|
73
73
|
|---|---|---|
|
|
74
74
|
| `large` (24 px, texto 16, ícono 20) | Mobile, donde se lee y se toca con el dedo: el link suelto de una pantalla de teléfono. | propuesta: el tamaño es extensión SUI aprobada (03-10-2026); el «cuándo» falta aprobarlo |
|
|
75
75
|
| `medium` (20 px, default) | Lo normal: cabeceras de sección, párrafos, acciones sueltas. | default según la guía del DS; el «cuándo» es canon (aprobado por el dueño, 03-10-2026) |
|
|
76
|
-
| `small` (16 px) | Junto a un dato en una fila
|
|
76
|
+
| `small` (16 px) | No usar: es chico. Junto a un dato en una fila («Cambiar», «Mi billetera») va `medium` en web. | canon (dueño, 05-10-2026, D16), reemplaza la regla del 03-10-2026 |
|
|
77
77
|
|
|
78
78
|
### `underline`
|
|
79
79
|
|
|
@@ -87,8 +87,8 @@ Es el reemplazo del `sui-button` `ghost` `primary`.
|
|
|
87
87
|
| prop | cuándo | fuente |
|
|
88
88
|
|---|---|---|
|
|
89
89
|
| `rightIcon` (`arrow-right-s-line`) | Cuando el link lleva a otra pantalla: «Ver la carta», «Mi billetera». | canon (aprobado por el dueño, 03-10-2026) |
|
|
90
|
-
| `leftIcon` | Cuando el ícono dice la acción: descargar, editar, agregar, ver. «Descargar la app», «Agregar nota para el conductor». |
|
|
91
|
-
| los dos a la vez | No: con dos íconos el link deja de leerse como texto. |
|
|
90
|
+
| `leftIcon` | Cuando el ícono dice la acción: descargar, editar, agregar, ver. «Descargar la app», «Agregar nota para el conductor». | canon (aprobado por el dueño, 05-10-2026, bloque B9) |
|
|
91
|
+
| los dos a la vez | No: con dos íconos el link deja de leerse como texto. | canon (aprobado por el dueño, 05-10-2026, bloque B9) |
|
|
92
92
|
|
|
93
93
|
Los íconos son nombres RemixIcon sin el prefijo `ri-`. Miden 20 px en `large` y `medium`, y 16 px en `small`.
|
|
94
94
|
|
|
@@ -96,27 +96,30 @@ Los íconos son nombres RemixIcon sin el prefijo `ri-`. Miden 20 px en `large` y
|
|
|
96
96
|
|
|
97
97
|
| disabled | cuándo | fuente |
|
|
98
98
|
|---|---|---|
|
|
99
|
-
| `true` | La acción existe pero ahora no se puede: mientras se guarda, mientras se procesa otra acción. Mejor que esconderla si la persona la espera en ese lugar. | cómo se ve: según la guía del DS · cuándo:
|
|
99
|
+
| `true` | La acción existe pero ahora no se puede: mientras se guarda, mientras se procesa otra acción. Mejor que esconderla si la persona la espera en ese lugar. | cómo se ve: según la guía del DS · cuándo: canon (aprobado por el dueño, 05-10-2026, bloque B8) |
|
|
100
100
|
|
|
101
|
-
Ejemplos: `components/add-product-modal/add-product-modal.html:
|
|
101
|
+
Ejemplos: `components/add-product-modal/add-product-modal.html:341` («Vista previa» mientras guarda),
|
|
102
102
|
`pages/orders/orders.html:233`.
|
|
103
103
|
|
|
104
104
|
### `href`, `target`, `rel`, `type`, `ariaLabel`
|
|
105
105
|
|
|
106
106
|
| prop | cuándo | fuente |
|
|
107
107
|
|---|---|---|
|
|
108
|
-
| `href` | Navegar, sin otra acción: el componente pinta un `<a>` real. Las rutas internas (`/cliente/…`) navegan con el Router, sin recargar. |
|
|
109
|
-
| `target="_blank"` | Solo para destinos externos: la descarga, un documento, WhatsApp. **Pon también `rel="noopener noreferrer"`**: aquí el default de `rel` es `null`. |
|
|
110
|
-
| `type="submit"` | Solo dentro de un `<form>`. El resto, `button` (default). |
|
|
111
|
-
| `ariaLabel` | Cuando el texto visible no basta fuera de contexto: «Descargar la app» → «Descargar la app de Master Pedidos». |
|
|
108
|
+
| `href` | Navegar, sin otra acción: el componente pinta un `<a>` real. Las rutas internas (`/cliente/…`) navegan con el Router, sin recargar. | canon (aprobado por el dueño, 05-10-2026, bloque B10) |
|
|
109
|
+
| `target="_blank"` | Solo para destinos externos: la descarga, un documento, WhatsApp. **Pon también `rel="noopener noreferrer"`**: aquí el default de `rel` es `null`. | canon (aprobado por el dueño, 05-10-2026, bloque B10) |
|
|
110
|
+
| `type="submit"` | Solo dentro de un `<form>`. El resto, `button` (default). | canon (aprobado por el dueño, 05-10-2026, bloque B10) (mismo criterio que `sui-button`) |
|
|
111
|
+
| `ariaLabel` | Cuando el texto visible no basta fuera de contexto: «Descargar la app» → «Descargar la app de Master Pedidos». | canon (aprobado por el dueño, 05-10-2026, bloque B10) |
|
|
112
112
|
|
|
113
113
|
## Tamaño en mobile y en web
|
|
114
114
|
|
|
115
|
-
En mobile se toca con el dedo: el área táctil tiene que medir **44 px o más**. En
|
|
116
|
-
|
|
117
|
-
(`
|
|
118
|
-
|
|
119
|
-
|
|
115
|
+
En mobile se toca con el dedo: el área táctil tiene que medir **44 px o más**. En el celular y en
|
|
116
|
+
la tablet (`pointer: coarse`) el size está **pendiente (P8)**, porque ningún size del link llega a
|
|
117
|
+
44; en la computadora (`pointer: fine`), `medium`; en el celular chico (< 380 px), `medium`.
|
|
118
|
+
Nada en `small` ni `xsmall` (canon, dueño, 05-10-2026, D16; reemplaza al «tamaño por plataforma» del
|
|
119
|
+
03-10-2026, que bajaba la web a `small`). Hoy la app lo resuelve con `BreakpointsService`
|
|
120
|
+
(`src/app/services/breakpoints.service.ts`, mobile = hasta 767 px): `[size]="bp.isMobile() ? 'large' : 'medium'"`,
|
|
121
|
+
que es la propuesta sin aprobar de P8 (ver «Por dispositivo (D16)» abajo). Medido el 04-10-2026 en `master-pedidos`: 166 `[size]`
|
|
122
|
+
con `bp` (142 `large`/`medium`, 22 `large`/`small`, 2 `medium`/`xsmall`); los 24 que bajan de `medium` se migran.
|
|
120
123
|
|
|
121
124
|
| size | alto | texto | ícono |
|
|
122
125
|
|---|---|---|---|
|
|
@@ -130,23 +133,42 @@ con `bp` (142 `large`/`medium`, 22 `large`/`small`, 2 `medium`/`xsmall`). Regla
|
|
|
130
133
|
| uso | mobile | web | fuente |
|
|
131
134
|
|---|---|---|---|
|
|
132
135
|
| link suelto (cabecera de sección, «Omitir», «Ver todas») | `large` (24) | `medium` (20) | web: canon (aprobado por el dueño, 03-10-2026) · mobile `large`: propuesta: el tamaño es extensión SUI aprobada (03-10-2026); el «cuándo» falta aprobarlo (antes era `medium`) |
|
|
133
|
-
| junto a un dato en una fila («Cambiar», «Mi billetera») | `medium` (20) | `
|
|
134
|
-
| dentro de un párrafo | el del texto que lo rodea | el del texto que lo rodea |
|
|
136
|
+
| junto a un dato en una fila («Cambiar», «Mi billetera») | `medium` (20) | `medium` (20) | web: canon (dueño, 05-10-2026, D16), antes `small` · mobile `medium`: canon (aprobado por el dueño, 03-10-2026); D16 lo llevaría a `large`, pero el tamaño del link en el teléfono espera P8 |
|
|
137
|
+
| dentro de un párrafo | el del texto que lo rodea | el del texto que lo rodea | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
135
138
|
|
|
136
139
|
```html
|
|
137
140
|
<sui-link-button variant="primary" [size]="bp.isMobile() ? 'large' : 'medium'" rightIcon="arrow-right-s-line">Ver todas</sui-link-button>
|
|
138
|
-
<sui-link-button variant="gray"
|
|
141
|
+
<sui-link-button variant="gray" size="medium" rightIcon="arrow-right-s-line">Mi billetera</sui-link-button>
|
|
139
142
|
```
|
|
140
143
|
|
|
141
144
|
**Ningún tamaño llega a 44 px**: el link mide 16–24 de alto y no tiene padding. En mobile el área
|
|
142
145
|
táctil la pone el contenedor: la fila o el bloque donde vive tiene que medir 44 px o más de alto, o
|
|
143
|
-
dejar aire alrededor del link. `small` (16) no va en
|
|
146
|
+
dejar aire alrededor del link. `small` (16) no va en ningún lado (D16, 05-10-2026). Medido el 04-10-2026: los 4 de
|
|
144
147
|
repartidor y cliente ya usan `[size]="bp.isMobile() ? 'medium' : 'small'"`
|
|
145
148
|
(`pages/driver/driver-profile/driver-profile.html:258` y `:264`,
|
|
146
|
-
`pages/driver/driver-dashboard/driver-dashboard.html:
|
|
149
|
+
`pages/driver/driver-dashboard/driver-dashboard.html:1210`,
|
|
147
150
|
`pages/customer/order-history/order-history.html:412`). Quedan 2 `small` fijos, los dos del panel
|
|
148
|
-
de la empresa: `pages/mi-negocio/mi-negocio.html:
|
|
149
|
-
`components/add-product-modal/add-product-modal.html:
|
|
151
|
+
de la empresa: `pages/mi-negocio/mi-negocio.html:473` y
|
|
152
|
+
`components/add-product-modal/add-product-modal.html:341`.
|
|
153
|
+
|
|
154
|
+
### Por dispositivo (D16)
|
|
155
|
+
|
|
156
|
+
Fila `link-button` de la tabla D16 (dueño, 05-10-2026). Se toca, pero ningún size llega a 44, así
|
|
157
|
+
que el tamaño en las pantallas táctiles espera P8.
|
|
158
|
+
|
|
159
|
+
| dispositivo | size | nota |
|
|
160
|
+
|---|---|---|
|
|
161
|
+
| celular chico (< 380) | `medium` | |
|
|
162
|
+
| celular (380–767) | pendiente (P8) | a) el contenedor (fila o card) llega a 44 y el link va `medium` (recomendada) · b) `large` (24) por legibilidad |
|
|
163
|
+
| tablet táctil (`pointer: coarse`) | pendiente (P8) | la misma pregunta: también se toca con el dedo |
|
|
164
|
+
| computadora (`pointer: fine`) | `medium` | también en filas y cabeceras; `small` no se usa |
|
|
165
|
+
|
|
166
|
+
En el ultrawide, igual que en la computadora. Dentro de un párrafo, el size del texto que lo rodea.
|
|
167
|
+
|
|
168
|
+
En master-pedidos no hay helper hasta que se decida P8: `size="medium"` en la computadora y en el
|
|
169
|
+
celular chico. No uses `bp.sizeControl()` (sería elegir la b) ni bajes a `small`. El
|
|
170
|
+
`[size]="bp.isMobile() ? 'large' : 'medium'"` que hoy lleva el link suelto es la propuesta sin
|
|
171
|
+
aprobar, y además deja el celular chico en `large`.
|
|
150
172
|
|
|
151
173
|
## «No usar»: por qué no hoy y cuándo sí
|
|
152
174
|
|
|
@@ -183,9 +205,10 @@ Slots: `<ng-content>` (el texto).
|
|
|
183
205
|
## Trampas
|
|
184
206
|
|
|
185
207
|
- **El output es `(clicked)`**, no `(click)` como en `sui-button`. `(click)` sobre el host igual
|
|
186
|
-
funciona porque el clic burbujea, pero hoy hay
|
|
208
|
+
funciona porque el clic burbujea, pero hoy hay 8 usos así (`components/subscription-banner/subscription-banner.html:10`,
|
|
187
209
|
`pages/super-admin/master-approvals/master-approvals.html:89`, `pages/central/central-gastos/central-gastos.html:101`,
|
|
188
|
-
`pages/account-suspended/account-suspended.html:66` y `:70`, `pages/customer/viaje/viaje.html:
|
|
210
|
+
`pages/account-suspended/account-suspended.html:66` y `:70`, `pages/customer/viaje/viaje.html:211`,
|
|
211
|
+
`pages/super-admin/master-solicitudes/master-solicitudes.html:47` y `:50`; medido el 06-10-2026).
|
|
189
212
|
Usa `(clicked)`, que ya respeta `disabled`.
|
|
190
213
|
- **`rel` arranca en `null`**, a diferencia de compact, fancy y social, que traen
|
|
191
214
|
`'noopener noreferrer'`. Con `target="_blank"` hay que ponerlo a mano.
|
|
@@ -201,6 +224,52 @@ Slots: `<ng-content>` (el texto).
|
|
|
201
224
|
toast local). No es la del paquete: un arreglo en el DS no le llega.
|
|
202
225
|
- Ya trae el arreglo de iOS para el `:active` pegado: no lo agregues.
|
|
203
226
|
|
|
227
|
+
## Bien y mal
|
|
228
|
+
|
|
229
|
+
Cancelar un pedido
|
|
230
|
+
|
|
231
|
+
```html
|
|
232
|
+
<!-- ❌ mal: error en link es para quitar algo menor; cancelar el pedido es una destructiva grande (pages/driver/driver-order-detail/driver-order-detail.html:774) -->
|
|
233
|
+
<sui-link-button variant="error" size="large" (clicked)="showCancelModal.set(true)">
|
|
234
|
+
Cancelar {{ comoSeLlama }}
|
|
235
|
+
</sui-link-button>
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
```html
|
|
239
|
+
<!-- ✅ bien -->
|
|
240
|
+
<sui-button variant="stroke" color="error" [size]="bp.sizeControl()" (click)="showCancelModal.set(true)">
|
|
241
|
+
Cancelar {{ comoSeLlama }}
|
|
242
|
+
</sui-button>
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
Link al pie de una sección del panel
|
|
246
|
+
|
|
247
|
+
```html
|
|
248
|
+
<!-- ❌ mal: small no se usa en ningún lado (D16); igual order-history.html:412 con 'medium' : 'small' (pages/mi-negocio/mi-negocio.html:473) -->
|
|
249
|
+
<sui-link-button variant="gray" size="small" rightIcon="arrow-right-s-line"
|
|
250
|
+
(clicked)="goToProducts()">Ir a Productos</sui-link-button>
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
```html
|
|
254
|
+
<!-- ✅ bien -->
|
|
255
|
+
<sui-link-button variant="gray" size="medium" rightIcon="arrow-right-s-line"
|
|
256
|
+
(clicked)="goToProducts()">Ir a Productos</sui-link-button>
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
Acción que se deshabilita mientras procesa
|
|
260
|
+
|
|
261
|
+
```html
|
|
262
|
+
<!-- ❌ mal: (click) escucha el host, no el output; (clicked) es el que respeta disabled (pages/super-admin/master-solicitudes/master-solicitudes.html:47) -->
|
|
263
|
+
<sui-link-button variant="gray" size="medium" [disabled]="ocupada() === f.id"
|
|
264
|
+
(click)="cambiar(f, 'nueva')">Reabrir</sui-link-button>
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
```html
|
|
268
|
+
<!-- ✅ bien -->
|
|
269
|
+
<sui-link-button variant="gray" size="medium" [disabled]="ocupada() === f.id"
|
|
270
|
+
(clicked)="cambiar(f, 'nueva')">Reabrir</sui-link-button>
|
|
271
|
+
```
|
|
272
|
+
|
|
204
273
|
## Ejemplo
|
|
205
274
|
|
|
206
275
|
```html
|
|
@@ -208,7 +277,7 @@ Slots: `<ng-content>` (el texto).
|
|
|
208
277
|
<sui-link-button variant="primary" (clicked)="verTodas()">Ver todas</sui-link-button>
|
|
209
278
|
|
|
210
279
|
<!-- Junto a un dato, lleva a otra pantalla -->
|
|
211
|
-
<sui-link-button variant="gray"
|
|
280
|
+
<sui-link-button variant="gray" rightIcon="arrow-right-s-line" (clicked)="irABilletera()">
|
|
212
281
|
Mi billetera
|
|
213
282
|
</sui-link-button>
|
|
214
283
|
|
package/docs/sui-logo/README.md
CHANGED
|
@@ -27,7 +27,8 @@ uno solo.
|
|
|
27
27
|
## Qué variante usar
|
|
28
28
|
|
|
29
29
|
> **La guía del DS no tiene este componente**: es propio de SUI, porque es la marca de la app.
|
|
30
|
-
> Todo lo de abajo es **
|
|
30
|
+
> Todo lo de abajo es **canon** (aprobado por el dueño el 05-10-2026, o la decisión que cita cada fila); los ejemplos salen
|
|
31
|
+
> de cómo se usa hoy.
|
|
31
32
|
>
|
|
32
33
|
> Uso medido el 03-10-2026 en `master-pedidos/src/app`: 10 logos en 8 archivos, sin contar
|
|
33
34
|
> prototipos ni vitrinas. 4 `horizontal`, 3 `stacked`, 3 `markOnly`; 7 con `[height]` y 3 con `size`.
|
|
@@ -36,9 +37,9 @@ uno solo.
|
|
|
36
37
|
|
|
37
38
|
| valor | cuándo | ejemplo real de la app | fuente |
|
|
38
39
|
|---|---|---|---|
|
|
39
|
-
| `horizontal` (default) | Barras y cabeceras: la M a la izquierda y la palabra en dos líneas. | `layouts/public/public-layout.html:4` · `pages/public/pedido-en-vivo/pedido-en-vivo.html:72` · `pages/role-selector/role-selector.html:10` |
|
|
40
|
-
| `stacked` | Pantallas de marca centradas: la M arriba y la palabra abajo. | `pages/empresa/about/about.html:12` · `components/ota-update/ota-update.html:118` |
|
|
41
|
-
| `[markOnly]="true"` | Donde la palabra no entra o ya está escrita al lado: nav mobile, login. | `layouts/public/public-layout.html:6` · `pages/auth/login/login.html:3` |
|
|
40
|
+
| `horizontal` (default) | Barras y cabeceras: la M a la izquierda y la palabra en dos líneas. | `layouts/public/public-layout.html:4` · `pages/public/pedido-en-vivo/pedido-en-vivo.html:72` · `pages/role-selector/role-selector.html:10` | canon (aprobado por el dueño, 05-10-2026, bloque B2) |
|
|
41
|
+
| `stacked` | Pantallas de marca centradas: la M arriba y la palabra abajo. | `pages/empresa/about/about.html:12` · `components/ota-update/ota-update.html:118` | canon (aprobado por el dueño, 05-10-2026, bloque B2) |
|
|
42
|
+
| `[markOnly]="true"` | Donde la palabra no entra o ya está escrita al lado: nav mobile, login. | `layouts/public/public-layout.html:6` · `pages/auth/login/login.html:3` | canon (aprobado por el dueño, 05-10-2026, bloque B2) |
|
|
42
43
|
|
|
43
44
|
No existe la versión de una sola línea («Master Pedidos» en un renglón): es otro dibujo.
|
|
44
45
|
|
|
@@ -48,14 +49,14 @@ No existe la versión de una sola línea («Master Pedidos» en un renglón): es
|
|
|
48
49
|
|
|
49
50
|
| valor | alto | cuándo | fuente |
|
|
50
51
|
|---|---|---|---|
|
|
51
|
-
| `xs` / `sm` | 16 / 20 | No usar hoy: la palabra no se lee (con `markOnly` sí sirve). |
|
|
52
|
-
| `md` (default) | 24 | Barra de una página pública. |
|
|
53
|
-
| `lg` | 32 | Nav pública, login. |
|
|
54
|
-
| `xl` | 40 | Pantalla de actualización. |
|
|
55
|
-
| `2xl` | 48 | Selector de rol. |
|
|
56
|
-
| `height` | libre | **Solo para más de 48 px**: el apilado de 120 en «Acerca de» y en la actualización. |
|
|
57
|
-
|
|
58
|
-
**Usos de hoy que romperían la
|
|
52
|
+
| `xs` / `sm` | 16 / 20 | No usar hoy: la palabra no se lee (con `markOnly` sí sirve). | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
53
|
+
| `md` (default) | 24 | Barra de una página pública. | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
54
|
+
| `lg` | 32 | Nav pública, login. | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
55
|
+
| `xl` | 40 | Pantalla de actualización. | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
56
|
+
| `2xl` | 48 | Selector de rol. | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
57
|
+
| `height` | libre | **Solo para más de 48 px**: el apilado de 120 en «Acerca de» y en la actualización. | canon (aprobado por el dueño, 05-10-2026, bloque B1) |
|
|
58
|
+
|
|
59
|
+
**Usos de hoy que romperían la regla: 4 `[height]` que van a la escala.**
|
|
59
60
|
`components/ota-update/ota-update.html:17` (`40` → `size="xl"`),
|
|
60
61
|
`pages/public/pedido-en-vivo/pedido-en-vivo.html:72` (`22` → `md`),
|
|
61
62
|
`layouts/public/public-layout.html:6` (`28` → `lg`), `pages/customer/about/about.html:19` (`44` → `xl` o `2xl`).
|
|
@@ -64,10 +65,10 @@ No existe la versión de una sola línea («Master Pedidos» en un renglón): es
|
|
|
64
65
|
|
|
65
66
|
| combinación | cuándo | fuente |
|
|
66
67
|
|---|---|---|
|
|
67
|
-
| de marca (default): M `--sui-primary-base` + palabra `--sui-text-strong-950` | Sobre fondo claro. **No hace falta pasar los colores**: ya son el default. |
|
|
68
|
-
| monocromo: todo `--sui-text-strong-950` | Login y nav pública, donde el naranja ya está en el botón principal. |
|
|
69
|
-
| blanco: todo `--sui-static-white` | Sobre naranja o sobre foto. `static-white` no cambia con el tema. |
|
|
70
|
-
| cualquier otro color | No usar. |
|
|
68
|
+
| de marca (default): M `--sui-primary-base` + palabra `--sui-text-strong-950` | Sobre fondo claro. **No hace falta pasar los colores**: ya son el default. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
69
|
+
| monocromo: todo `--sui-text-strong-950` | Login y nav pública, donde el naranja ya está en el botón principal. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
70
|
+
| blanco: todo `--sui-static-white` | Sobre naranja o sobre foto. `static-white` no cambia con el tema. | canon (decisión del dueño, regla de tres blancos del modo oscuro: `static-white` sobre fondo fijo) |
|
|
71
|
+
| cualquier otro color | No usar. | canon (aprobado por el dueño, 05-10-2026, bloque B3) |
|
|
71
72
|
|
|
72
73
|
**Usos de hoy redundantes: 6** pasan a mano los colores que ya son el default (no rompen nada,
|
|
73
74
|
sobran): `components/ota-update/ota-update.html:17`, `pages/role-selector/role-selector.html:10`,
|
|
@@ -80,15 +81,18 @@ sobran): `components/ota-update/ota-update.html:17`, `pages/role-selector/role-s
|
|
|
80
81
|
|
|
81
82
|
| input | cuándo | fuente |
|
|
82
83
|
|---|---|---|
|
|
83
|
-
| `[decorative]="true"` | Cuando al lado ya está escrito «Master Pedidos» (el título de «Acerca de»): así el lector de pantalla no lo dice dos veces. |
|
|
84
|
-
| `ariaLabel` | No tocar: ya dice «Master Pedidos». |
|
|
84
|
+
| `[decorative]="true"` | Cuando al lado ya está escrito «Master Pedidos» (el título de «Acerca de»): así el lector de pantalla no lo dice dos veces. | canon (aprobado por el dueño, 05-10-2026, bloque B5) |
|
|
85
|
+
| `ariaLabel` | No tocar: ya dice «Master Pedidos». | canon (aprobado por el dueño, 05-10-2026, bloque B5) |
|
|
85
86
|
|
|
86
87
|
## Tamaño en mobile y en web
|
|
87
88
|
|
|
88
|
-
En
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
89
|
+
En el celular va un paso más grande que en la computadora: el logo no se toca, así que sigue la
|
|
90
|
+
regla de «lo que no se toca» (P1 b). Se elige siempre con el servicio de breakpoints de la app
|
|
91
|
+
(`bp`, en `services/breakpoints.service.ts`), **también en las pantallas que solo existen en el
|
|
92
|
+
celular** (cliente, repartidor): con D16 el celular chico (< 380) lleva el valor de web en la
|
|
93
|
+
pantalla de entrada, así que «mobile» ya no es un valor fijo para ellas (ver «Por dispositivo»).
|
|
94
|
+
En la tabla, «mobile» es el celular de 380 a 767 px y «web» la computadora. Es **canon (aprobado
|
|
95
|
+
por el dueño, 05-10-2026, bloque B1 y D16)**.
|
|
92
96
|
|
|
93
97
|
| uso | mobile | web |
|
|
94
98
|
|---|---|---|
|
|
@@ -103,6 +107,34 @@ el celular (cliente, repartidor) va directo el valor de mobile. Todo es **propue
|
|
|
103
107
|
En la barra no cambia el alto, cambia la forma: en mobile no entra la palabra. Es lo que ya hace
|
|
104
108
|
`layouts/public/public-layout.html:4`–`:6`, con dos logos y CSS.
|
|
105
109
|
|
|
110
|
+
### Por dispositivo (D16)
|
|
111
|
+
|
|
112
|
+
El logo **no se toca**, así que va como «lo que no se toca» de D16 (la misma fila que
|
|
113
|
+
`brand-logo`): sube un paso solo en el celular de 380 px o más; el celular chico, la tablet y la
|
|
114
|
+
computadora llevan el valor de web (con el matiz de la tablet de 600 a 767, abajo). En la
|
|
115
|
+
práctica solo cambia la pantalla de entrada: la barra cambia de forma por ancho (no de tamaño) y
|
|
116
|
+
la pantalla de marca va a 120 en todos.
|
|
117
|
+
|
|
118
|
+
La app distingue el celular **por ancho, no por puntero**: `bp.celular()` y `bp.isMobile()` son
|
|
119
|
+
`max-width: 767px`. Por eso la tablet táctil de 600 a 767 px (una Android chica en vertical) cae
|
|
120
|
+
del lado del celular, igual que con `bp.sizeBadge()`; la tablet «de web» empieza en 768.
|
|
121
|
+
|
|
122
|
+
| dispositivo | size | nota |
|
|
123
|
+
|---|---|---|
|
|
124
|
+
| celular chico (< 380) | entrada `xl` · barra `[markOnly]="true"` `lg` | valor de web en el tamaño; la palabra tampoco entra en la barra |
|
|
125
|
+
| celular (380–767) | entrada `2xl` · barra `[markOnly]="true"` `lg` | sube un paso (P1 b) |
|
|
126
|
+
| tablet táctil, 600–767 | entrada `2xl` · barra `[markOnly]="true"` `lg` | se lee como celular: la app separa por ancho, no por puntero |
|
|
127
|
+
| tablet táctil, 768–1024 | entrada `xl` · barra `horizontal` `lg` | no se toca: valor de web; desde 768 la palabra ya entra |
|
|
128
|
+
| computadora | entrada `xl` · barra `horizontal` `lg` | |
|
|
129
|
+
|
|
130
|
+
Ultrawide: igual que la computadora; el espacio extra no agranda el logo. La pantalla de marca
|
|
131
|
+
(«Acerca de», actualización) es `stacked` `[height]="120"` en los cinco. Fuente: D16, dueño
|
|
132
|
+
05-10-2026.
|
|
133
|
+
|
|
134
|
+
En master-pedidos: no hay helper. Entrada `[size]="bp.celular() ? '2xl' : 'xl'"`; barra
|
|
135
|
+
`size="lg" [markOnly]="bp.isMobile()"`. Se usa `bp.celular()` y no `bp.tactil()`: el logo no
|
|
136
|
+
se toca, la tablet desde 768 no sube.
|
|
137
|
+
|
|
106
138
|
## «No usar»: por qué no hoy y cuándo sí
|
|
107
139
|
|
|
108
140
|
| qué | por qué no hoy | cuándo sí, en un flujo nuevo |
|
|
@@ -138,6 +170,45 @@ Outputs: ninguno.
|
|
|
138
170
|
- **No trae padding**: el `viewBox` es justo el dibujo. El aire lo pone quien lo usa.
|
|
139
171
|
- **No es `sui-brand-logo`**: ese sirve logos de otras marcas como imágenes que no se pueden teñir.
|
|
140
172
|
|
|
173
|
+
## Bien y mal
|
|
174
|
+
|
|
175
|
+
Un tamaño de la escala, no un alto a mano
|
|
176
|
+
|
|
177
|
+
```html
|
|
178
|
+
<!-- ❌ mal: alto libre por debajo de 48 (components/ota-update/ota-update.html:17) -->
|
|
179
|
+
<sui-logo orientation="horizontal" [height]="40" />
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
```html
|
|
183
|
+
<!-- ✅ bien -->
|
|
184
|
+
<sui-logo size="xl" />
|
|
185
|
+
```
|
|
186
|
+
|
|
187
|
+
El logo en el pie de la landing
|
|
188
|
+
|
|
189
|
+
```html
|
|
190
|
+
<!-- ❌ mal: PNG suelto, no sigue al dibujo ni al tema (components/landing-footer/landing-footer.html:7) -->
|
|
191
|
+
<img src="assets/landing/logo-blanco.png" alt="Master Pedidos" width="150" height="53" />
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
```html
|
|
195
|
+
<!-- ✅ bien -->
|
|
196
|
+
<sui-logo size="2xl" markColor="var(--sui-static-white)" textColor="var(--sui-static-white)" />
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
Selector de rol en el celular y en la computadora
|
|
200
|
+
|
|
201
|
+
```html
|
|
202
|
+
<!-- ❌ mal: 2xl fijo y los colores que ya son el default (pages/role-selector/role-selector.html:10) -->
|
|
203
|
+
<sui-logo orientation="horizontal" size="2xl"
|
|
204
|
+
markColor="var(--sui-primary-base)" textColor="var(--sui-text-strong-950)" />
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
```html
|
|
208
|
+
<!-- ✅ bien -->
|
|
209
|
+
<sui-logo [size]="bp.celular() ? '2xl' : 'xl'" />
|
|
210
|
+
```
|
|
211
|
+
|
|
141
212
|
## Ejemplo
|
|
142
213
|
|
|
143
214
|
```html
|