@vasakgroup/vue-libvasak 1.5.0 → 1.7.0
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.
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Un dato extra de la tarjeta: una cadena suelta, o una con su icono.
|
|
3
|
+
*
|
|
4
|
+
* Las dos formas valen. La cadena es lo que este componente recibía antes y
|
|
5
|
+
* sigue andando; la otra es lo que la copia de `vasak-desktop` necesitaba para
|
|
6
|
+
* poner un símbolo al lado de cada dato —la señal, la batería—.
|
|
7
|
+
*/
|
|
8
|
+
export type ExtraInfo = string | {
|
|
9
|
+
icon?: string;
|
|
10
|
+
text: string;
|
|
11
|
+
};
|
|
1
12
|
interface Props {
|
|
2
13
|
/** El nombre del icono en el tema del escritorio. */
|
|
3
14
|
name?: string;
|
|
@@ -8,10 +19,22 @@ interface Props {
|
|
|
8
19
|
title: string;
|
|
9
20
|
subtitle?: string;
|
|
10
21
|
metadata?: string;
|
|
11
|
-
extraInfo?:
|
|
22
|
+
extraInfo?: ExtraInfo[];
|
|
12
23
|
isConnected?: boolean;
|
|
13
24
|
showActionButton?: boolean;
|
|
25
|
+
/**
|
|
26
|
+
* Qué dice el botón de la acción.
|
|
27
|
+
*
|
|
28
|
+
* Va por propiedad y **no** se traduce acá adentro: una librería que busque
|
|
29
|
+
* `components.DeviceCard.connect` en el catálogo obliga a que las seis
|
|
30
|
+
* aplicaciones tengan esa clave, y la que no la tenga dibuja el nombre de la
|
|
31
|
+
* clave en pantalla. Quien la usa ya tiene su `t()`.
|
|
32
|
+
*/
|
|
14
33
|
actionLabel?: string;
|
|
34
|
+
/** Qué dice mientras `isConnecting`. */
|
|
35
|
+
connectingLabel?: string;
|
|
36
|
+
/** Mientras dura la acción: el botón queda deshabilitado y cambia el texto. */
|
|
37
|
+
isConnecting?: boolean;
|
|
15
38
|
showStatusIndicator?: boolean;
|
|
16
39
|
customClass?: string;
|
|
17
40
|
clickable?: boolean;
|
|
@@ -29,10 +52,12 @@ declare const __VLS_export: import("vue").DefineComponent<Props, {}, {}, {}, {},
|
|
|
29
52
|
metadata: string;
|
|
30
53
|
subtitle: string;
|
|
31
54
|
customClass: string;
|
|
32
|
-
extraInfo:
|
|
55
|
+
extraInfo: ExtraInfo[];
|
|
33
56
|
isConnected: boolean;
|
|
34
57
|
showActionButton: boolean;
|
|
35
58
|
actionLabel: string;
|
|
59
|
+
connectingLabel: string;
|
|
60
|
+
isConnecting: boolean;
|
|
36
61
|
showStatusIndicator: boolean;
|
|
37
62
|
clickable: boolean;
|
|
38
63
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
@@ -1,3 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Una fila de lista, con lo que le pongan adentro.
|
|
3
|
+
*
|
|
4
|
+
* Cuando es `clickable` se abre entera: con el mouse y **también con el
|
|
5
|
+
* teclado**. Lleva `role="button"` y no un `<button>` de verdad porque lo que
|
|
6
|
+
* entra por la ranura lo decide quien la usa, y ya hay quien mete botones
|
|
7
|
+
* adentro — un botón dentro de otro no es HTML válido: el navegador desanida el
|
|
8
|
+
* marcado y el de adentro deja de funcionar. El nombre accesible sale de ese
|
|
9
|
+
* mismo contenido.
|
|
10
|
+
*
|
|
11
|
+
* El papel y el foco van **atados a `clickable`**: una fila que dice ser un
|
|
12
|
+
* botón y no hace nada es el mismo problema al revés.
|
|
13
|
+
*
|
|
14
|
+
* Y las teclas llevan `.self` **antes** de `.prevent`, que no es un detalle: la
|
|
15
|
+
* tecla que alguien apreta sobre un botón de adentro **burbujea** hasta acá.
|
|
16
|
+
* Sin `.self`, apretar Enter en ese botón dispararía además la acción de la
|
|
17
|
+
* fila entera, y el `.prevent` le cancelaría al botón su propia activación —o a
|
|
18
|
+
* un campo de texto su salto de línea—. Con `.self` sólo responden las teclas
|
|
19
|
+
* que llegan a la fila misma, que es cuando la fila tiene el foco.
|
|
20
|
+
*/
|
|
1
21
|
interface Props {
|
|
2
22
|
clickable?: boolean;
|
|
3
23
|
customClass?: string | Record<string, boolean>;
|