energy-components 1.8.0 → 1.9.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.
Files changed (45) hide show
  1. package/dist/components/avatar.es.js +161 -0
  2. package/dist/components/checkbox.es.js +51 -35
  3. package/dist/components/directAccess.es.js +146 -0
  4. package/dist/components/dragAndDrop.es.js +77 -60
  5. package/dist/components/fileUploadItem.es.js +182 -0
  6. package/dist/components/filterChip.es.js +26 -22
  7. package/dist/components/index.es.js +76 -64
  8. package/dist/components/link.es.js +67 -55
  9. package/dist/components/loader.es.js +178 -0
  10. package/dist/components/progressBar.es.js +52 -28
  11. package/dist/components/selectionChip.es.js +15 -14
  12. package/dist/components/style/avatar.css +1 -0
  13. package/dist/components/style/button.css +1 -1
  14. package/dist/components/style/checkbox.css +1 -1
  15. package/dist/components/style/directAccess.css +1 -0
  16. package/dist/components/style/dragAndDrop.css +1 -1
  17. package/dist/components/style/fileUploadItem.css +1 -0
  18. package/dist/components/style/filterChip.css +1 -1
  19. package/dist/components/style/link.css +1 -1
  20. package/dist/components/style/loader.css +1 -0
  21. package/dist/components/style/progressBar.css +1 -1
  22. package/dist/components/style/selectionChip.css +1 -1
  23. package/dist/components/style/tabBar.css +1 -1
  24. package/dist/components/style/textField.css +1 -1
  25. package/dist/components/style/toggle.css +1 -1
  26. package/dist/components/tabBar.es.js +63 -64
  27. package/dist/components/textField.es.js +134 -110
  28. package/dist/components/toggle.es.js +21 -20
  29. package/dist/energy-components.es.js +5424 -4679
  30. package/dist/energy-components.umd.js +2 -2
  31. package/dist/style.css +1 -1
  32. package/dist/types/src/components/content/avatar/avatar.vue.d.ts +153 -0
  33. package/dist/types/src/components/feedback/loader/loader.vue.d.ts +151 -0
  34. package/dist/types/src/components/feedback/progress-bar/progress-bar.vue.d.ts +34 -0
  35. package/dist/types/src/components/index.d.ts +4 -0
  36. package/dist/types/src/components/input/checkbox/checkbox.vue.d.ts +15 -0
  37. package/dist/types/src/components/input/drag-and-drop/drag-and-drop.vue.d.ts +14 -2
  38. package/dist/types/src/components/input/file-upload-item/file-upload-item.vue.d.ts +229 -0
  39. package/dist/types/src/components/input/filter-chip/filter-chip.vue.d.ts +2 -0
  40. package/dist/types/src/components/input/text-field/text-field.vue.d.ts +23 -4
  41. package/dist/types/src/components/navigation/direct-access/direct-access.vue.d.ts +178 -0
  42. package/dist/types/src/components/navigation/link/link.vue.d.ts +15 -0
  43. package/dist/types/src/components/overlay/tooltip/tooltip.vue.d.ts +1 -1
  44. package/dist/types/tsconfig.tsbuildinfo +1 -1
  45. package/package.json +2 -2
@@ -0,0 +1,153 @@
1
+ type AvatarType = 'icon' | 'image' | 'initials';
2
+ type AvatarSizeType = 's' | 'm' | 'l' | 'xl';
3
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
4
+ /**
5
+ * Tipo de contenido para el avatar.
6
+ * <br>
7
+ * `['icon', 'image', 'initials']`
8
+ */
9
+ type: {
10
+ type: () => AvatarType;
11
+ default: string;
12
+ validator: (value: string) => boolean;
13
+ };
14
+ /**
15
+ * URL de la imagen a mostrar si el tipo es 'image'.
16
+ */
17
+ src: {
18
+ type: StringConstructor;
19
+ default: string;
20
+ };
21
+ /**
22
+ * Nombre del icono a mostrar si el tipo es 'icon'.
23
+ * Por defecto es 'user_default'.
24
+ */
25
+ iconName: {
26
+ type: StringConstructor;
27
+ default: string;
28
+ };
29
+ /**
30
+ * Texto de las iniciales a mostrar si el tipo es 'initials'.
31
+ * Se mostrarán como máximo los dos primeros caracteres en mayúsculas.
32
+ */
33
+ initials: {
34
+ type: StringConstructor;
35
+ default: string;
36
+ };
37
+ /**
38
+ * Indica si se debe mostrar un badge de notificación en el avatar.
39
+ */
40
+ badge: {
41
+ type: BooleanConstructor;
42
+ default: boolean;
43
+ };
44
+ /**
45
+ * Color de fondo del avatar.
46
+ * Puede ser un valor de color CSS válido (ej: '#333', 'rgb(255,0,0)', 'red') o una variable CSS.
47
+ * Por defecto es '#DBE6F0'.
48
+ */
49
+ backgroundColor: {
50
+ type: StringConstructor;
51
+ default: string;
52
+ };
53
+ /**
54
+ * Tamaño del avatar.
55
+ * <br>
56
+ * `'s'` (24px), `'m'` (32px), `'l'` (40px), `'xl'` (48px)
57
+ * Por defecto es 'l'.
58
+ */
59
+ size: {
60
+ type: () => AvatarSizeType;
61
+ default: string;
62
+ validator: (value: string) => boolean;
63
+ };
64
+ /**
65
+ * Texto alternativo para la imagen del avatar (usado para accesibilidad si el tipo es 'image').
66
+ */
67
+ alt: {
68
+ type: StringConstructor;
69
+ default: string;
70
+ };
71
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
72
+ click: (event: KeyboardEvent | MouseEvent) => any;
73
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
74
+ /**
75
+ * Tipo de contenido para el avatar.
76
+ * <br>
77
+ * `['icon', 'image', 'initials']`
78
+ */
79
+ type: {
80
+ type: () => AvatarType;
81
+ default: string;
82
+ validator: (value: string) => boolean;
83
+ };
84
+ /**
85
+ * URL de la imagen a mostrar si el tipo es 'image'.
86
+ */
87
+ src: {
88
+ type: StringConstructor;
89
+ default: string;
90
+ };
91
+ /**
92
+ * Nombre del icono a mostrar si el tipo es 'icon'.
93
+ * Por defecto es 'user_default'.
94
+ */
95
+ iconName: {
96
+ type: StringConstructor;
97
+ default: string;
98
+ };
99
+ /**
100
+ * Texto de las iniciales a mostrar si el tipo es 'initials'.
101
+ * Se mostrarán como máximo los dos primeros caracteres en mayúsculas.
102
+ */
103
+ initials: {
104
+ type: StringConstructor;
105
+ default: string;
106
+ };
107
+ /**
108
+ * Indica si se debe mostrar un badge de notificación en el avatar.
109
+ */
110
+ badge: {
111
+ type: BooleanConstructor;
112
+ default: boolean;
113
+ };
114
+ /**
115
+ * Color de fondo del avatar.
116
+ * Puede ser un valor de color CSS válido (ej: '#333', 'rgb(255,0,0)', 'red') o una variable CSS.
117
+ * Por defecto es '#DBE6F0'.
118
+ */
119
+ backgroundColor: {
120
+ type: StringConstructor;
121
+ default: string;
122
+ };
123
+ /**
124
+ * Tamaño del avatar.
125
+ * <br>
126
+ * `'s'` (24px), `'m'` (32px), `'l'` (40px), `'xl'` (48px)
127
+ * Por defecto es 'l'.
128
+ */
129
+ size: {
130
+ type: () => AvatarSizeType;
131
+ default: string;
132
+ validator: (value: string) => boolean;
133
+ };
134
+ /**
135
+ * Texto alternativo para la imagen del avatar (usado para accesibilidad si el tipo es 'image').
136
+ */
137
+ alt: {
138
+ type: StringConstructor;
139
+ default: string;
140
+ };
141
+ }>> & Readonly<{
142
+ onClick?: ((event: KeyboardEvent | MouseEvent) => any) | undefined;
143
+ }>, {
144
+ size: AvatarSizeType;
145
+ type: AvatarType;
146
+ initials: string;
147
+ src: string;
148
+ iconName: string;
149
+ badge: boolean;
150
+ backgroundColor: string;
151
+ alt: string;
152
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
153
+ export default _default;
@@ -0,0 +1,151 @@
1
+ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
2
+ /**
3
+ * Define el diámetro del loader en píxeles.
4
+ * El valor se ajustará para estar entre 32px (mínimo) y 120px (máximo).
5
+ *
6
+ * @type {number}
7
+ * @optional
8
+ */
9
+ size: {
10
+ type: NumberConstructor;
11
+ default: number;
12
+ };
13
+ /**
14
+ * Especifica la variante del loader.
15
+ * 'default': Muestra solo el spinner.
16
+ * 'contained': Envuelve el spinner en un contenedor con estilo de tarjeta (104x104px con padding de 24px).
17
+ * El prop `size` afectará al spinner dentro de este contenedor.
18
+ *
19
+ * @type {string}
20
+ * @optional
21
+ */
22
+ variant: {
23
+ type: StringConstructor;
24
+ default: string;
25
+ validator: (value: unknown) => boolean;
26
+ };
27
+ /**
28
+ * Controla el tipo de animación del loader.
29
+ * 'normal': Una rotación continua de un arco del círculo.
30
+ * 'infinite': Una animación donde un segmento del círculo parece crecer, encogerse y rotar.
31
+ *
32
+ * @type {string}
33
+ * @optional
34
+ */
35
+ animationType: {
36
+ type: StringConstructor;
37
+ default: string;
38
+ validator: (value: unknown) => boolean;
39
+ };
40
+ /**
41
+ * Define el grosor del trazo del spinner en píxeles.
42
+ * Si no se especifica, se calcula automáticamente como `size / 8` (con un mínimo de 2px).
43
+ *
44
+ * @type {number}
45
+ * @optional
46
+ */
47
+ strokeWidth: {
48
+ type: NumberConstructor;
49
+ default: number;
50
+ };
51
+ /**
52
+ * Etiqueta ARIA para accesibilidad. Describe la acción que se está realizando.
53
+ *
54
+ * @type {string}
55
+ * @optional
56
+ */
57
+ ariaLabel: {
58
+ type: StringConstructor;
59
+ default: string;
60
+ };
61
+ /**
62
+ * Identificador único para el componente y sus elementos internos (como el gradiente SVG).
63
+ * Si no se proporciona, se usará un valor por defecto.
64
+ *
65
+ * @type {string}
66
+ * @optional
67
+ */
68
+ id: {
69
+ type: StringConstructor;
70
+ default: string;
71
+ };
72
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
73
+ /**
74
+ * Define el diámetro del loader en píxeles.
75
+ * El valor se ajustará para estar entre 32px (mínimo) y 120px (máximo).
76
+ *
77
+ * @type {number}
78
+ * @optional
79
+ */
80
+ size: {
81
+ type: NumberConstructor;
82
+ default: number;
83
+ };
84
+ /**
85
+ * Especifica la variante del loader.
86
+ * 'default': Muestra solo el spinner.
87
+ * 'contained': Envuelve el spinner en un contenedor con estilo de tarjeta (104x104px con padding de 24px).
88
+ * El prop `size` afectará al spinner dentro de este contenedor.
89
+ *
90
+ * @type {string}
91
+ * @optional
92
+ */
93
+ variant: {
94
+ type: StringConstructor;
95
+ default: string;
96
+ validator: (value: unknown) => boolean;
97
+ };
98
+ /**
99
+ * Controla el tipo de animación del loader.
100
+ * 'normal': Una rotación continua de un arco del círculo.
101
+ * 'infinite': Una animación donde un segmento del círculo parece crecer, encogerse y rotar.
102
+ *
103
+ * @type {string}
104
+ * @optional
105
+ */
106
+ animationType: {
107
+ type: StringConstructor;
108
+ default: string;
109
+ validator: (value: unknown) => boolean;
110
+ };
111
+ /**
112
+ * Define el grosor del trazo del spinner en píxeles.
113
+ * Si no se especifica, se calcula automáticamente como `size / 8` (con un mínimo de 2px).
114
+ *
115
+ * @type {number}
116
+ * @optional
117
+ */
118
+ strokeWidth: {
119
+ type: NumberConstructor;
120
+ default: number;
121
+ };
122
+ /**
123
+ * Etiqueta ARIA para accesibilidad. Describe la acción que se está realizando.
124
+ *
125
+ * @type {string}
126
+ * @optional
127
+ */
128
+ ariaLabel: {
129
+ type: StringConstructor;
130
+ default: string;
131
+ };
132
+ /**
133
+ * Identificador único para el componente y sus elementos internos (como el gradiente SVG).
134
+ * Si no se proporciona, se usará un valor por defecto.
135
+ *
136
+ * @type {string}
137
+ * @optional
138
+ */
139
+ id: {
140
+ type: StringConstructor;
141
+ default: string;
142
+ };
143
+ }>> & Readonly<{}>, {
144
+ size: number;
145
+ variant: string;
146
+ id: string;
147
+ ariaLabel: string;
148
+ animationType: string;
149
+ strokeWidth: number;
150
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
151
+ export default _default;
@@ -47,6 +47,22 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
47
47
  type: BooleanConstructor;
48
48
  default: boolean;
49
49
  };
50
+ /**
51
+ * Si es true, oculta completamente el contador de pasos y solo muestra la barra de progreso.
52
+ * Útil para barras de progreso sencillas en componentes con espacio limitado.
53
+ */
54
+ hideCounter: {
55
+ type: BooleanConstructor;
56
+ default: boolean;
57
+ };
58
+ /**
59
+ * Indica el color de fondo de la bara principal.
60
+ * si el whiteBar esta true = $rds-color-neutral-white
61
+ */
62
+ whiteBar: {
63
+ type: BooleanConstructor;
64
+ default: boolean;
65
+ };
50
66
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
51
67
  goBack: () => any;
52
68
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -85,12 +101,30 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
85
101
  type: BooleanConstructor;
86
102
  default: boolean;
87
103
  };
104
+ /**
105
+ * Si es true, oculta completamente el contador de pasos y solo muestra la barra de progreso.
106
+ * Útil para barras de progreso sencillas en componentes con espacio limitado.
107
+ */
108
+ hideCounter: {
109
+ type: BooleanConstructor;
110
+ default: boolean;
111
+ };
112
+ /**
113
+ * Indica el color de fondo de la bara principal.
114
+ * si el whiteBar esta true = $rds-color-neutral-white
115
+ */
116
+ whiteBar: {
117
+ type: BooleanConstructor;
118
+ default: boolean;
119
+ };
88
120
  }>> & Readonly<{
89
121
  onGoBack?: (() => any) | undefined;
90
122
  }>, {
91
123
  inverse: boolean;
92
124
  backButton: boolean;
93
125
  percentage: boolean;
126
+ hideCounter: boolean;
127
+ whiteBar: boolean;
94
128
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
95
129
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
96
130
  export default _default;
@@ -15,20 +15,24 @@ export { default as RDSToggle } from './input/toggle/toggle.vue';
15
15
  export { default as RDSSelectionChip } from './input/selection-chip/selection-chip.vue';
16
16
  export { default as RDSFilterChip } from './input/filter-chip/filter-chip.vue';
17
17
  export { default as RDSDragAndDrop } from './input/drag-and-drop/drag-and-drop.vue';
18
+ export { default as RDSFileUploadItem } from './input/file-upload-item/file-upload-item.vue';
18
19
  export { default as RDSTag } from './content/tag/tag.vue';
19
20
  export { default as RDSAccordionGroup } from './content/acordion-group/accordion-group.vue';
20
21
  export { default as RDSAccordion } from './content/accordion/accordion.vue';
21
22
  export { default as RDSDivider } from './content/divider/divider.vue';
22
23
  export { default as RDSCard } from './content/card/card.vue';
23
24
  export { default as RDSTable } from './content/table/table-paginated/TablePaginatedComponent.vue';
25
+ export { default as RDSAvatar } from './content/avatar/avatar.vue';
24
26
  export { default as RDSLink } from './navigation/link/link.vue';
25
27
  export { default as RDSBreadcrumbs } from './navigation/breadcrumbs/breadcrumbs.vue';
26
28
  export { default as RDSTabBar } from './navigation/tab-bar/tab-bar.vue';
27
29
  export { default as RDSPagination } from './navigation/pagination/pagination.vue';
30
+ export { default as RDSDirectAccess } from './navigation/direct-access/direct-access.vue';
28
31
  export { default as RDSIndicator } from './feedback/indicator/indicator.vue';
29
32
  export { default as RDSPersistentToast } from './feedback/persistent-toast/persistent-toast.vue';
30
33
  export { default as RDSInfoBox } from './feedback/info-box/info-box.vue';
31
34
  export { default as RDSProgressBar } from './feedback/progress-bar/progress-bar.vue';
35
+ export { default as RDSLoader } from './feedback/loader/loader.vue';
32
36
  export { default as RDSModal } from './overlay/modal/modal.vue';
33
37
  export { default as RDSOverlay } from './overlay/overlay/overlay.vue';
34
38
  export { default as RDSTooltip } from './overlay/tooltip/tooltip.vue';
@@ -59,6 +59,13 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
59
59
  type: BooleanConstructor;
60
60
  default: boolean;
61
61
  };
62
+ /**
63
+ * <span>Estado "indeterminado" visual del checkbox. Solo afecta si está checked.</span>
64
+ */
65
+ indeterminate: {
66
+ type: BooleanConstructor;
67
+ default: boolean;
68
+ };
62
69
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
63
70
  "update:modelValue": (event: boolean) => any;
64
71
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
@@ -118,6 +125,13 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
118
125
  type: BooleanConstructor;
119
126
  default: boolean;
120
127
  };
128
+ /**
129
+ * <span>Estado "indeterminado" visual del checkbox. Solo afecta si está checked.</span>
130
+ */
131
+ indeterminate: {
132
+ type: BooleanConstructor;
133
+ default: boolean;
134
+ };
121
135
  }>> & Readonly<{
122
136
  "onUpdate:modelValue"?: ((event: boolean) => any) | undefined;
123
137
  }>, {
@@ -129,6 +143,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
129
143
  id: string | number;
130
144
  accessibilityLabel: string;
131
145
  isChecked: boolean;
146
+ indeterminate: boolean;
132
147
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
133
148
  declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
134
149
  export default _default;
@@ -90,8 +90,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
90
90
  default: boolean;
91
91
  };
92
92
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
93
- error: (message: string) => any;
94
93
  filesSelected: (files: FileList) => any;
94
+ validationError: (message: string) => any;
95
+ fileReady: (payload: {
96
+ id: string;
97
+ file: File;
98
+ name: string;
99
+ size: number;
100
+ }) => any;
95
101
  }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
96
102
  /**
97
103
  * Tipos de archivo aceptados por el input (ej. '.png,.jpg,.pdf', 'image/*').
@@ -179,8 +185,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
179
185
  default: boolean;
180
186
  };
181
187
  }>> & Readonly<{
182
- onError?: ((message: string) => any) | undefined;
183
188
  onFilesSelected?: ((files: FileList) => any) | undefined;
189
+ onValidationError?: ((message: string) => any) | undefined;
190
+ onFileReady?: ((payload: {
191
+ id: string;
192
+ file: File;
193
+ name: string;
194
+ size: number;
195
+ }) => any) | undefined;
184
196
  }>, {
185
197
  error: boolean;
186
198
  icon: string;
@@ -0,0 +1,229 @@
1
+ import type { PropType } from 'vue';
2
+ interface FileAction {
3
+ type: string;
4
+ icon: string;
5
+ label?: string;
6
+ }
7
+ type FileStatus = 'default' | 'uploading' | 'error' | 'disabled';
8
+ declare var __VLS_1: {}, __VLS_9: {};
9
+ type __VLS_Slots = {} & {
10
+ 'file-icon'?: (props: typeof __VLS_1) => any;
11
+ } & {
12
+ action?: (props: typeof __VLS_9) => any;
13
+ };
14
+ declare const __VLS_component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
15
+ /**
16
+ * Identificador único para el ítem de archivo (opcional, pero útil para eventos).
17
+ */
18
+ id: {
19
+ type: StringConstructor;
20
+ default: string;
21
+ };
22
+ /**
23
+ * Nombre del archivo a mostrar.
24
+ */
25
+ fileName: {
26
+ type: StringConstructor;
27
+ required: true;
28
+ };
29
+ /**
30
+ * Tamaño del archivo en bytes.
31
+ */
32
+ fileSize: {
33
+ type: NumberConstructor;
34
+ required: true;
35
+ };
36
+ /**
37
+ * Nombre del icono a mostrar para el archivo.
38
+ * Ver la sección 'Options > Icon' en el diseño para ejemplos.
39
+ * Por defecto es 'document_generic' (representando "Document final content").
40
+ */
41
+ fileIcon: {
42
+ type: StringConstructor;
43
+ default: string;
44
+ };
45
+ /**
46
+ * Estado actual del ítem de archivo.
47
+ * Determina la apariencia y elementos mostrados (ej. barra de progreso, mensaje de error).
48
+ * Posibles valores: 'default', 'uploading', 'error', 'disabled'.
49
+ */
50
+ status: {
51
+ type: PropType<FileStatus>;
52
+ default: string;
53
+ validator: (value: string) => boolean;
54
+ };
55
+ /**
56
+ * Progreso de la subida (0-100). Usado por RDSProgressBar si showProgressBar es true.
57
+ */
58
+ progress: {
59
+ type: NumberConstructor;
60
+ default: number;
61
+ validator: (value: number) => boolean;
62
+ };
63
+ /**
64
+ * Texto que indica el tiempo restante de subida (ej. "4 second left").
65
+ * Solo visible si status es 'uploading'.
66
+ */
67
+ timeRemaining: {
68
+ type: StringConstructor;
69
+ default: null;
70
+ };
71
+ /**
72
+ * Mensaje de error a mostrar. Solo visible si status es 'error'.
73
+ * Reemplaza el campo de detalle con el contexto de error.
74
+ */
75
+ errorMessage: {
76
+ type: StringConstructor;
77
+ default: null;
78
+ };
79
+ /**
80
+ * Indica si el componente está deshabilitado.
81
+ * Esto aplicará estilos de deshabilitado y prevendrá interacciones.
82
+ */
83
+ disabled: {
84
+ type: BooleanConstructor;
85
+ default: boolean;
86
+ };
87
+ /**
88
+ * Define la acción disponible para el ítem.
89
+ * Por defecto es una acción de eliminar.
90
+ * Ejemplo: { type: 'delete', icon: 'delete', label: 'Eliminar archivo' }
91
+ */
92
+ action: {
93
+ type: PropType<FileAction>;
94
+ default: () => {
95
+ type: string;
96
+ icon: string;
97
+ label: string;
98
+ };
99
+ };
100
+ /**
101
+ * Indica si se debe mostrar el componente RDSProgressBar durante el estado 'uploading'.
102
+ * Si es false, no se muestra ninguna barra de progreso.
103
+ */
104
+ showProgressBar: {
105
+ type: BooleanConstructor;
106
+ default: boolean;
107
+ };
108
+ }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
109
+ action: (payload: {
110
+ actionType: string;
111
+ fileId: string;
112
+ }) => any;
113
+ }, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
114
+ /**
115
+ * Identificador único para el ítem de archivo (opcional, pero útil para eventos).
116
+ */
117
+ id: {
118
+ type: StringConstructor;
119
+ default: string;
120
+ };
121
+ /**
122
+ * Nombre del archivo a mostrar.
123
+ */
124
+ fileName: {
125
+ type: StringConstructor;
126
+ required: true;
127
+ };
128
+ /**
129
+ * Tamaño del archivo en bytes.
130
+ */
131
+ fileSize: {
132
+ type: NumberConstructor;
133
+ required: true;
134
+ };
135
+ /**
136
+ * Nombre del icono a mostrar para el archivo.
137
+ * Ver la sección 'Options > Icon' en el diseño para ejemplos.
138
+ * Por defecto es 'document_generic' (representando "Document final content").
139
+ */
140
+ fileIcon: {
141
+ type: StringConstructor;
142
+ default: string;
143
+ };
144
+ /**
145
+ * Estado actual del ítem de archivo.
146
+ * Determina la apariencia y elementos mostrados (ej. barra de progreso, mensaje de error).
147
+ * Posibles valores: 'default', 'uploading', 'error', 'disabled'.
148
+ */
149
+ status: {
150
+ type: PropType<FileStatus>;
151
+ default: string;
152
+ validator: (value: string) => boolean;
153
+ };
154
+ /**
155
+ * Progreso de la subida (0-100). Usado por RDSProgressBar si showProgressBar es true.
156
+ */
157
+ progress: {
158
+ type: NumberConstructor;
159
+ default: number;
160
+ validator: (value: number) => boolean;
161
+ };
162
+ /**
163
+ * Texto que indica el tiempo restante de subida (ej. "4 second left").
164
+ * Solo visible si status es 'uploading'.
165
+ */
166
+ timeRemaining: {
167
+ type: StringConstructor;
168
+ default: null;
169
+ };
170
+ /**
171
+ * Mensaje de error a mostrar. Solo visible si status es 'error'.
172
+ * Reemplaza el campo de detalle con el contexto de error.
173
+ */
174
+ errorMessage: {
175
+ type: StringConstructor;
176
+ default: null;
177
+ };
178
+ /**
179
+ * Indica si el componente está deshabilitado.
180
+ * Esto aplicará estilos de deshabilitado y prevendrá interacciones.
181
+ */
182
+ disabled: {
183
+ type: BooleanConstructor;
184
+ default: boolean;
185
+ };
186
+ /**
187
+ * Define la acción disponible para el ítem.
188
+ * Por defecto es una acción de eliminar.
189
+ * Ejemplo: { type: 'delete', icon: 'delete', label: 'Eliminar archivo' }
190
+ */
191
+ action: {
192
+ type: PropType<FileAction>;
193
+ default: () => {
194
+ type: string;
195
+ icon: string;
196
+ label: string;
197
+ };
198
+ };
199
+ /**
200
+ * Indica si se debe mostrar el componente RDSProgressBar durante el estado 'uploading'.
201
+ * Si es false, no se muestra ninguna barra de progreso.
202
+ */
203
+ showProgressBar: {
204
+ type: BooleanConstructor;
205
+ default: boolean;
206
+ };
207
+ }>> & Readonly<{
208
+ onAction?: ((payload: {
209
+ actionType: string;
210
+ fileId: string;
211
+ }) => any) | undefined;
212
+ }>, {
213
+ progress: number;
214
+ disabled: boolean;
215
+ id: string;
216
+ errorMessage: string;
217
+ fileIcon: string;
218
+ status: FileStatus;
219
+ timeRemaining: string;
220
+ action: FileAction;
221
+ showProgressBar: boolean;
222
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
223
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
224
+ export default _default;
225
+ type __VLS_WithSlots<T, S> = T & {
226
+ new (): {
227
+ $slots: S;
228
+ };
229
+ };
@@ -22,6 +22,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
22
22
  leftNumber: {
23
23
  type: StringConstructor;
24
24
  default: string;
25
+ validator: (value: string) => boolean;
25
26
  };
26
27
  /**
27
28
  * <span>Indica si se muestra el icono de flecha a la derecha</span>
@@ -91,6 +92,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
91
92
  leftNumber: {
92
93
  type: StringConstructor;
93
94
  default: string;
95
+ validator: (value: string) => boolean;
94
96
  };
95
97
  /**
96
98
  * <span>Indica si se muestra el icono de flecha a la derecha</span>