@imj_media/ui 1.2.13 → 1.2.15
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/CHANGELOG.md +107 -0
- package/dist/index.css +1 -1
- package/dist/index.esm.js +6988 -6069
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +30 -10
- package/dist/index.js.map +1 -1
- package/dist/modules/Alert/components/atoms/AlertHeader.d.ts.map +1 -1
- package/dist/modules/Alert/hooks/useAlertStyles.d.ts +2 -1
- package/dist/modules/Alert/hooks/useAlertStyles.d.ts.map +1 -1
- package/dist/modules/Alert/index.d.ts +1 -1
- package/dist/modules/Alert/index.d.ts.map +1 -1
- package/dist/modules/Alert/stories/alert.stories.d.ts +1 -0
- package/dist/modules/Alert/stories/alert.stories.d.ts.map +1 -1
- package/dist/modules/Alert/utils/alert.d.ts.map +1 -1
- package/dist/modules/Icon/Icon.d.ts +1 -1
- package/dist/modules/Icon/Icon.d.ts.map +1 -1
- package/dist/modules/Icon/components/LegacyIcon.d.ts +1 -1
- package/dist/modules/Icon/components/LegacyIcon.d.ts.map +1 -1
- package/dist/modules/IconFont/components/organims/IconFont.d.ts +6 -2
- package/dist/modules/IconFont/components/organims/IconFont.d.ts.map +1 -1
- package/dist/modules/Input/components/Input.d.ts.map +1 -1
- package/dist/modules/Input/hooks/useInputStyles.d.ts +2 -1
- package/dist/modules/Input/hooks/useInputStyles.d.ts.map +1 -1
- package/dist/modules/PickerColor/components/atoms/ColorInput.d.ts +25 -0
- package/dist/modules/PickerColor/components/atoms/ColorInput.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/atoms/ColorSwatch.d.ts +18 -0
- package/dist/modules/PickerColor/components/atoms/ColorSwatch.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/atoms/index.d.ts +3 -0
- package/dist/modules/PickerColor/components/atoms/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/index.d.ts +4 -0
- package/dist/modules/PickerColor/components/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/molecules/ColorPalette.d.ts +15 -0
- package/dist/modules/PickerColor/components/molecules/ColorPalette.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/molecules/ColorPickerContent.d.ts +18 -0
- package/dist/modules/PickerColor/components/molecules/ColorPickerContent.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/molecules/index.d.ts +3 -0
- package/dist/modules/PickerColor/components/molecules/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/organisms/PickerColor.d.ts +3 -0
- package/dist/modules/PickerColor/components/organisms/PickerColor.d.ts.map +1 -0
- package/dist/modules/PickerColor/components/organisms/index.d.ts +2 -0
- package/dist/modules/PickerColor/components/organisms/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/constants/colors.d.ts +9 -0
- package/dist/modules/PickerColor/constants/colors.d.ts.map +1 -0
- package/dist/modules/PickerColor/constants/index.d.ts +2 -0
- package/dist/modules/PickerColor/constants/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/hooks/index.d.ts +3 -0
- package/dist/modules/PickerColor/hooks/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/hooks/useEyeDropper.d.ts +12 -0
- package/dist/modules/PickerColor/hooks/useEyeDropper.d.ts.map +1 -0
- package/dist/modules/PickerColor/hooks/useRecentColors.d.ts +18 -0
- package/dist/modules/PickerColor/hooks/useRecentColors.d.ts.map +1 -0
- package/dist/modules/PickerColor/index.d.ts +2 -0
- package/dist/modules/PickerColor/index.d.ts.map +1 -0
- package/dist/modules/PickerColor/stories/PickerColor.stories.d.ts +16 -0
- package/dist/modules/PickerColor/stories/PickerColor.stories.d.ts.map +1 -0
- package/dist/modules/PickerColor/utils/colorUtils.d.ts +45 -0
- package/dist/modules/PickerColor/utils/colorUtils.d.ts.map +1 -0
- package/dist/modules/PickerColor/utils/debounce.d.ts +8 -0
- package/dist/modules/PickerColor/utils/debounce.d.ts.map +1 -0
- package/dist/modules/PickerColor/utils/index.d.ts +3 -0
- package/dist/modules/PickerColor/utils/index.d.ts.map +1 -0
- package/dist/modules/ProgressBar/components/organisms/Container.d.ts +1 -1
- package/dist/modules/ProgressBar/components/organisms/Container.d.ts.map +1 -1
- package/dist/modules/ProgressBar/components/organisms/atoms/BarProgress.d.ts.map +1 -1
- package/dist/modules/ProgressBar/stories/progressbar.stories.d.ts +1 -0
- package/dist/modules/ProgressBar/stories/progressbar.stories.d.ts.map +1 -1
- package/dist/modules/Table/Table.d.ts +1 -1
- package/dist/modules/Table/Table.d.ts.map +1 -1
- package/dist/modules/Table/components/atoms/DropdownCell.d.ts.map +1 -1
- package/dist/modules/Table/components/atoms/TextFieldCell.d.ts.map +1 -1
- package/dist/modules/Table/components/molecules/CellRenderer.d.ts.map +1 -1
- package/dist/modules/Table/components/molecules/TableRow.d.ts.map +1 -1
- package/dist/modules/Table/components/organisms/TableSelectionBar.d.ts.map +1 -1
- package/dist/modules/Table/components/organisms/TableToolbar.d.ts +5 -1
- package/dist/modules/Table/components/organisms/TableToolbar.d.ts.map +1 -1
- package/dist/modules/Table/hooks/useTableConfig.d.ts +5 -0
- package/dist/modules/Table/hooks/useTableConfig.d.ts.map +1 -1
- package/dist/modules/Table/hooks/useTableEdit.d.ts +1 -1
- package/dist/modules/Table/hooks/useTableEdit.d.ts.map +1 -1
- package/dist/modules/Table/stories/Table.stories.d.ts +124 -43
- package/dist/modules/Table/stories/Table.stories.d.ts.map +1 -1
- package/dist/modules/Table/stories/TableWithQuery.stories.d.ts +7 -0
- package/dist/modules/Table/stories/TableWithQuery.stories.d.ts.map +1 -1
- package/dist/modules/Table/utils/cellStyles.d.ts +2 -1
- package/dist/modules/Table/utils/cellStyles.d.ts.map +1 -1
- package/dist/modules/Toast/components/molecules/ToastItem.d.ts.map +1 -1
- package/dist/modules/Toast/hooks/useToast.d.ts.map +1 -1
- package/dist/modules/Toast/hooks/useToastService.d.ts +3 -1
- package/dist/modules/Toast/hooks/useToastService.d.ts.map +1 -1
- package/dist/modules/Toast/index.d.ts +8 -5
- package/dist/modules/Toast/index.d.ts.map +1 -1
- package/dist/modules/Toast/stories/toast.stories.d.ts.map +1 -1
- package/dist/modules/index.d.ts +1 -0
- package/dist/modules/index.d.ts.map +1 -1
- package/dist/shared/const/colors.d.ts +3 -0
- package/dist/shared/const/colors.d.ts.map +1 -1
- package/dist/shared/types/alert.d.ts +8 -2
- package/dist/shared/types/alert.d.ts.map +1 -1
- package/dist/shared/types/colorpicker.d.ts +47 -0
- package/dist/shared/types/colorpicker.d.ts.map +1 -0
- package/dist/shared/types/icon.d.ts +2 -0
- package/dist/shared/types/icon.d.ts.map +1 -1
- package/dist/shared/types/index.d.ts +1 -0
- package/dist/shared/types/index.d.ts.map +1 -1
- package/dist/shared/types/input.d.ts +1 -0
- package/dist/shared/types/input.d.ts.map +1 -1
- package/dist/shared/types/progressbar.d.ts +12 -1
- package/dist/shared/types/progressbar.d.ts.map +1 -1
- package/dist/shared/types/table.d.ts +8 -0
- package/dist/shared/types/table.d.ts.map +1 -1
- package/dist/shared/types/toast.d.ts +1 -0
- package/dist/shared/types/toast.d.ts.map +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,113 @@ Todos los cambios notables de este proyecto serán documentados en este archivo.
|
|
|
5
5
|
El formato está basado en [Keep a Changelog](https://keepachangelog.com/es-ES/1.0.0/),
|
|
6
6
|
y este proyecto adhiere a [Semantic Versioning](https://semver.org/lang/es/).
|
|
7
7
|
|
|
8
|
+
## [1.2.15] - 2026-01-07
|
|
9
|
+
|
|
10
|
+
### Added
|
|
11
|
+
- **Table - Control Externo de Edición**: Nueva prop para controlar el modo edición desde fuera del componente
|
|
12
|
+
- Nueva prop `editingRowIds` en `TableProps` que acepta un array de IDs de filas para activar modo edición
|
|
13
|
+
- Permite controlar múltiples filas en modo edición simultáneamente desde fuera del componente
|
|
14
|
+
- Útil para acciones en lote o control centralizado del estado de edición
|
|
15
|
+
- Cuando se proporciona `editingRowIds`, el estado interno de edición se sincroniza con los IDs externos
|
|
16
|
+
- Los botones de edición/guardar en la columna de acciones reflejan correctamente el estado controlado externamente
|
|
17
|
+
- Modificado el hook `useTableEdit` para aceptar IDs externos y sincronizar el estado interno
|
|
18
|
+
- Nueva story `ControlExternoEdicion` que demuestra cómo usar esta funcionalidad con botones externos de UI
|
|
19
|
+
- **ProgressBar - Prop `countdown` para Cuenta Regresiva**: Nueva funcionalidad integrada en el componente
|
|
20
|
+
- Nueva prop `countdown` que acepta un número en segundos para activar la animación de cuenta regresiva
|
|
21
|
+
- La barra anima automáticamente desde el valor de `progress` hasta 0% en el tiempo especificado
|
|
22
|
+
- Nueva prop `onCountdownComplete` callback que se ejecuta cuando la cuenta regresiva llega a 0
|
|
23
|
+
- Hook interno `useCountdown` que usa `setInterval` con `performance.now()` para timing preciso (~60fps)
|
|
24
|
+
- La transición CSS se desactiva automáticamente cuando `countdown` está activo para animación suave
|
|
25
|
+
- Story "Cuenta Regresiva" actualizada para demostrar el uso de las nuevas props
|
|
26
|
+
- Ejemplo de uso: `<ProgressBar progress={75} countdown={5} onCountdownComplete={() => alert('¡Listo!')} />`
|
|
27
|
+
- **Alert/Toast - Mejora en Barra de Progreso con Cuenta Regresiva**: Integración con la nueva prop `countdown` del ProgressBar
|
|
28
|
+
- El componente `Alert` ahora usa la prop `countdown` del ProgressBar para animación suave
|
|
29
|
+
- Conversión automática de `duration` (ms) a `countdown` (segundos): `countdown={duration / 1000}`
|
|
30
|
+
- La barra solo se muestra cuando `duration > 0`
|
|
31
|
+
- El color de la barra coincide automáticamente con el color del alert
|
|
32
|
+
- `ToastItem` ahora pasa correctamente la prop `duration` al `Alert`
|
|
33
|
+
- Story "Duración Personalizada" actualizada con duraciones explícitas (2s, 5s, 10s, permanente)
|
|
34
|
+
|
|
35
|
+
### Changed
|
|
36
|
+
- **Table - Reorganización y Mejora de Stories**: Mejoras significativas en la organización y documentación de las historias de Storybook
|
|
37
|
+
- Reorganización completa de todas las 29 historias en orden alfabético para facilitar la navegación
|
|
38
|
+
- Traducción de todos los nombres de historias al español para consistencia con el proyecto
|
|
39
|
+
- Conversión de todas las historias para usar el componente `StoryBox` con estructura consistente
|
|
40
|
+
- Adición de ejemplos de código (`StoryBox.Code`) en todas las historias para mejor documentación
|
|
41
|
+
- Eliminación de propiedades `name` redundantes en favor de `StoryBox.Title`
|
|
42
|
+
- Corrección de errores de sintaxis JSX en historias que no cerraban correctamente los componentes
|
|
43
|
+
- Mejora en la consistencia del diseño y distribución de todas las historias
|
|
44
|
+
- Todas las historias ahora siguen el mismo patrón: `StoryBox.Title`, `StoryBox.Description`, `StoryBox.Content`, y `StoryBox.Code`
|
|
45
|
+
- Historia ahora sigue el mismo patrón que las demás historias
|
|
46
|
+
|
|
47
|
+
### Fixed
|
|
48
|
+
- **ProgressBar - Transiciones CSS Controladas**: Corrección del comportamiento de transiciones en `BarProgress`
|
|
49
|
+
- La clase `ui-transition-all` ahora solo se aplica cuando `duration > 0`
|
|
50
|
+
- Se añade `transition: 'none'` explícitamente cuando `duration === 0` para desactivar transiciones CSS
|
|
51
|
+
- Esto permite animaciones controladas por JavaScript sin interferencia de transiciones CSS
|
|
52
|
+
- Mejora significativa en la precisión de animaciones de cuenta regresiva y actualizaciones en tiempo real
|
|
53
|
+
|
|
54
|
+
## [1.2.14] - 2026-01-06
|
|
55
|
+
|
|
56
|
+
### Added
|
|
57
|
+
- **PickerColor Component**: Nuevo componente completo para selección de colores
|
|
58
|
+
- Componente `PickerColor` para seleccionar colores en formato hexadecimal
|
|
59
|
+
- Componentes `ColorInput`, `ColorPalette`, y `ColorSwatch` para selección visual de colores
|
|
60
|
+
- Integración con almacenamiento de colores recientes usando localStorage para comodidad del usuario
|
|
61
|
+
- Soporte para EyeDropper API para seleccionar colores desde la pantalla
|
|
62
|
+
- Funciones utilitarias para validación y conversión de colores (hex, RGB, HSL)
|
|
63
|
+
- Stories completas para el componente PickerColor que demuestran varios casos de uso y configuraciones
|
|
64
|
+
- **Toast/Alert - Barra de Progreso con Duración**: Nueva funcionalidad para mostrar barra de progreso en toasts y alerts
|
|
65
|
+
- Nueva prop `duration` en `IAlert` y `ToastProps` para definir la duración del toast/alert
|
|
66
|
+
- Barra de progreso que se muestra en la parte inferior del alert cuando hay duración definida
|
|
67
|
+
- El progreso retrocede de 100% a 0% mientras pasa el tiempo, mostrando el tiempo restante
|
|
68
|
+
- El toast/alert se cierra automáticamente cuando el progreso llega a 0%
|
|
69
|
+
- La barra de progreso solo se muestra si `duration` está definida y es mayor a 0
|
|
70
|
+
- Hook `useProgressBar` que maneja el cálculo del progreso usando `requestAnimationFrame` para animación suave
|
|
71
|
+
- Sincronización entre el cierre automático del toast y la barra de progreso
|
|
72
|
+
- Actualizada la historia "DuraciónPersonalizada" para demostrar la funcionalidad de la barra de progreso
|
|
73
|
+
- Agregados ejemplos con diferentes duraciones (2s, 5s, 10s) en la historia "Colores"
|
|
74
|
+
- **Table - Validación de Celdas Editables**: Sistema de validación para celdas editables en tablas
|
|
75
|
+
- Nueva prop `errorCursor` en componente Input para indicar visualmente errores con cursor rojo y borde
|
|
76
|
+
- Validación automática basada en el tipo de columna (`number`, `numeric`, `text`)
|
|
77
|
+
- Prevención de entrada de caracteres inválidos en columnas numéricas
|
|
78
|
+
- Cursor parpadeante en color danger cuando hay error de validación
|
|
79
|
+
- Borde y fondo en color danger cuando hay error de validación
|
|
80
|
+
- Nueva story `ValidationTable` que demuestra la funcionalidad de validación en celdas editables
|
|
81
|
+
- **Table - Búsqueda Interna Configurable**: Mejora en el manejo de búsqueda interna vs externa
|
|
82
|
+
- Nueva prop `internalSearch` en `TableToolbarConfig` para controlar si se aplica búsqueda interna (por defecto: `false`)
|
|
83
|
+
- Cuando `internalSearch` es `false` y hay `onSearch` definido, solo se emite el evento sin aplicar búsqueda interna
|
|
84
|
+
- Evita mostrar resultados intermedios de búsqueda interna cuando hay búsqueda externa asíncrona
|
|
85
|
+
- Mejora en la experiencia de usuario al evitar parpadeos de resultados durante búsquedas externas
|
|
86
|
+
- **Table - Actualización Batch de Visibilidad de Columnas**: Mejora en el guardado de configuración en localStorage
|
|
87
|
+
- Nuevo método `updateMultipleColumnVisibility` en `useTableConfig` para actualizar múltiples columnas de una vez
|
|
88
|
+
- Prevención de sobreescrituras en localStorage cuando se cambian múltiples columnas simultáneamente
|
|
89
|
+
- Modificación en `TableToolbar` para usar actualización batch cuando hay múltiples cambios de visibilidad
|
|
90
|
+
- Nueva prop `onMultipleColumnVisibilityChange` en `TableToolbar` para manejar cambios batch
|
|
91
|
+
- Corrección del problema donde solo se guardaba el último checkbox marcado en localStorage
|
|
92
|
+
- **TableSelectionBar - Iconos Mejorados**: Mejora en el renderizado de iconos en acciones de selección
|
|
93
|
+
- Los iconos ahora se muestran correctamente cuando hay `label` e `icon` en las acciones
|
|
94
|
+
- Uso de `slotLeft` para iconos cuando hay label, permitiendo mostrar icono y texto juntos
|
|
95
|
+
- Soporte mejorado para iconos de tipo string (`'EditOutlined'`) y Font Awesome (`faCopy`)
|
|
96
|
+
|
|
97
|
+
### Changed
|
|
98
|
+
- **Toast - Message Opcional**: La prop `message` ahora es opcional en `ToastInput`
|
|
99
|
+
- Cambiado el tipo `ToastInput` de `string | (ToastOptions & { message: string })` a `string | (ToastOptions & { message?: string })`
|
|
100
|
+
- Permite crear toasts solo con `title` sin necesidad de incluir `message`
|
|
101
|
+
- Si no se proporciona `message`, se usa una cadena vacía por defecto
|
|
102
|
+
|
|
103
|
+
### Fixed
|
|
104
|
+
- **Table - Guardado en localStorage**: Corrección de sobreescrituras en localStorage
|
|
105
|
+
- Solucionado el problema donde múltiples cambios de visibilidad de columnas causaban sobreescrituras
|
|
106
|
+
- Ahora todos los cambios de visibilidad se guardan correctamente en una sola operación batch
|
|
107
|
+
- Mejora en la persistencia de configuración de columnas
|
|
108
|
+
- **Icon - Comparación con 'xl' en LegacyIcon**: Corrección de error de TypeScript
|
|
109
|
+
- Eliminada la comparación innecesaria con `'xl'` en `getPaddingClass` ya que `VisualSize` no incluye `'xl'`
|
|
110
|
+
- Simplificada la lógica para solo convertir `'xxs'` a `'xs'` cuando es necesario
|
|
111
|
+
- **PickerColor - Importación de InputRef**: Corrección de importación incorrecta
|
|
112
|
+
- Cambiada la importación de `InputRef` de `@/modules/Input` a `@/shared/types/input`
|
|
113
|
+
- Agregadas las propiedades faltantes `clear` y `getInputElement` al objeto retornado por `useImperativeHandle` en `ColorInput`
|
|
114
|
+
|
|
8
115
|
## [1.2.13] - 2025-01-22
|
|
9
116
|
|
|
10
117
|
### Added
|