pixelon 0.9.2 → 0.9.3

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 (213) hide show
  1. package/dist/components/molecules/chat/StructuredContent/components/ReactiveCrud/types.d.ts +2 -0
  2. package/dist/index.esm.js +13 -4
  3. package/dist/index.js +13 -4
  4. package/dist/styles.css +1 -1
  5. package/dist/styles.css.map +1 -1
  6. package/package.json +1 -1
  7. package/dist/components/atoms/chat/AudioWaves/AudioWaves(1).d.ts +0 -21
  8. package/dist/components/atoms/chat/AudioWaves/index(1).d.ts +0 -2
  9. package/dist/components/atoms/chat/DateDivider/DateDivider(1).d.ts +0 -7
  10. package/dist/components/atoms/chat/Loader/Loader(1).d.ts +0 -10
  11. package/dist/components/atoms/chat/Loader/index(1).d.ts +0 -2
  12. package/dist/components/atoms/chat/Select/index(1).d.ts +0 -2
  13. package/dist/components/atoms/lumi/Button/Button(1).d.ts +0 -17
  14. package/dist/components/atoms/lumi/Checkbox/Checkbox(1).d.ts +0 -5
  15. package/dist/components/atoms/lumi/Checkbox/index(1).d.ts +0 -2
  16. package/dist/components/atoms/lumi/Checkbox/index(2).d.ts +0 -2
  17. package/dist/components/atoms/lumi/Checkbox/types(1).d.ts +0 -93
  18. package/dist/components/atoms/lumi/CurrencyDisplay/index(1).d.ts +0 -2
  19. package/dist/components/atoms/lumi/DateDisplay/index(1).d.ts +0 -2
  20. package/dist/components/atoms/lumi/DateDisplay/index(2).d.ts +0 -2
  21. package/dist/components/atoms/lumi/DateInput/DateInput(1).d.ts +0 -27
  22. package/dist/components/atoms/lumi/DateInput/WebDatePicker(1).d.ts +0 -19
  23. package/dist/components/atoms/lumi/DateInput/WebDatePicker(2).d.ts +0 -19
  24. package/dist/components/atoms/lumi/Icon/Icon(1).d.ts +0 -52
  25. package/dist/components/atoms/lumi/Input/index(1).d.ts +0 -3
  26. package/dist/components/atoms/lumi/Popover/index(1).d.ts +0 -2
  27. package/dist/components/atoms/lumi/Popover/types(1).d.ts +0 -62
  28. package/dist/components/atoms/lumi/TextArea/index(1).d.ts +0 -2
  29. package/dist/components/atoms/lumi/TextArea/types(1).d.ts +0 -35
  30. package/dist/components/atoms/lumi/TimeInput/TimeInput(1).d.ts +0 -27
  31. package/dist/components/atoms/lumi/TimeInput/TimeInput(2).d.ts +0 -27
  32. package/dist/components/molecules/chat/FullscreenViewer/hooks/useSwipeGestures(1).d.ts +0 -12
  33. package/dist/components/molecules/chat/StructuredContent/StructuredContent(1).d.ts +0 -10
  34. package/dist/components/molecules/chat/StructuredContent/components/Cart/Cart.d.ts +0 -3
  35. package/dist/components/molecules/chat/StructuredContent/components/ProductCard/ProductCard.d.ts +0 -3
  36. package/dist/components/molecules/chat/StructuredContent/components/ProductCarousel/ProductCarousel.d.ts +0 -3
  37. package/dist/components/molecules/chat/StructuredContent/components/ProductManager/ProductManager.d.ts +0 -3
  38. package/dist/components/molecules/chat/StructuredContent/components/ReactiveCrud/PriceNegotiationChat.d.ts +0 -4
  39. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/DynamicField(1).d.ts +0 -13
  40. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/buildYupSchema(1).d.ts +0 -4
  41. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/types(1).d.ts +0 -91
  42. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveEndpoints(1).d.ts +0 -17
  43. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveEndpoints(2).d.ts +0 -23
  44. package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveForm(1).d.ts +0 -38
  45. package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/ReactiveMap.d.ts +0 -12
  46. package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/ReactiveMapChat.d.ts +0 -3
  47. package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/types.d.ts +0 -36
  48. package/dist/components/molecules/chat/StructuredContent/components/ServiceShortcuts/ServiceShortcutsChat.d.ts +0 -3
  49. package/dist/components/molecules/chat/StructuredContent/helpers/contentParser(1).d.ts +0 -7
  50. package/dist/components/molecules/chat/StructuredContent/index(1).d.ts +0 -2
  51. package/dist/components/molecules/lumi/Breadcrumb/Breadcrumb(1).d.ts +0 -10
  52. package/dist/components/molecules/lumi/Breadcrumb/Breadcrumb(2).d.ts +0 -10
  53. package/dist/components/molecules/lumi/Breadcrumb/types(1).d.ts +0 -105
  54. package/dist/components/molecules/lumi/Checkbox/Checkbox(1).d.ts +0 -11
  55. package/dist/components/molecules/lumi/Checkbox/index(1).d.ts +0 -4
  56. package/dist/components/molecules/lumi/Checkbox/use-cases/index(1).d.ts +0 -1
  57. package/dist/components/molecules/lumi/Checkbox/validation-helpers(1).d.ts +0 -151
  58. package/dist/components/molecules/lumi/DateInput/FormDateInput(1).d.ts +0 -12
  59. package/dist/components/molecules/lumi/DateInput/index(1).d.ts +0 -2
  60. package/dist/components/molecules/lumi/DateInput/use-cases/FormDateInputClearWithResetUseCase(1).d.ts +0 -21
  61. package/dist/components/molecules/lumi/DateInput/use-cases/FormDateInputErrorVisibilityUseCase(1).d.ts +0 -21
  62. package/dist/components/molecules/lumi/Drawer/Drawer(1).d.ts +0 -39
  63. package/dist/components/molecules/lumi/Drawer/index(1).d.ts +0 -2
  64. package/dist/components/molecules/lumi/DropdownMenu/DropdownMenu(1).d.ts +0 -22
  65. package/dist/components/molecules/lumi/DropdownMenu/index(1).d.ts +0 -2
  66. package/dist/components/molecules/lumi/DropdownMenu/types(1).d.ts +0 -29
  67. package/dist/components/molecules/lumi/Filter/FilterRow(1).d.ts +0 -13
  68. package/dist/components/molecules/lumi/Filter/helpers/conditionHelpers(1).d.ts +0 -14
  69. package/dist/components/molecules/lumi/Filter/index(1).d.ts +0 -5
  70. package/dist/components/molecules/lumi/Filter/types(1).d.ts +0 -115
  71. package/dist/components/molecules/lumi/Input/Input(1).d.ts +0 -12
  72. package/dist/components/molecules/lumi/Menu/Menu(1).d.ts +0 -18
  73. package/dist/components/molecules/lumi/Menu/MenuContext(1).d.ts +0 -41
  74. package/dist/components/molecules/lumi/Menu/MenuItem(1).d.ts +0 -6
  75. package/dist/components/molecules/lumi/Menu/MenuItem(2).d.ts +0 -6
  76. package/dist/components/molecules/lumi/Menu/MenuItemGroup(1).d.ts +0 -6
  77. package/dist/components/molecules/lumi/Menu/SubMenu(1).d.ts +0 -6
  78. package/dist/components/molecules/lumi/Menu/iconHelper(1).d.ts +0 -15
  79. package/dist/components/molecules/lumi/Menu/index(1).d.ts +0 -8
  80. package/dist/components/molecules/lumi/Menu/index(2).d.ts +0 -8
  81. package/dist/components/molecules/lumi/Menu/types(1).d.ts +0 -119
  82. package/dist/components/molecules/lumi/Pagination/Pagination(1).d.ts +0 -4
  83. package/dist/components/molecules/lumi/Pagination/index(1).d.ts +0 -2
  84. package/dist/components/molecules/lumi/Select/Select(1).d.ts +0 -14
  85. package/dist/components/molecules/lumi/Select/Select(2).d.ts +0 -14
  86. package/dist/components/molecules/lumi/Select/Select(3).d.ts +0 -14
  87. package/dist/components/molecules/lumi/Select/index(1).d.ts +0 -2
  88. package/dist/components/molecules/lumi/Select/index(2).d.ts +0 -2
  89. package/dist/components/molecules/lumi/Select/use-cases/FormSelectClearWithResetUseCase(1).d.ts +0 -21
  90. package/dist/components/molecules/lumi/Select/use-cases/FormSelectClearWithResetUseCase(2).d.ts +0 -21
  91. package/dist/components/molecules/lumi/Select/use-cases/index(1).d.ts +0 -2
  92. package/dist/components/molecules/lumi/Select/use-cases/index(2).d.ts +0 -2
  93. package/dist/components/molecules/lumi/SessionExpiryPrompt/SessionExpiryPrompt.d.ts +0 -25
  94. package/dist/components/molecules/lumi/SessionExpiryPrompt/index.d.ts +0 -1
  95. package/dist/components/molecules/lumi/Table/Table(1).d.ts +0 -6
  96. package/dist/components/molecules/lumi/Table/Table(2).d.ts +0 -6
  97. package/dist/components/molecules/lumi/Table/index(1).d.ts +0 -2
  98. package/dist/components/molecules/lumi/Table/types(1).d.ts +0 -177
  99. package/dist/components/molecules/lumi/Table/types(2).d.ts +0 -177
  100. package/dist/components/molecules/lumi/Tabs/Tabs(1).d.ts +0 -4
  101. package/dist/components/molecules/lumi/Tabs/Tabs(2).d.ts +0 -4
  102. package/dist/components/molecules/lumi/Tabs/index(1).d.ts +0 -2
  103. package/dist/components/molecules/lumi/Tabs/index(2).d.ts +0 -2
  104. package/dist/components/molecules/lumi/TimeInput/FormTimeInput(1).d.ts +0 -12
  105. package/dist/components/molecules/lumi/TimeInput/use-cases/FormTimeInputClearWithResetUseCase(1).d.ts +0 -21
  106. package/dist/components/molecules/lumi/TimeInput/use-cases/FormTimeInputErrorVisibilityUseCase(1).d.ts +0 -21
  107. package/dist/components/molecules/lumi/TimeInput/use-cases/index(1).d.ts +0 -4
  108. package/dist/components/organisms/chat/Chat/Chat(1).d.ts +0 -12
  109. package/dist/components/organisms/chat/Chat/hooks/useChatHandlers(1).d.ts +0 -15
  110. package/dist/components/organisms/chat/Chat/hooks/useKeyboardLock(1).d.ts +0 -15
  111. package/dist/components/organisms/chat/Chat/index(1).d.ts +0 -3
  112. package/dist/components/organisms/chat/Chat/store/index(1).d.ts +0 -4
  113. package/dist/components/organisms/chat/Chat/use-cases/GroupMessagesByDateUseCase(1).d.ts +0 -20
  114. package/dist/components/organisms/chat/index(1).d.ts +0 -3
  115. package/dist/components/organisms/chat/index(2).d.ts +0 -3
  116. package/dist/components/organisms/lumi/ActionBar/ActionBar(1).d.ts +0 -18
  117. package/dist/components/organisms/lumi/ActionBar/types(1).d.ts +0 -57
  118. package/dist/components/organisms/lumi/BaseNavbar/types(1).d.ts +0 -34
  119. package/dist/components/organisms/lumi/BaseWorkspace/BaseWorkspace(1).d.ts +0 -28
  120. package/dist/components/organisms/lumi/BaseWorkspace/index(1).d.ts +0 -2
  121. package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(1).d.ts +0 -18
  122. package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(2).d.ts +0 -18
  123. package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(3).d.ts +0 -18
  124. package/dist/components/organisms/lumi/Calendar/components/CalendarHeader(1).d.ts +0 -14
  125. package/dist/components/organisms/lumi/Calendar/components/TimeGutter(1).d.ts +0 -10
  126. package/dist/components/organisms/lumi/Calendar/components/TimeGutter(2).d.ts +0 -10
  127. package/dist/components/organisms/lumi/Calendar/hooks/index(1).d.ts +0 -4
  128. package/dist/components/organisms/lumi/Calendar/hooks/useCalendarHeight(1).d.ts +0 -58
  129. package/dist/components/organisms/lumi/Calendar/hooks/useCalendarHeight(2).d.ts +0 -58
  130. package/dist/components/organisms/lumi/Calendar/hooks/useEventLayout(1).d.ts +0 -21
  131. package/dist/components/organisms/lumi/Calendar/hooks/useEventLayout(2).d.ts +0 -21
  132. package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(1).d.ts +0 -14
  133. package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(2).d.ts +0 -14
  134. package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(3).d.ts +0 -14
  135. package/dist/components/organisms/lumi/Calendar/i18n/index(1).d.ts +0 -1
  136. package/dist/components/organisms/lumi/Calendar/i18n/index(2).d.ts +0 -1
  137. package/dist/components/organisms/lumi/Calendar/i18n/translations(1).d.ts +0 -34
  138. package/dist/components/organisms/lumi/Calendar/index(1).d.ts +0 -2
  139. package/dist/components/organisms/lumi/Calendar/utils/dateUtils(1).d.ts +0 -140
  140. package/dist/components/organisms/lumi/Calendar/utils/dateUtils(2).d.ts +0 -140
  141. package/dist/components/organisms/lumi/Calendar/utils/index(1).d.ts +0 -2
  142. package/dist/components/organisms/lumi/Calendar/utils/multiDayUtils(1).d.ts +0 -73
  143. package/dist/components/organisms/lumi/Calendar/views/DayView(1).d.ts +0 -17
  144. package/dist/components/organisms/lumi/Calendar/views/DayView(2).d.ts +0 -17
  145. package/dist/components/organisms/lumi/Calendar/views/MonthView(1).d.ts +0 -17
  146. package/dist/components/organisms/lumi/Calendar/views/MonthView(2).d.ts +0 -17
  147. package/dist/components/organisms/lumi/Calendar/views/WeekView(1).d.ts +0 -19
  148. package/dist/components/organisms/lumi/Calendar/views/WeekView(2).d.ts +0 -19
  149. package/dist/components/organisms/lumi/Calendar/views/YearView(1).d.ts +0 -13
  150. package/dist/components/organisms/lumi/Calendar/views/index(1).d.ts +0 -4
  151. package/dist/components/organisms/lumi/Calendar/views/index(2).d.ts +0 -4
  152. package/dist/components/organisms/lumi/DashboardNavbar/index(1).d.ts +0 -7
  153. package/dist/components/organisms/lumi/DashboardNavbar/types(1).d.ts +0 -52
  154. package/dist/components/organisms/lumi/DashboardWorkspace/DashboardWorkspace(1).d.ts +0 -23
  155. package/dist/components/organisms/lumi/DashboardWorkspace/DashboardWorkspace(2).d.ts +0 -23
  156. package/dist/components/organisms/lumi/DashboardWorkspace/index(1).d.ts +0 -7
  157. package/dist/components/organisms/lumi/DashboardWorkspace/index(2).d.ts +0 -7
  158. package/dist/components/organisms/lumi/DashboardWorkspace/types(1).d.ts +0 -60
  159. package/dist/components/organisms/lumi/DashboardWorkspace/types(2).d.ts +0 -60
  160. package/dist/components/organisms/lumi/DynamicForm/DynamicForm(1).d.ts +0 -21
  161. package/dist/components/organisms/lumi/DynamicForm/helpers/fieldMapper(1).d.ts +0 -17
  162. package/dist/components/organisms/lumi/DynamicForm/helpers/fieldMapper(2).d.ts +0 -17
  163. package/dist/components/organisms/lumi/DynamicForm/helpers/fieldRenderer(1).d.ts +0 -6
  164. package/dist/components/organisms/lumi/DynamicForm/helpers/fieldRenderer(2).d.ts +0 -6
  165. package/dist/components/organisms/lumi/DynamicForm/index(1).d.ts +0 -2
  166. package/dist/components/organisms/lumi/DynamicForm/index(2).d.ts +0 -2
  167. package/dist/components/organisms/lumi/DynamicForm/types(1).d.ts +0 -96
  168. package/dist/components/organisms/lumi/DynamicForm/types(2).d.ts +0 -96
  169. package/dist/components/organisms/lumi/FormDrawer/FormDrawer(1).d.ts +0 -5
  170. package/dist/components/organisms/lumi/FormDrawer/index(1).d.ts +0 -3
  171. package/dist/components/organisms/lumi/FormDrawer/types(1).d.ts +0 -61
  172. package/dist/components/organisms/lumi/FormDrawer/types(2).d.ts +0 -61
  173. package/dist/components/organisms/lumi/Stepper/StepIndicator(1).d.ts +0 -4
  174. package/dist/components/organisms/lumi/Stepper/Stepper(1).d.ts +0 -5
  175. package/dist/components/organisms/lumi/Stepper/index(1).d.ts +0 -3
  176. package/dist/components/organisms/lumi/Stepper/types(1).d.ts +0 -96
  177. package/dist/components/organisms/lumi/Stepper/types(2).d.ts +0 -96
  178. package/dist/components/organisms/lumi/index(1).d.ts +0 -10
  179. package/dist/components/organisms/lumi/index(2).d.ts +0 -10
  180. package/dist/components/templates/chat/ChatWidget/ChatWidget(1).d.ts +0 -10
  181. package/dist/components/templates/chat/ChatWidget/hooks/index(1).d.ts +0 -1
  182. package/dist/components/templates/chat/ChatWidget/index(1).d.ts +0 -2
  183. package/dist/components/templates/chat/ChatWidget/index(2).d.ts +0 -2
  184. package/dist/components/templates/chat/ChatWidget/types(1).d.ts +0 -90
  185. package/dist/components/templates/lumi/Base/hooks/index(1).d.ts +0 -2
  186. package/dist/components/templates/lumi/Base/hooks/useAppHeight(1).d.ts +0 -21
  187. package/dist/components/templates/lumi/Base/index(1).d.ts +0 -2
  188. package/dist/components/templates/lumi/Base/types(1).d.ts +0 -54
  189. package/dist/components/templates/lumi/Crud/Crud(1).d.ts +0 -6
  190. package/dist/components/templates/lumi/Crud/Crud(2).d.ts +0 -6
  191. package/dist/components/templates/lumi/Crud/ScrollToEnd.d.ts +0 -18
  192. package/dist/components/templates/lumi/Crud/helpers/fieldMapper(1).d.ts +0 -13
  193. package/dist/components/templates/lumi/Crud/hooks/useCrudActions(1).d.ts +0 -11
  194. package/dist/components/templates/lumi/Crud/index(1).d.ts +0 -2
  195. package/dist/components/templates/lumi/Crud/store/actions(1).d.ts +0 -45
  196. package/dist/components/templates/lumi/Crud/store/crudStore(1).d.ts +0 -8
  197. package/dist/components/templates/lumi/Crud/store/index(1).d.ts +0 -5
  198. package/dist/components/templates/lumi/Crud/store/types(1).d.ts +0 -71
  199. package/dist/components/templates/lumi/Dashboard/Dashboard(1).d.ts +0 -25
  200. package/dist/components/templates/lumi/Dashboard/hooks/index(1).d.ts +0 -12
  201. package/dist/components/templates/lumi/Dashboard/hooks/index(2).d.ts +0 -12
  202. package/dist/components/templates/lumi/Dashboard/hooks/useDashboardStore(1).d.ts +0 -34
  203. package/dist/components/templates/lumi/Dashboard/hooks/useScrollToTop(1).d.ts +0 -47
  204. package/dist/components/templates/lumi/Dashboard/index(1).d.ts +0 -10
  205. package/dist/components/templates/lumi/Dashboard/store/storeKeys(1).d.ts +0 -13
  206. package/dist/components/templates/lumi/Dashboard/store/types(1).d.ts +0 -73
  207. package/dist/components/templates/lumi/Dashboard/store/types(2).d.ts +0 -73
  208. package/dist/components/templates/lumi/Dashboard/types(1).d.ts +0 -114
  209. package/dist/components/templates/lumi/Dashboard/types(2).d.ts +0 -114
  210. package/dist/components/templates/lumi/index(1).d.ts +0 -3
  211. package/dist/core/chat/ChatConfigContext(1).d.ts +0 -36
  212. package/dist/index(1).esm.js +0 -19378
  213. package/dist/index(1).js +0 -19487
@@ -1,177 +0,0 @@
1
- import type { ReactNode } from "react";
2
- export type Align = "left" | "center" | "right";
3
- export type FixedSide = "left" | "right";
4
- export type CellType = "CHILDREN" | "ACTION" | "FREE" | "BUTTON" | "INPUT" | "SELECT" | "DATE_INPUT" | "TIME_INPUT" | "CHECKBOX" | "INPUT_MOLECULE" | "SELECT_MOLECULE" | "DATE_INPUT_MOLECULE" | "TIME_INPUT_MOLECULE" | "CHECKBOX_MOLECULE";
5
- export interface ScrollConfig {
6
- /**
7
- * Ancho total de la tabla para scroll horizontal
8
- * - Número: píxeles (ej: 1500)
9
- * - String: '100%', 'max-content', etc.
10
- * ⚠️ OBLIGATORIO para columnas fijas
11
- */
12
- x?: number | string;
13
- /**
14
- * Alto de la tabla para scroll vertical
15
- * - Número: píxeles (ej: 400)
16
- * - String: '50vh', '400px', etc.
17
- */
18
- y?: number | string;
19
- }
20
- export interface TableProps<T extends object> {
21
- /** Array de datos a mostrar en la tabla */
22
- dataSource: T[];
23
- /** Configuración de columnas */
24
- columns: Array<ColumnUI<T>>;
25
- /**
26
- * Callback para eventos de la tabla (row click, actions)
27
- * ⚠️ Nota: Los eventos de átomos lumi (onChange de INPUT, SELECT, etc.)
28
- * se manejan directamente en uiProps, NO pasan por este callback
29
- */
30
- onChange?: (info: ChangeInfo<T>) => void;
31
- /**
32
- * Configuración de scroll horizontal y vertical
33
- * ⚠️ OBLIGATORIO si usas columnas con `fixed`
34
- * @example scroll={{ x: 1500, y: 400 }}
35
- */
36
- scroll?: ScrollConfig;
37
- /** Clase CSS adicional */
38
- className?: string;
39
- /** Habilitar virtualización para grandes volúmenes de datos */
40
- virtualize?: boolean;
41
- /**
42
- * @deprecated Este parámetro está deprecado. Usa `height` en su lugar.
43
- * Cantidad de filas a mostrar antes de activar scroll vertical
44
- * Si no se especifica, muestra todas las filas sin scroll
45
- * @example rowsToShow={10} // Muestra 10 filas, el resto con scroll
46
- */
47
- rowsToShow?: number;
48
- /**
49
- * Altura de la tabla (opcional)
50
- * - Si se especifica: La tabla tendrá esa altura fija con scroll vertical
51
- * - Si NO se especifica: La tabla tendrá altura automática según su contenido
52
- * @example height={400} // 400px de altura fija
53
- * @example height="50vh" // 50% del viewport
54
- * @example height="auto" // Altura automática (mismo efecto que no especificar)
55
- */
56
- height?: number | string;
57
- /**
58
- * Mostrar líneas horizontales entre filas
59
- * Por defecto: true (líneas sutiles entre filas)
60
- */
61
- bordered?: boolean;
62
- /** Estilo compacto (padding reducido) */
63
- compact?: boolean;
64
- /** Mostrar hover en las filas */
65
- hoverable?: boolean;
66
- /** Filas alternas con background color (zebra striping) */
67
- striped?: boolean;
68
- /**
69
- * Función para obtener key único de cada fila
70
- * Si no se proporciona, usa el índice (no recomendado para listas dinámicas)
71
- * @example rowKey={(item) => item.id}
72
- */
73
- rowKey?: (item: T, index: number) => string | number;
74
- /** Mensaje cuando no hay datos */
75
- emptyText?: string;
76
- /** Mostrar estado de carga */
77
- loading?: boolean;
78
- /** Test ID para testing */
79
- "data-testid"?: string;
80
- /** Habilitar selección de filas */
81
- selectable?: boolean;
82
- /** Tipo de selección */
83
- selectionType?: "checkbox" | "radio";
84
- /**
85
- * Filas seleccionadas (controlled component)
86
- * Array de keys de las filas seleccionadas
87
- */
88
- selectedRowKeys?: string[];
89
- /**
90
- * Callback cuando cambia la selección
91
- * @param selectedKeys - Array de keys seleccionadas
92
- * @param selectedRows - Array de filas completas seleccionadas
93
- */
94
- onSelectionChange?: (selectedKeys: string[], selectedRows: T[]) => void;
95
- /**
96
- * Keys de filas que deben estar deshabilitadas para selección
97
- */
98
- disabledRowKeys?: string[];
99
- /**
100
- * Mostrar checkbox "Seleccionar todo" en el header
101
- * Por defecto: true
102
- */
103
- showSelectAll?: boolean;
104
- /**
105
- * Ancho de la columna de selección
106
- * Por defecto: '70px'
107
- * Nota: La columna de selección siempre está fija a la izquierda
108
- */
109
- selectionColumnWidth?: string;
110
- }
111
- export interface ColumnUI<T> {
112
- /** Identificador único de la columna */
113
- key: string;
114
- /** Título de la columna (header) */
115
- title?: string;
116
- /** Alineación del contenido de la celda */
117
- align?: Align;
118
- /**
119
- * Ancho de la columna:
120
- * - Sin width: Auto (se ajusta al contenido)
121
- * - Número: Fracción relativa flex (ej: 2 = 2 partes del espacio disponible)
122
- * - String: Valor CSS exacto (ej: '200px', '20%', '10rem')
123
- * ⚠️ OBLIGATORIO para columnas con `fixed`
124
- */
125
- width?: number | string;
126
- /**
127
- * Fijar columna a la izquierda o derecha (sticky)
128
- * Las columnas fijas permanecen visibles al hacer scroll horizontal
129
- * ⚠️ Requiere definir `width` y `scroll.x` en la tabla
130
- */
131
- fixed?: FixedSide;
132
- /** Tipo de celda a renderizar */
133
- cellType?: CellType;
134
- /** Configuración de origen de datos para la celda */
135
- dataSource?: ColumnDataSource<T>;
136
- /** Elemento React para renderizar (usado con cellType='CHILDREN') */
137
- element?: ReactNode;
138
- /** Props a pasar al átomo/molécula lumi (usado con cellType='BUTTON', 'INPUT', etc.) */
139
- uiProps?: Record<string, unknown>;
140
- /** Clase CSS adicional para la columna */
141
- className?: string;
142
- }
143
- export interface ColumnDataSource<T> {
144
- /** Función para obtener el ID único del elemento */
145
- id?: (item: T, index: number) => string | number;
146
- /** Función para obtener el texto a mostrar */
147
- text?: (item: T, index: number) => string | number | ReactNode;
148
- /** Función para obtener el estado/variante (para BADGE_UI) */
149
- status?: (item: T, index: number) => "default" | "success" | "warning" | "error" | "info" | string;
150
- /** Función para construir un elemento React personalizado */
151
- build?: (item: T, index: number) => ReactNode;
152
- /** Función para obtener el valor raw (útil para átomos lumi) */
153
- raw?: (item: T, index: number) => unknown;
154
- }
155
- export interface ChangeInfo<T = unknown> {
156
- /**
157
- * Tipo de evento de la tabla
158
- * - 'row-click': Click en una fila
159
- * - 'action': Click en un action (botón, etc.)
160
- * - 'select': Selección de filas (Fase 2)
161
- */
162
- type: "row-click" | "action" | "select";
163
- /** Datos del evento */
164
- payload: {
165
- /** Fila completa con todos sus datos */
166
- row: T;
167
- /** Índice de la fila en el dataSource */
168
- rowIndex: number;
169
- /** Key de la columna (solo para 'action') */
170
- columnKey?: string;
171
- /** Datos adicionales opcionales */
172
- meta?: Record<string, unknown>;
173
- };
174
- }
175
- export interface ValidatedColumn<T> extends ColumnUI<T> {
176
- originalIndex: number;
177
- }
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import type { TabsProps } from './types';
3
- import './Tabs.scss';
4
- export declare const Tabs: React.FC<TabsProps>;
@@ -1,4 +0,0 @@
1
- import React from 'react';
2
- import type { TabsProps } from './types';
3
- import './Tabs.scss';
4
- export declare const Tabs: React.FC<TabsProps>;
@@ -1,2 +0,0 @@
1
- export { Tabs } from './Tabs';
2
- export type { TabsProps, TabItem, TabType, TabPosition, TabSize } from './types';
@@ -1,2 +0,0 @@
1
- export { Tabs } from './Tabs';
2
- export type { TabsProps, TabItem, TabType, TabPosition, TabSize } from './types';
@@ -1,12 +0,0 @@
1
- import { type Control } from "react-hook-form";
2
- import { type TimeInputProps as LumiTimeInputProps } from "../../../atoms/lumi/TimeInput";
3
- export interface TimeInputProps extends Omit<LumiTimeInputProps, "error" | "onChange" | "value" | "onBlur" | "name" | "clearWithReset"> {
4
- name: string;
5
- control: Control<any>;
6
- clearWithReset?: boolean | string | number;
7
- }
8
- export declare const TimeInput: {
9
- ({ name, control, clearWithReset, onClear, ...props }: TimeInputProps): import("react/jsx-runtime").JSX.Element;
10
- displayName: string;
11
- };
12
- export default TimeInput;
@@ -1,21 +0,0 @@
1
- import type { Control, ControllerRenderProps } from 'react-hook-form';
2
- export interface FormTimeInputClearWithResetOptions {
3
- clearWithReset: boolean | string | number;
4
- name: string;
5
- control: Control<any>;
6
- field: ControllerRenderProps<any, string>;
7
- wasClearedRef: {
8
- current: boolean;
9
- };
10
- onClear?: () => void;
11
- }
12
- /**
13
- * Hook personalizado para manejar la funcionalidad de limpiar con reset
14
- * en formularios con React Hook Form para TimeInput
15
- *
16
- * @param options - Configuración para el manejo de clear con reset
17
- * @returns Función handleClear que maneja el reset y limpieza de errores
18
- */
19
- export declare const useFormTimeInputClearWithReset: (options: FormTimeInputClearWithResetOptions) => {
20
- handleClear: () => void;
21
- };
@@ -1,21 +0,0 @@
1
- import type { Control, ControllerRenderProps } from 'react-hook-form';
2
- export interface FormTimeInputErrorVisibilityOptions {
3
- clearWithReset: boolean | string | number;
4
- hasError: string | undefined;
5
- wasClearedRef: {
6
- current: boolean;
7
- };
8
- field: ControllerRenderProps<any, string>;
9
- control: Control<any>;
10
- name: string;
11
- }
12
- /**
13
- * Hook personalizado para manejar la visibilidad de errores en TimeInput
14
- * considerando la funcionalidad clearWithReset
15
- *
16
- * @param options - Configuración para el manejo de visibilidad de errores
17
- * @returns shouldShowError - Boolean que indica si se debe mostrar el error
18
- */
19
- export declare const useFormTimeInputErrorVisibility: (options: FormTimeInputErrorVisibilityOptions) => {
20
- shouldShowError: boolean;
21
- };
@@ -1,4 +0,0 @@
1
- export { useFormTimeInputErrorVisibility } from './FormTimeInputErrorVisibilityUseCase';
2
- export { useFormTimeInputClearWithReset } from './FormTimeInputClearWithResetUseCase';
3
- export type { FormTimeInputErrorVisibilityOptions } from './FormTimeInputErrorVisibilityUseCase';
4
- export type { FormTimeInputClearWithResetOptions } from './FormTimeInputClearWithResetUseCase';
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- import type { ChatEventBus } from "../../../../core/eventBus";
3
- import type { ChatConfig, ChatMessage } from "../../../../core/chat";
4
- export type { ChatMessage };
5
- export interface ChatProps {
6
- /** Configuración estática/visual del chat */
7
- config?: Partial<ChatConfig>;
8
- /** EventBus para comunicación bidireccional */
9
- eventBus: ChatEventBus;
10
- }
11
- export declare const Chat: React.FC<ChatProps>;
12
- export default Chat;
@@ -1,15 +0,0 @@
1
- export interface UseChatHandlersOptions {
2
- onSend: (content: string, files?: File[]) => void;
3
- onInputChange: (value: string) => void;
4
- clearAttachments: () => void;
5
- scrollToLastUserMessage: () => void;
6
- }
7
- export interface UseChatHandlersReturn {
8
- handleSendWithFiles: (content: string, files?: File[]) => void;
9
- handleInputKeyDown: (e: React.KeyboardEvent<HTMLTextAreaElement>, inputValue: string, attachments: File[]) => void;
10
- }
11
- /**
12
- * Hook para manejar las acciones del chat como envío de mensajes
13
- * Centraliza la lógica de envío y manejo de eventos del input
14
- */
15
- export declare const useChatHandlers: ({ onSend, onInputChange, clearAttachments, scrollToLastUserMessage }: UseChatHandlersOptions) => UseChatHandlersReturn;
@@ -1,15 +0,0 @@
1
- export interface UseKeyboardLockOptions {
2
- textareaSelector: string;
3
- }
4
- /**
5
- * Proxy-textarea approach to prevent iOS Safari keyboard scroll jump.
6
- *
7
- * When the keyboard is closed and the user taps the real textarea,
8
- * we intercept the touch → focus an invisible proxy textarea at top:0
9
- * (Safari opens the keyboard without scrolling) → once the keyboard
10
- * settles (debounced visualViewport.resize) → transfer focus to the
11
- * real textarea (keyboard stays open, no re-scroll).
12
- *
13
- * No-op on desktop/Android.
14
- */
15
- export declare function useKeyboardLock({ textareaSelector }: UseKeyboardLockOptions): void;
@@ -1,3 +0,0 @@
1
- export { Chat } from './Chat';
2
- export type { ChatProps } from './Chat';
3
- export type { ChatMessage } from '../../../../core/chat';
@@ -1,4 +0,0 @@
1
- export { chatStore, setChatStore, subscribeChatProperty } from './chatStore';
2
- export type { ChatStoreState } from './types';
3
- export { CHAT_STORE_KEYS } from './storeKeys';
4
- export { textareaActions, keyboardActions, chatInputActions, thinkingActions, scrollButtonActions, scrollToTopActions, combinedActions } from './actions';
@@ -1,20 +0,0 @@
1
- import type { ChatMessage } from '../Chat';
2
- /**
3
- * Caso de uso: Agrupar Mensajes por Fecha
4
- * Responsabilidad: Organizar mensajes por fecha para mostrarlos con separadores de fecha
5
- */
6
- export interface MessageGroup {
7
- date: Date;
8
- messages: ChatMessage[];
9
- }
10
- export interface GroupMessagesByDateRequest {
11
- messages: ChatMessage[];
12
- }
13
- export interface GroupMessagesByDateResponse {
14
- success: boolean;
15
- groups: MessageGroup[];
16
- error?: string;
17
- }
18
- export declare class GroupMessagesByDateUseCase {
19
- execute(request: GroupMessagesByDateRequest): GroupMessagesByDateResponse;
20
- }
@@ -1,3 +0,0 @@
1
- export { Chat } from './Chat';
2
- export type { ChatProps } from './Chat';
3
- export type { ChatMessage } from '../../../core/chat';
@@ -1,3 +0,0 @@
1
- export { Chat } from './Chat';
2
- export type { ChatProps } from './Chat';
3
- export type { ChatMessage } from '../../../core/chat';
@@ -1,18 +0,0 @@
1
- import React from "react";
2
- import type { ActionBarProps } from "./types";
3
- import "./ActionBar.scss";
4
- /**
5
- * ActionBar - Organismo de Lumi
6
- *
7
- * Barra de acciones con botones que se habilitan/deshabilitan dinámicamente
8
- * según el estado de selección de filas en una tabla.
9
- *
10
- * @example
11
- * ```tsx
12
- * <ActionBar
13
- * actions={crudActions}
14
- * selectedCount={selectedKeys.length}
15
- * />
16
- * ```
17
- */
18
- export declare const ActionBar: React.FC<ActionBarProps>;
@@ -1,57 +0,0 @@
1
- import type { LumiIconType } from '../../../atoms/lumi/Icon';
2
- /**
3
- * Condición para habilitar un botón de acción
4
- */
5
- export type EnableCondition = 'always' | 'none-selected' | 'one-selected' | 'many-selected' | 'any-selected';
6
- /**
7
- * Configuración de una acción individual
8
- */
9
- export interface ActionConfig {
10
- /** Key única de la acción */
11
- key: string;
12
- /** Label del botón */
13
- label: string;
14
- /** Icono del botón (tipo de icono Lumi) */
15
- icon?: LumiIconType;
16
- /** Callback al hacer click */
17
- onClick: () => void;
18
- /** Condición para habilitar el botón */
19
- enableWhen?: EnableCondition;
20
- /** Variante del botón */
21
- variant?: 'primary' | 'secondary' | 'ghost' | 'danger';
22
- /** Deshabilitar esta acción específica */
23
- disabled?: boolean;
24
- /** Mostrar badge con contador */
25
- showBadge?: boolean;
26
- /** Valor del badge */
27
- badgeValue?: number | string;
28
- /** Tooltip del botón */
29
- tooltip?: string;
30
- /** Orden de renderizado (menor primero) */
31
- order?: number;
32
- /** Posición del botón (izquierda o derecha) */
33
- position?: 'left' | 'right';
34
- }
35
- /**
36
- * Props del componente ActionBar
37
- */
38
- export interface ActionBarProps {
39
- /** Acciones a mostrar en la barra */
40
- actions: ActionConfig[];
41
- /** Número de filas seleccionadas (para habilitar/deshabilitar botones) */
42
- selectedCount: number;
43
- /** Deshabilitar toda la barra */
44
- disabled?: boolean;
45
- /** Alineación de los botones */
46
- align?: 'left' | 'center' | 'right' | 'space-between';
47
- /** Tamaño de los botones */
48
- size?: 'small' | 'medium' | 'large';
49
- /** Mostrar labels en los botones (por defecto: true) */
50
- showLabels?: boolean;
51
- /** Mostrar labels en mobile */
52
- showLabelsOnMobile?: boolean;
53
- /** Clase CSS adicional */
54
- className?: string;
55
- /** Test ID */
56
- 'data-testid'?: string;
57
- }
@@ -1,34 +0,0 @@
1
- import type { ReactNode } from 'react';
2
- /**
3
- * Props del organismo BaseNavbar
4
- */
5
- export interface BaseNavbarProps {
6
- /**
7
- * Contenido del navbar (cualquier ReactNode)
8
- * Puede incluir logos, menús, botones, breadcrumbs, etc.
9
- */
10
- children?: ReactNode;
11
- /**
12
- * Altura del navbar en píxeles
13
- * @default 64
14
- */
15
- height?: number;
16
- /**
17
- * Color de fondo del navbar
18
- * @default '#ffffff'
19
- */
20
- backgroundColor?: string;
21
- /**
22
- * Mostrar sombra inferior en el navbar
23
- * @default true
24
- */
25
- showShadow?: boolean;
26
- /**
27
- * Clase CSS adicional
28
- */
29
- className?: string;
30
- /**
31
- * Test ID para testing
32
- */
33
- 'data-testid'?: string;
34
- }
@@ -1,28 +0,0 @@
1
- import { type FC } from 'react';
2
- import type { BaseWorkspaceProps } from './types';
3
- import './BaseWorkspace.scss';
4
- /**
5
- * BaseWorkspace - Organismo de Lumi
6
- *
7
- * Área de trabajo principal con scroll automático y botón "volver arriba".
8
- * Parte del Template Base para layouts simples.
9
- *
10
- * Características:
11
- * - Scroll automático
12
- * - Altura adaptativa (calc(var(--app-height) - navbarHeight))
13
- * - Botón "volver arriba" opcional (aparece en scrollTop > 300px)
14
- * - Padding personalizable
15
- * - Color de fondo personalizable
16
- *
17
- * @example
18
- * ```tsx
19
- * <BaseWorkspace
20
- * navbarHeight={64}
21
- * enableScrollToTop={true}
22
- * padding="24px"
23
- * >
24
- * <MainContent />
25
- * </BaseWorkspace>
26
- * ```
27
- */
28
- export declare const BaseWorkspace: FC<BaseWorkspaceProps>;
@@ -1,2 +0,0 @@
1
- export { BaseWorkspace } from './BaseWorkspace';
2
- export type { BaseWorkspaceProps } from './types';
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import type { ProcessedEvent, CalendarView, EventRenderProps } from '../types';
3
- interface CalendarEventProps {
4
- event: ProcessedEvent;
5
- view: CalendarView;
6
- style: React.CSSProperties;
7
- color: {
8
- background: string;
9
- text: string;
10
- border?: string;
11
- };
12
- onClick?: (event: ProcessedEvent, e: React.MouseEvent) => void;
13
- renderEvent?: (props: EventRenderProps) => React.ReactNode;
14
- locale?: string;
15
- showPopover?: boolean;
16
- }
17
- export declare const CalendarEvent: React.FC<CalendarEventProps>;
18
- export {};
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import type { ProcessedEvent, CalendarView, EventRenderProps } from '../types';
3
- interface CalendarEventProps {
4
- event: ProcessedEvent;
5
- view: CalendarView;
6
- style: React.CSSProperties;
7
- color: {
8
- background: string;
9
- text: string;
10
- border?: string;
11
- };
12
- onClick?: (event: ProcessedEvent, e: React.MouseEvent) => void;
13
- renderEvent?: (props: EventRenderProps) => React.ReactNode;
14
- locale?: string;
15
- showPopover?: boolean;
16
- }
17
- export declare const CalendarEvent: React.FC<CalendarEventProps>;
18
- export {};
@@ -1,18 +0,0 @@
1
- import React from 'react';
2
- import type { ProcessedEvent, CalendarView, EventRenderProps } from '../types';
3
- interface CalendarEventProps {
4
- event: ProcessedEvent;
5
- view: CalendarView;
6
- style: React.CSSProperties;
7
- color: {
8
- background: string;
9
- text: string;
10
- border?: string;
11
- };
12
- onClick?: (event: ProcessedEvent, e: React.MouseEvent) => void;
13
- renderEvent?: (props: EventRenderProps) => React.ReactNode;
14
- locale?: string;
15
- showPopover?: boolean;
16
- }
17
- export declare const CalendarEvent: React.FC<CalendarEventProps>;
18
- export {};
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- import type { CalendarView, CalendarLabels } from '../types';
3
- interface CalendarHeaderProps {
4
- title: string;
5
- view: CalendarView;
6
- availableViews: CalendarView[];
7
- onPrev: () => void;
8
- onNext: () => void;
9
- onToday: () => void;
10
- onViewChange: (view: CalendarView) => void;
11
- labels?: CalendarLabels;
12
- }
13
- export declare const CalendarHeader: React.FC<CalendarHeaderProps>;
14
- export {};
@@ -1,10 +0,0 @@
1
- import React from 'react';
2
- import type { TimeSlot } from '../types';
3
- interface TimeGutterProps {
4
- slots: TimeSlot[];
5
- slotHeight: number;
6
- slotInterval: 15 | 30 | 60;
7
- totalHeight?: number;
8
- }
9
- export declare const TimeGutter: React.FC<TimeGutterProps>;
10
- export {};
@@ -1,10 +0,0 @@
1
- import React from 'react';
2
- import type { TimeSlot } from '../types';
3
- interface TimeGutterProps {
4
- slots: TimeSlot[];
5
- slotHeight: number;
6
- slotInterval: 15 | 30 | 60;
7
- totalHeight?: number;
8
- }
9
- export declare const TimeGutter: React.FC<TimeGutterProps>;
10
- export {};
@@ -1,4 +0,0 @@
1
- export * from './useCalendarNavigation';
2
- export * from './useTimeSlots';
3
- export * from './useEventLayout';
4
- export * from './useCalendarHeight';
@@ -1,58 +0,0 @@
1
- import { type RefObject } from 'react';
2
- interface UseCalendarHeightOptions {
3
- /**
4
- * Altura fija proporcionada por el usuario
5
- * Si es 'auto', calculará la altura disponible
6
- */
7
- height?: string | number;
8
- /**
9
- * Offset adicional a restar (ej: para márgenes externos)
10
- * @default 0
11
- */
12
- offset?: number;
13
- /**
14
- * Altura mínima del calendario
15
- * @default 400
16
- */
17
- minHeight?: number;
18
- /**
19
- * Referencia al contenedor padre para calcular altura relativa
20
- */
21
- containerRef?: RefObject<HTMLElement>;
22
- }
23
- interface UseCalendarHeightReturn {
24
- /**
25
- * Altura calculada en píxeles o string CSS
26
- */
27
- calculatedHeight: string;
28
- /**
29
- * Forzar recálculo de altura
30
- */
31
- recalculate: () => void;
32
- }
33
- /**
34
- * Hook para manejar la altura del calendario
35
- *
36
- * Calcula automáticamente la altura disponible basándose en:
37
- * - El viewport (usando visualViewport para móviles)
38
- * - El contenedor padre si se proporciona
39
- * - Una altura fija si se especifica
40
- *
41
- * @example
42
- * // Altura automática
43
- * const { calculatedHeight } = useCalendarHeight({ height: 'auto' });
44
- *
45
- * @example
46
- * // Altura fija
47
- * const { calculatedHeight } = useCalendarHeight({ height: 600 });
48
- *
49
- * @example
50
- * // Relativa al contenedor
51
- * const containerRef = useRef<HTMLDivElement>(null);
52
- * const { calculatedHeight } = useCalendarHeight({
53
- * height: 'auto',
54
- * containerRef
55
- * });
56
- */
57
- export declare const useCalendarHeight: ({ height, offset, minHeight, containerRef, }?: UseCalendarHeightOptions) => UseCalendarHeightReturn;
58
- export default useCalendarHeight;