@sfperusacdev/sf-ui 0.2.9 → 0.3.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.
Files changed (300) hide show
  1. package/dist/sf-ui.css +1 -1
  2. package/dist/sf-ui.js +5607 -2932
  3. package/dist/sf-ui.js.map +1 -1
  4. package/dist/sf-ui.umd.cjs +7 -7
  5. package/dist/sf-ui.umd.cjs.map +1 -1
  6. package/dist/theme/dark.css +13 -0
  7. package/dist/theme/densidad.css +291 -0
  8. package/dist/theme/neon.css +185 -0
  9. package/dist/theme/sf-tokens.css +18 -0
  10. package/dist/theme/temas.css +229 -0
  11. package/dist/types/src/components/advanced-inputs/CodeEditor.d.ts +1 -1
  12. package/dist/types/src/components/advanced-inputs/MapGeocoderBar.d.ts +1 -1
  13. package/dist/types/src/components/advanced-inputs/MapPicker.d.ts +1 -1
  14. package/dist/types/src/components/advanced-inputs/MapPickerMap.d.ts +1 -1
  15. package/dist/types/src/components/advanced-inputs/PhotoInput.d.ts +1 -1
  16. package/dist/types/src/components/advanced-inputs/RichTextEditor.d.ts +1 -1
  17. package/dist/types/src/components/advanced-inputs/SignaturePad.d.ts +1 -1
  18. package/dist/types/src/components/buttons/ActionButton.d.ts +1 -1
  19. package/dist/types/src/components/buttons/Button.d.ts +1 -1
  20. package/dist/types/src/components/buttons/ButtonGroup.d.ts +1 -1
  21. package/dist/types/src/components/buttons/FormActions.d.ts +1 -1
  22. package/dist/types/src/components/buttons/RowActions.d.ts +1 -1
  23. package/dist/types/src/components/buttons/ToolbarButton.d.ts +1 -1
  24. package/dist/types/src/components/cards/Badge.d.ts +7 -1
  25. package/dist/types/src/components/cards/EntityCard.d.ts +2 -2
  26. package/dist/types/src/components/cards/KPICard.d.ts +2 -2
  27. package/dist/types/src/components/cards/MetricBar.caracterizacion.test.d.ts +1 -0
  28. package/dist/types/src/components/cards/MetricBar.d.ts +5 -3
  29. package/dist/types/src/components/cards/MetricBar.disposiciones.test.d.ts +1 -0
  30. package/dist/types/src/components/cards/ModuleCard.d.ts +2 -2
  31. package/dist/types/src/components/cards/ProfileCard.d.ts +27 -0
  32. package/dist/types/src/components/cards/ProfileCard.test.d.ts +1 -0
  33. package/dist/types/src/components/cards/QuickActionTile.d.ts +2 -2
  34. package/dist/types/src/components/cards/QuoteCard.d.ts +11 -0
  35. package/dist/types/src/components/cards/QuoteCard.test.d.ts +1 -0
  36. package/dist/types/src/components/cards/RecommendationCard.d.ts +1 -1
  37. package/dist/types/src/components/cards/SplitBar.d.ts +1 -1
  38. package/dist/types/src/components/cards/index.d.ts +6 -2
  39. package/dist/types/src/components/cards/types.d.ts +19 -0
  40. package/dist/types/src/components/charts/Chart.colores.test.d.ts +1 -0
  41. package/dist/types/src/components/charts/Chart.d.ts +1 -1
  42. package/dist/types/src/components/charts/ChartLegend.caracterizacion.test.d.ts +1 -0
  43. package/dist/types/src/components/charts/ChartLegend.d.ts +22 -1
  44. package/dist/types/src/components/charts/DeviationBand.d.ts +1 -1
  45. package/dist/types/src/components/charts/DiagnosticRadar.d.ts +1 -1
  46. package/dist/types/src/components/charts/Sparkline.d.ts +1 -1
  47. package/dist/types/src/components/charts/chartUtils.d.ts +6 -0
  48. package/dist/types/src/components/charts/index.d.ts +2 -2
  49. package/dist/types/src/components/charts/types.d.ts +5 -0
  50. package/dist/types/src/components/dashboard/AlertSummaryList.d.ts +1 -1
  51. package/dist/types/src/components/dashboard/Calendar.d.ts +1 -1
  52. package/dist/types/src/components/dashboard/CardNote.d.ts +1 -1
  53. package/dist/types/src/components/dashboard/ComparisonTable.d.ts +1 -1
  54. package/dist/types/src/components/dashboard/DashboardBoard.d.ts +2 -2
  55. package/dist/types/src/components/dashboard/DashboardCard.d.ts +5 -5
  56. package/dist/types/src/components/dashboard/DashboardPageFrame.d.ts +1 -1
  57. package/dist/types/src/components/dashboard/DashboardPlaceholder.d.ts +1 -1
  58. package/dist/types/src/components/dashboard/DetailPanel.d.ts +1 -1
  59. package/dist/types/src/components/dashboard/DetailSection.d.ts +1 -1
  60. package/dist/types/src/components/dashboard/DetailSidePanel.d.ts +1 -1
  61. package/dist/types/src/components/dashboard/DonutBreakdown.d.ts +1 -1
  62. package/dist/types/src/components/dashboard/DonutGauge.caracterizacion.test.d.ts +1 -0
  63. package/dist/types/src/components/dashboard/DonutGauge.d.ts +6 -2
  64. package/dist/types/src/components/dashboard/DonutGauge.degradado.test.d.ts +1 -0
  65. package/dist/types/src/components/dashboard/DrilldownCards.d.ts +3 -3
  66. package/dist/types/src/components/dashboard/EventLog.d.ts +3 -3
  67. package/dist/types/src/components/dashboard/EvidenceFootnote.d.ts +1 -1
  68. package/dist/types/src/components/dashboard/MetricTile.d.ts +24 -0
  69. package/dist/types/src/components/dashboard/MetricTile.test.d.ts +1 -0
  70. package/dist/types/src/components/dashboard/Seleccion.test.d.ts +1 -0
  71. package/dist/types/src/components/dashboard/StageFlow.caracterizacion.test.d.ts +1 -0
  72. package/dist/types/src/components/dashboard/StageFlow.d.ts +43 -0
  73. package/dist/types/src/components/dashboard/StageFlow.test.d.ts +1 -0
  74. package/dist/types/src/components/dashboard/StatCard.d.ts +1 -1
  75. package/dist/types/src/components/dashboard/StateChain.d.ts +28 -0
  76. package/dist/types/src/components/dashboard/StateChain.test.d.ts +1 -0
  77. package/dist/types/src/components/dashboard/StateChain.vertical.test.d.ts +1 -0
  78. package/dist/types/src/components/dashboard/Stepper.caracterizacion.test.d.ts +1 -0
  79. package/dist/types/src/components/dashboard/Stepper.d.ts +3 -1
  80. package/dist/types/src/components/dashboard/Stepper.icono.test.d.ts +1 -0
  81. package/dist/types/src/components/dashboard/TramoCard.d.ts +1 -1
  82. package/dist/types/src/components/dashboard/index.d.ts +6 -0
  83. package/dist/types/src/components/dashboard/types.d.ts +4 -0
  84. package/dist/types/src/components/display/AuditTimeline.cadena.test.d.ts +1 -0
  85. package/dist/types/src/components/display/AuditTimeline.caracterizacion.test.d.ts +1 -0
  86. package/dist/types/src/components/display/AuditTimeline.d.ts +7 -1
  87. package/dist/types/src/components/display/Avatar.d.ts +2 -2
  88. package/dist/types/src/components/display/Carousel.d.ts +1 -1
  89. package/dist/types/src/components/display/CheckList.d.ts +19 -0
  90. package/dist/types/src/components/display/CheckList.test.d.ts +1 -0
  91. package/dist/types/src/components/display/LiveChip.d.ts +1 -1
  92. package/dist/types/src/components/display/LiveStatusBar.d.ts +1 -1
  93. package/dist/types/src/components/display/MediaGallery.d.ts +41 -0
  94. package/dist/types/src/components/display/MediaGallery.test.d.ts +1 -0
  95. package/dist/types/src/components/display/MediaPanel.d.ts +4 -1
  96. package/dist/types/src/components/display/PassengerBoardCard.d.ts +1 -1
  97. package/dist/types/src/components/display/RecordList.caracterizacion.test.d.ts +1 -0
  98. package/dist/types/src/components/display/RecordList.compacta.test.d.ts +1 -0
  99. package/dist/types/src/components/display/RecordList.d.ts +15 -2
  100. package/dist/types/src/components/display/Timeline.caracterizacion.test.d.ts +1 -0
  101. package/dist/types/src/components/display/Timeline.columnas.test.d.ts +1 -0
  102. package/dist/types/src/components/display/Timeline.d.ts +22 -1
  103. package/dist/types/src/components/display/Timeline.horizontal.test.d.ts +1 -0
  104. package/dist/types/src/components/display/index.d.ts +8 -4
  105. package/dist/types/src/components/display/mediaGalleryFoco.d.ts +1 -0
  106. package/dist/types/src/components/display/mediaGalleryFoco.test.d.ts +1 -0
  107. package/dist/types/src/components/document-inputs/CurrencyInput.d.ts +1 -1
  108. package/dist/types/src/components/document-inputs/DniInput.d.ts +1 -1
  109. package/dist/types/src/components/document-inputs/OtpInput.d.ts +1 -1
  110. package/dist/types/src/components/document-inputs/PhoneInput.d.ts +1 -1
  111. package/dist/types/src/components/document-inputs/RucInput.d.ts +1 -1
  112. package/dist/types/src/components/feedback/AccessDenied.d.ts +1 -1
  113. package/dist/types/src/components/feedback/Alert.d.ts +1 -1
  114. package/dist/types/src/components/feedback/EmptyState.d.ts +1 -1
  115. package/dist/types/src/components/feedback/ErrorView.d.ts +1 -1
  116. package/dist/types/src/components/feedback/LoadingView.d.ts +1 -1
  117. package/dist/types/src/components/feedback/RetryBlock.d.ts +1 -1
  118. package/dist/types/src/components/feedback/Skeleton.d.ts +1 -1
  119. package/dist/types/src/components/feedback/Spinner.d.ts +1 -1
  120. package/dist/types/src/components/feedback/Toast.d.ts +1 -1
  121. package/dist/types/src/components/icons/AppsGridIcon.d.ts +1 -1
  122. package/dist/types/src/components/icons/SyncIcon.d.ts +1 -1
  123. package/dist/types/src/components/inputs/AsyncCardSelect.d.ts +1 -1
  124. package/dist/types/src/components/inputs/AsyncSearchSelect.d.ts +1 -1
  125. package/dist/types/src/components/inputs/AsyncSearchTableSelect.d.ts +1 -1
  126. package/dist/types/src/components/inputs/BooleanCheckbox.d.ts +1 -1
  127. package/dist/types/src/components/inputs/CardSelect.d.ts +1 -1
  128. package/dist/types/src/components/inputs/Checkbox.d.ts +1 -1
  129. package/dist/types/src/components/inputs/CheckboxGroup.d.ts +1 -1
  130. package/dist/types/src/components/inputs/DateInput.d.ts +1 -1
  131. package/dist/types/src/components/inputs/DatePicker.d.ts +1 -1
  132. package/dist/types/src/components/inputs/DisplayField.d.ts +1 -1
  133. package/dist/types/src/components/inputs/FieldLeadingIcon.d.ts +1 -1
  134. package/dist/types/src/components/inputs/FileInput.d.ts +1 -1
  135. package/dist/types/src/components/inputs/NumberInput.d.ts +1 -1
  136. package/dist/types/src/components/inputs/PasswordInput.d.ts +1 -1
  137. package/dist/types/src/components/inputs/RadioGroup.d.ts +1 -1
  138. package/dist/types/src/components/inputs/SearchSelect.d.ts +1 -1
  139. package/dist/types/src/components/inputs/SearchTableSelect.bloqueadas.test.d.ts +1 -0
  140. package/dist/types/src/components/inputs/SearchTableSelect.caracterizacion.test.d.ts +1 -0
  141. package/dist/types/src/components/inputs/SearchTableSelect.d.ts +19 -1
  142. package/dist/types/src/components/inputs/SearchTableSelect.seleccionPagina.test.d.ts +1 -0
  143. package/dist/types/src/components/inputs/SearchTableSelect.soloSeleccionados.test.d.ts +1 -0
  144. package/dist/types/src/components/inputs/Select.d.ts +1 -1
  145. package/dist/types/src/components/inputs/SmartDateInput.d.ts +1 -1
  146. package/dist/types/src/components/inputs/SmartSelect.d.ts +1 -1
  147. package/dist/types/src/components/inputs/TextArea.d.ts +1 -1
  148. package/dist/types/src/components/inputs/Toggle.d.ts +1 -1
  149. package/dist/types/src/components/inputs/ToggleCard.d.ts +1 -1
  150. package/dist/types/src/components/inputs/Transfer.d.ts +1 -1
  151. package/dist/types/src/components/inputs/TreeSelect.d.ts +1 -1
  152. package/dist/types/src/components/inputs/YesNoSelect.d.ts +1 -1
  153. package/dist/types/src/components/inputs/booleanControls.test.d.ts +1 -0
  154. package/dist/types/src/components/inputs/useBooleanField.d.ts +10 -0
  155. package/dist/types/src/components/interactive-inputs/AllocationBar.d.ts +1 -1
  156. package/dist/types/src/components/interactive-inputs/CardRadioGroup.d.ts +1 -1
  157. package/dist/types/src/components/interactive-inputs/ColorInput.d.ts +1 -1
  158. package/dist/types/src/components/interactive-inputs/KeyValueInput.d.ts +1 -1
  159. package/dist/types/src/components/interactive-inputs/NumberStepper.d.ts +1 -1
  160. package/dist/types/src/components/interactive-inputs/ProgressBar.d.ts +1 -1
  161. package/dist/types/src/components/interactive-inputs/ProgressBarReadonly.d.ts +1 -1
  162. package/dist/types/src/components/interactive-inputs/RangeSliderInput.d.ts +1 -1
  163. package/dist/types/src/components/interactive-inputs/RatingInput.d.ts +1 -1
  164. package/dist/types/src/components/interactive-inputs/SemanticSlider.d.ts +1 -1
  165. package/dist/types/src/components/interactive-inputs/SliderInput.d.ts +1 -1
  166. package/dist/types/src/components/interactive-inputs/SortableList.d.ts +1 -1
  167. package/dist/types/src/components/interactive-inputs/TagsInput.d.ts +1 -1
  168. package/dist/types/src/components/interactive-inputs/TemporalScrub.d.ts +1 -1
  169. package/dist/types/src/components/layout/Accordion.d.ts +1 -1
  170. package/dist/types/src/components/layout/AppShell.caracterizacion.test.d.ts +1 -0
  171. package/dist/types/src/components/layout/AppShell.d.ts +8 -2
  172. package/dist/types/src/components/layout/Breadcrumb.d.ts +1 -1
  173. package/dist/types/src/components/layout/DateWeekStrip.d.ts +1 -1
  174. package/dist/types/src/components/layout/FilterBar.d.ts +5 -5
  175. package/dist/types/src/components/layout/FormWizard.d.ts +1 -1
  176. package/dist/types/src/components/layout/HeightProvider.d.ts +1 -1
  177. package/dist/types/src/components/layout/ItineraryEditor.d.ts +1 -1
  178. package/dist/types/src/components/layout/LiveRouteBoard.d.ts +1 -1
  179. package/dist/types/src/components/layout/MaestroLayout.d.ts +1 -1
  180. package/dist/types/src/components/layout/MasterDetailLayout.d.ts +2 -2
  181. package/dist/types/src/components/layout/PageContainer.d.ts +1 -1
  182. package/dist/types/src/components/layout/PageHeader.d.ts +1 -1
  183. package/dist/types/src/components/layout/ScrollArea.d.ts +1 -1
  184. package/dist/types/src/components/layout/Separator.d.ts +1 -1
  185. package/dist/types/src/components/layout/SidePanel.d.ts +1 -1
  186. package/dist/types/src/components/layout/SidePanelContainer.d.ts +1 -1
  187. package/dist/types/src/components/layout/SummaryItem.d.ts +1 -1
  188. package/dist/types/src/components/layout/TablePageLayout.d.ts +1 -1
  189. package/dist/types/src/components/layout/Tabs.caracterizacion.test.d.ts +1 -0
  190. package/dist/types/src/components/layout/Tabs.d.ts +5 -2
  191. package/dist/types/src/components/layout/Tabs.test.d.ts +1 -0
  192. package/dist/types/src/components/layout/ThemePicker.d.ts +23 -0
  193. package/dist/types/src/components/layout/ThemePicker.test.d.ts +1 -0
  194. package/dist/types/src/components/layout/UnitSelector.d.ts +1 -1
  195. package/dist/types/src/components/layout/Visibility.d.ts +2 -2
  196. package/dist/types/src/components/layout/WeekdayToggleStrip.d.ts +1 -1
  197. package/dist/types/src/components/layout/WorkspaceHeader.d.ts +31 -0
  198. package/dist/types/src/components/layout/WorkspaceHeader.test.d.ts +1 -0
  199. package/dist/types/src/components/layout/index.d.ts +5 -1
  200. package/dist/types/src/components/maps/base/MapFrame.d.ts +1 -1
  201. package/dist/types/src/components/maps/base/MapLegend.d.ts +1 -1
  202. package/dist/types/src/components/maps/base/MapPointCard.d.ts +1 -1
  203. package/dist/types/src/components/maps/base/MapStatus.d.ts +1 -1
  204. package/dist/types/src/components/maps/base/MapToolbar.d.ts +1 -1
  205. package/dist/types/src/components/maps/base/MapVehiclePopup.d.ts +1 -1
  206. package/dist/types/src/components/maps/forms/AddressSearchInput.d.ts +1 -1
  207. package/dist/types/src/components/maps/forms/AreaInput.d.ts +1 -1
  208. package/dist/types/src/components/maps/forms/CoordinatesInput.d.ts +1 -1
  209. package/dist/types/src/components/maps/forms/LocationPicker.d.ts +1 -1
  210. package/dist/types/src/components/maps/forms/RouteInput.d.ts +1 -1
  211. package/dist/types/src/components/maps/forms/ShapeInput.d.ts +1 -1
  212. package/dist/types/src/components/maps/forms/SmartMapInput.d.ts +1 -1
  213. package/dist/types/src/components/maps/renderers/google/GoogleMapRenderer.d.ts +1 -1
  214. package/dist/types/src/components/maps/renderers/leaflet/LeafletMapRenderer.d.ts +1 -1
  215. package/dist/types/src/components/maps/views/MapView.d.ts +1 -1
  216. package/dist/types/src/components/media-inputs/FileDropInput.d.ts +1 -1
  217. package/dist/types/src/components/media-inputs/MultiPhotoInput.d.ts +1 -1
  218. package/dist/types/src/components/media-inputs/PhotoCropEditor.d.ts +1 -1
  219. package/dist/types/src/components/media-inputs/PhotoCropInput.d.ts +1 -1
  220. package/dist/types/src/components/media-inputs/SmartMediaInput.d.ts +1 -1
  221. package/dist/types/src/components/overlays/ConfirmDialog.d.ts +1 -1
  222. package/dist/types/src/components/overlays/ContextMenu.caracterizacion.test.d.ts +1 -0
  223. package/dist/types/src/components/overlays/ContextMenu.d.ts +26 -0
  224. package/dist/types/src/components/overlays/Drawer.d.ts +5 -2
  225. package/dist/types/src/components/overlays/DropdownMenu.d.ts +1 -1
  226. package/dist/types/src/components/overlays/DropdownMenu.estilos.test.d.ts +1 -0
  227. package/dist/types/src/components/overlays/Foco.test.d.ts +1 -0
  228. package/dist/types/src/components/overlays/MessageDialog.d.ts +1 -1
  229. package/dist/types/src/components/overlays/Modal.d.ts +4 -1
  230. package/dist/types/src/components/overlays/NotificationBell.d.ts +1 -1
  231. package/dist/types/src/components/overlays/OptionItem.d.ts +1 -1
  232. package/dist/types/src/components/overlays/Overlay.anidados.test.d.ts +1 -0
  233. package/dist/types/src/components/overlays/QRView.d.ts +1 -1
  234. package/dist/types/src/components/overlays/TabMenuOption.d.ts +1 -1
  235. package/dist/types/src/components/overlays/Tooltip.d.ts +1 -1
  236. package/dist/types/src/components/overlays/colorTexto.test.d.ts +1 -0
  237. package/dist/types/src/components/overlays/useFocoDeCapa.d.ts +8 -0
  238. package/dist/types/src/components/overlays/useOverlayStack.consulta.test.d.ts +1 -0
  239. package/dist/types/src/components/overlays/useOverlayStack.d.ts +13 -0
  240. package/dist/types/src/components/range-inputs/DateRangeFields.d.ts +1 -1
  241. package/dist/types/src/components/range-inputs/DateRangeInput.d.ts +1 -1
  242. package/dist/types/src/components/range-inputs/DateRangeUtcInput.d.ts +1 -1
  243. package/dist/types/src/components/range-inputs/TimeRangeInput.d.ts +1 -1
  244. package/dist/types/src/components/table/ActiveFiltersBar.d.ts +1 -1
  245. package/dist/types/src/components/table/AsyncCustomTable.d.ts +1 -1
  246. package/dist/types/src/components/table/CustomTable.ajuste.test.d.ts +1 -0
  247. package/dist/types/src/components/table/CustomTable.caracterizacion.test.d.ts +1 -0
  248. package/dist/types/src/components/table/CustomTable.clavesHeredadas.test.d.ts +1 -0
  249. package/dist/types/src/components/table/CustomTable.columnasOcultas.test.d.ts +1 -0
  250. package/dist/types/src/components/table/CustomTable.d.ts +157 -1
  251. package/dist/types/src/components/table/CustomTable.defectosPublicados.test.d.ts +1 -0
  252. package/dist/types/src/components/table/CustomTable.densidad.caracterizacion.test.d.ts +1 -0
  253. package/dist/types/src/components/table/CustomTable.densidad.test.d.ts +1 -0
  254. package/dist/types/src/components/table/CustomTable.dobleClic.test.d.ts +1 -0
  255. package/dist/types/src/components/table/CustomTable.estadoPorClave.test.d.ts +1 -0
  256. package/dist/types/src/components/table/CustomTable.exportacion.test.d.ts +1 -0
  257. package/dist/types/src/components/table/CustomTable.identidadRemoto.test.d.ts +1 -0
  258. package/dist/types/src/components/table/CustomTable.l3Regresiones.test.d.ts +1 -0
  259. package/dist/types/src/components/table/CustomTable.menuContextual.test.d.ts +1 -0
  260. package/dist/types/src/components/table/CustomTable.numeracion.test.d.ts +1 -0
  261. package/dist/types/src/components/table/CustomTable.paginador.test.d.ts +1 -0
  262. package/dist/types/src/components/table/CustomTable.pie.test.d.ts +1 -0
  263. package/dist/types/src/components/table/EditableDataGrid.d.ts +1 -1
  264. package/dist/types/src/components/table/ExpandableTableSection.d.ts +1 -1
  265. package/dist/types/src/components/table/Pagination.d.ts +2 -0
  266. package/dist/types/src/components/table/RowActionsMenu.d.ts +1 -1
  267. package/dist/types/src/components/table/TableFiltersPanel.d.ts +1 -1
  268. package/dist/types/src/components/table/TableSortingPanel.d.ts +1 -1
  269. package/dist/types/src/components/table/customTableController.d.ts +20 -1
  270. package/dist/types/src/components/table/index.d.ts +2 -2
  271. package/dist/types/src/components/table/tableDevWarning.d.ts +2 -0
  272. package/dist/types/src/components/table/tableRowNumbers.d.ts +8 -0
  273. package/dist/types/src/components/visualization/DnaHelix.d.ts +33 -0
  274. package/dist/types/src/components/visualization/DnaHelix.test.d.ts +1 -0
  275. package/dist/types/src/components/visualization/IntegrationFlow.caracterizacion.test.d.ts +1 -0
  276. package/dist/types/src/components/visualization/IntegrationFlow.d.ts +61 -0
  277. package/dist/types/src/components/visualization/IntegrationFlow.paneles.test.d.ts +1 -0
  278. package/dist/types/src/components/visualization/IntegrationFlow.test.d.ts +1 -0
  279. package/dist/types/src/components/visualization/NetworkLegend.d.ts +1 -1
  280. package/dist/types/src/components/visualization/NetworkMap.d.ts +1 -1
  281. package/dist/types/src/components/visualization/OrgTree.d.ts +1 -1
  282. package/dist/types/src/components/visualization/RelationGraph.caracterizacion.test.d.ts +1 -0
  283. package/dist/types/src/components/visualization/RelationGraph.d.ts +65 -0
  284. package/dist/types/src/components/visualization/RelationGraph.orbita.test.d.ts +1 -0
  285. package/dist/types/src/components/visualization/RelationGraph.test.d.ts +1 -0
  286. package/dist/types/src/components/visualization/SeleccionNodos.test.d.ts +1 -0
  287. package/dist/types/src/components/visualization/disponerOrbita.d.ts +29 -0
  288. package/dist/types/src/components/visualization/disponerRadial.d.ts +19 -0
  289. package/dist/types/src/components/visualization/index.d.ts +6 -0
  290. package/dist/types/src/providers/SfProvider.d.ts +1 -1
  291. package/dist/types/src/theme/paletaCategorias.test.d.ts +1 -0
  292. package/dist/types/src/theme/temas.test.d.ts +1 -0
  293. package/dist/types/src/utils/devWarning.d.ts +2 -0
  294. package/dist/types/src/utils/devWarning.test.d.ts +1 -0
  295. package/dist/types/src/utils/foco.d.ts +9 -0
  296. package/dist/types/src/utils/identidadColeccion.d.ts +11 -0
  297. package/dist/types/src/utils/identidadColeccion.test.d.ts +1 -0
  298. package/dist/types/src/utils/useAnchoContenedor.d.ts +22 -0
  299. package/dist/types/src/utils/useAnchoContenedor.test.d.ts +1 -0
  300. package/package.json +8 -5
@@ -0,0 +1,229 @@
1
+ /**
2
+ * Temas intercambiables en tiempo de ejecución según el <html>: data-skin="sark|erp|neon" y data-theme="dark".
3
+ * Carga junto a sark.css, dark.css y neon.css. Sin data-skin nada de este archivo aplica.
4
+ * El bloque ERP claro repite las variables de erp.css: la prueba temas.test.ts falla si se separan.
5
+ */
6
+
7
+ /* —— ERP Systel claro (naranja + navy) —— */
8
+ :root[data-skin='erp']:not([data-theme='dark']) {
9
+ --sf-primary: rgb(12, 33, 49);
10
+ --sf-primary-muted: #46555c;
11
+ --sf-accent: #ec7211;
12
+ --sf-accent-hover: #d96510;
13
+ --sf-accent-10: rgb(236 114 17 / 0.1);
14
+
15
+ --sf-navy: rgb(12, 33, 49);
16
+ --sf-navy-muted: #64748b;
17
+ --sf-green: #ec7211;
18
+ --sf-green-mid: #d96510;
19
+
20
+ --sf-surface: #f1f3f4;
21
+ --sf-surface-alt: #f8fafc;
22
+ --sf-page-bg: #f0f4fa;
23
+
24
+ --sf-border: #d1d5db;
25
+ --sf-border-strong: #c7d5ce;
26
+ --sf-text: #374151;
27
+ --sf-text-muted: #6b7280;
28
+ --sf-label: #374151;
29
+
30
+ --sf-input-bg: #f8fafc;
31
+ --sf-input-bg-readonly: #f1f5f9;
32
+ --sf-input-border: #d1d5db;
33
+ --sf-input-border-focus: #ec7211;
34
+ --sf-input-text: #374151;
35
+ --sf-input-placeholder: #9ca3af;
36
+ --sf-input-font-size: 13px;
37
+
38
+ --sf-ring: rgb(236 114 17 / 0.18);
39
+ --sf-ring-focus: rgb(236 114 17 / 0.18);
40
+ --sf-ring-width: 3px;
41
+ --sf-ring-error: rgb(244 63 94 / 0.15);
42
+ --sf-input-border-error: #fb7185;
43
+
44
+ --sf-danger: #f05a25;
45
+ --sf-danger-bg: rgb(240 90 37 / 0.1);
46
+ --sf-row-hover: #f0f7ff;
47
+ --sf-row-selected: rgb(236 114 17 / 0.06);
48
+
49
+ --sf-btn-primary-bg: var(--sf-accent);
50
+ --sf-btn-primary-hover: var(--sf-accent-hover);
51
+ --sf-btn-primary-shadow: 0 4px 14px rgb(236 114 17 / 0.3);
52
+ --sf-btn-primary-shadow-hover: 0 6px 20px rgb(236 114 17 / 0.4);
53
+ --sf-btn-outline-border: rgb(236 114 17 / 0.4);
54
+ --sf-btn-outline-text: #ec7211;
55
+ --sf-btn-outline-hover-bg: rgb(236 114 17 / 0.08);
56
+
57
+ --sf-shadow-2: 0 1px 3px rgb(12 33 49 / 0.08), 0 1px 2px rgb(12 33 49 / 0.05);
58
+ --sf-shadow-4: 0 4px 16px rgb(12 33 49 / 0.08), 0 2px 6px rgb(12 33 49 / 0.04);
59
+ --sf-shadow-8: 0 10px 32px rgb(12 33 49 / 0.1), 0 4px 10px rgb(12 33 49 / 0.06);
60
+
61
+ --sf-modal-overlay: rgb(12 33 49 / 0.45);
62
+ --sf-card-border: var(--sf-border);
63
+ --sf-badge-primary-bg: var(--sf-accent);
64
+ --sf-badge-primary-dot: var(--sf-accent-hover);
65
+
66
+ --sf-table-header-bg: var(--sf-primary);
67
+ --sf-table-header-text: var(--sf-white);
68
+ --sf-table-header-border: color-mix(in srgb, var(--sf-primary) 82%, var(--sf-white));
69
+ --sf-modal-header-bg: var(--sf-primary);
70
+ --sf-modal-header-text: var(--sf-white);
71
+ --sf-modal-header-subtitle: var(--sf-app-shell-topbar-muted);
72
+ --sf-modal-header-icon-bg: var(--sf-app-shell-accent);
73
+ --sf-modal-footer-bg: var(--sf-surface-alt);
74
+ --sf-record-item-bg: var(--sf-white);
75
+ --sf-master-detail-panel-bg: var(--sf-white);
76
+ --sf-filter-bar-bg: var(--sf-white);
77
+ --sf-expandable-row-bg: var(--sf-white);
78
+ --sf-itinerary-map-bg: color-mix(in srgb, var(--sf-accent-10) 55%, var(--sf-white));
79
+ --sf-avatar-accent-bg: var(--sf-accent);
80
+ --sf-app-shell-nav-badge-bg: var(--sf-accent);
81
+ --sf-app-shell-nav-badge-text: var(--sf-white);
82
+ --sf-maestro-toolbar-bg: var(--sf-white);
83
+ --sf-live-status-bg: var(--sf-white);
84
+ --sf-passenger-onboard-bg: color-mix(in srgb, var(--sf-success) 10%, var(--sf-white));
85
+ }
86
+
87
+ /* —— Modo oscuro de cada tema: dark.css con el acento propio —— */
88
+ :root[data-theme='dark'][data-skin='erp'] {
89
+ --sf-accent: #f59a4a;
90
+ --sf-accent-hover: #ec7211;
91
+ --sf-accent-10: rgb(245 154 74 / 0.14);
92
+ --sf-input-border-focus: #f59a4a;
93
+ --sf-ring: rgb(245 154 74 / 0.28);
94
+ --sf-ring-focus: rgb(245 154 74 / 0.28);
95
+ --sf-btn-primary-bg: #f59a4a;
96
+ --sf-btn-primary-hover: #ec7211;
97
+ --sf-btn-primary-text: #1b1206;
98
+ --sf-btn-primary-shadow: 0 4px 14px rgb(245 154 74 / 0.25);
99
+ --sf-btn-outline-border: rgb(245 154 74 / 0.45);
100
+ --sf-btn-outline-text: #f59a4a;
101
+ --sf-btn-outline-hover-bg: rgb(245 154 74 / 0.12);
102
+ --sf-app-shell-accent: #f59a4a;
103
+ --sf-avatar-accent-bg: #f59a4a;
104
+ --sf-app-shell-nav-badge-bg: #f59a4a;
105
+ --sf-spinner-fill: #f59a4a;
106
+ }
107
+
108
+ :root[data-theme='dark'][data-skin='sark'] {
109
+ --sf-accent: #3dba6e;
110
+ --sf-accent-hover: #2e9e5b;
111
+ --sf-accent-10: rgb(61 186 110 / 0.14);
112
+ --sf-input-border-focus: #3dba6e;
113
+ --sf-ring: rgb(61 186 110 / 0.28);
114
+ --sf-ring-focus: rgb(61 186 110 / 0.28);
115
+ --sf-btn-primary-bg: #3dba6e;
116
+ --sf-btn-primary-hover: #2e9e5b;
117
+ --sf-btn-primary-text: #06150c;
118
+ --sf-btn-primary-shadow: 0 4px 14px rgb(61 186 110 / 0.25);
119
+ --sf-btn-outline-border: rgb(61 186 110 / 0.45);
120
+ --sf-btn-outline-text: #3dba6e;
121
+ --sf-btn-outline-hover-bg: rgb(61 186 110 / 0.12);
122
+ --sf-app-shell-accent: #3dba6e;
123
+ --sf-spinner-fill: #3dba6e;
124
+ }
125
+
126
+ /* —— Modo claro con cualquier tema: el texto pintado con un color de categoría se oscurece para leerse sobre
127
+ blanco (los colores de categoría están pensados para rellenos y para fondo oscuro). —— */
128
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-tile__value {
129
+ color: color-mix(in srgb, var(--sf-metric-tile-value-color) 62%, #0b1f29);
130
+ }
131
+
132
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-tile--centered .sf-metric-tile__icon,
133
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-row__prefix {
134
+ filter: none;
135
+ }
136
+
137
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-row__prefix {
138
+ color: color-mix(in srgb, var(--sf-metric-color, var(--sf-accent)) 62%, #0b1f29);
139
+ }
140
+
141
+ :root[data-skin]:not([data-theme='dark']) .sf-stage-flow--ring .sf-stage-flow__eyebrow {
142
+ color: color-mix(in srgb, var(--sf-stage-color) 45%, #0b1f29);
143
+ }
144
+
145
+ :root[data-skin]:not([data-theme='dark']) .sf-state-chain--dot .sf-state-chain__item--current .sf-state-chain__label {
146
+ color: color-mix(in srgb, var(--sf-state-color) 45%, #0b1f29);
147
+ }
148
+
149
+ /* Texto de acento y de categoría sobre blanco: verbo del grafo, etiqueta de la dona, numeración de baldosas, fechas. */
150
+ :root[data-skin]:not([data-theme='dark']) .sf-relation-graph--orbit .sf-relation-graph__relation {
151
+ color: color-mix(in srgb, var(--sf-relation-color) 40%, #0b1f29);
152
+ }
153
+
154
+ :root[data-skin]:not([data-theme='dark']) .sf-donut-gauge__label[style*="--sf-donut-label-color"] {
155
+ color: color-mix(in srgb, var(--sf-donut-label-color) 48%, #0b1f29);
156
+ }
157
+
158
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-row__tile-icon {
159
+ border-color: color-mix(in srgb, var(--sf-metric-color, var(--sf-accent)) 60%, #0b1f29);
160
+ color: color-mix(in srgb, var(--sf-metric-color, var(--sf-accent)) 48%, #0b1f29);
161
+ }
162
+
163
+ /* Partes gráficas que deben distinguirse (3:1) sobre blanco: muestras de leyenda, rellenos de barra, puntos y
164
+ círculos de estado. Sus colores llegan en línea desde quien usa el componente, por eso se oscurecen con filtro. */
165
+ :root[data-skin]:not([data-theme='dark']) .sf-chart-legend__swatch {
166
+ filter: brightness(0.65) saturate(1.2);
167
+ }
168
+
169
+ :root[data-skin]:not([data-theme='dark']) .sf-metric-row__fill,
170
+ :root[data-skin]:not([data-theme='dark']) .sf-timeline__dot--custom {
171
+ filter: brightness(0.6) saturate(1.2);
172
+ }
173
+
174
+ :root[data-skin]:not([data-theme='dark']) .sf-state-chain--ring .sf-state-chain__circle {
175
+ border-color: color-mix(in srgb, var(--sf-state-color) 62%, #0b1f29);
176
+ }
177
+
178
+ :root[data-skin]:not([data-theme='dark']) .sf-state-chain--dot .sf-state-chain__circle {
179
+ background: color-mix(in srgb, var(--sf-state-color) 58%, #0b1f29);
180
+ }
181
+
182
+ /* ERP claro: el naranja publicado da 3:1 con texto blanco; en botones y texto de acento va un tono más profundo. */
183
+ :root[data-skin='erp']:not([data-theme='dark']) {
184
+ --sf-btn-primary-bg: #b35400;
185
+ --sf-btn-primary-hover: #9a4800;
186
+ --sf-btn-outline-text: #a94f00;
187
+ --sf-accent-text: #a94f00;
188
+ --sf-text-muted: #5f6876;
189
+ }
190
+
191
+ :root[data-skin='erp']:not([data-theme='dark']) .sf-timeline__time {
192
+ color: var(--sf-accent-text);
193
+ }
194
+
195
+ /* Modo oscuro con cualquier tema: el texto pintado con un color de categoría se aclara para leerse sobre el fondo
196
+ pizarra o negro; el amarillo de advertencia suave y los rellenos de barra también suben de luz. */
197
+ :root[data-skin][data-theme='dark'] .sf-relation-graph--orbit .sf-relation-graph__relation {
198
+ color: color-mix(in srgb, var(--sf-relation-color) 65%, #ffffff);
199
+ }
200
+
201
+ :root[data-skin][data-theme='dark'] .sf-stage-flow--ring .sf-stage-flow__eyebrow {
202
+ color: color-mix(in srgb, var(--sf-stage-color) 70%, #ffffff);
203
+ }
204
+
205
+ :root[data-skin][data-theme='dark'] .sf-metric-row__prefix {
206
+ color: color-mix(in srgb, var(--sf-metric-color, var(--sf-accent)) 70%, #ffffff);
207
+ }
208
+
209
+ :root[data-skin][data-theme='dark'] .sf-badge--warning:not(.sf-badge--solid) {
210
+ color: #fbbf24;
211
+ }
212
+
213
+ :root[data-skin][data-theme='dark'] .sf-metric-row__fill {
214
+ filter: brightness(1.15);
215
+ }
216
+
217
+ /* Modo claro con cualquier tema: advertencia suave, contador de la campana y avatar sin foto a 4,5:1. */
218
+ :root[data-skin]:not([data-theme='dark']) {
219
+ --sf-avatar-text: var(--sf-text);
220
+ }
221
+
222
+ :root[data-skin]:not([data-theme='dark']) .sf-badge--warning:not(.sf-badge--solid) {
223
+ color: #92400e;
224
+ }
225
+
226
+ :root[data-skin]:not([data-theme='dark']) .sf-notification-bell__badge {
227
+ background: #15803d;
228
+ color: #ffffff;
229
+ }
@@ -16,5 +16,5 @@ type CodeEditorProps<TFormValues extends FieldValues> = {
16
16
  onChange?: (value: string) => void;
17
17
  onRefresh?: () => Promise<void> | void;
18
18
  };
19
- export declare const CodeEditor: <TFormValues extends FieldValues>({ form, name, label, info, required, language, highlighted, readOnly, disabled, rows, small, className, onChange, onRefresh, }: CodeEditorProps<TFormValues>) => import("react").JSX.Element;
19
+ export declare const CodeEditor: <TFormValues extends FieldValues>({ form, name, label, info, required, language, highlighted, readOnly, disabled, rows, small, className, onChange, onRefresh, }: CodeEditorProps<TFormValues>) => import('react').JSX.Element;
20
20
  export {};
@@ -5,4 +5,4 @@ export type MapGeocoderBarProps = {
5
5
  className?: string;
6
6
  disabled?: boolean;
7
7
  };
8
- export declare const MapGeocoderBar: ({ onSelect, placeholder, className, disabled, }: MapGeocoderBarProps) => import("react").JSX.Element;
8
+ export declare const MapGeocoderBar: ({ onSelect, placeholder, className, disabled, }: MapGeocoderBarProps) => import('react').JSX.Element;
@@ -18,5 +18,5 @@ type MapPickerProps<TFormValues extends FieldValues> = {
18
18
  * @deprecated Use `LocationPicker` or `SmartMapInput kind="coordinates"` from `components/maps/forms`.
19
19
  * This component remains for compatibility during migration.
20
20
  */
21
- export declare const MapPicker: <TFormValues extends FieldValues>({ form, name, label, info, required, zoom, readOnly, disabled, showGeocoder, className, onChange, onRefresh, }: MapPickerProps<TFormValues>) => import("react").JSX.Element;
21
+ export declare const MapPicker: <TFormValues extends FieldValues>({ form, name, label, info, required, zoom, readOnly, disabled, showGeocoder, className, onChange, onRefresh, }: MapPickerProps<TFormValues>) => import('react').JSX.Element;
22
22
  export {};
@@ -6,5 +6,5 @@ type MapPickerMapProps = {
6
6
  showGeocoder?: boolean;
7
7
  onPick: (lat: string, lng: string) => void;
8
8
  };
9
- export declare const MapPickerMap: ({ lat, lng, zoom, readOnly, showGeocoder, onPick, }: MapPickerMapProps) => import("react").JSX.Element;
9
+ export declare const MapPickerMap: ({ lat, lng, zoom, readOnly, showGeocoder, onPick, }: MapPickerMapProps) => import('react').JSX.Element;
10
10
  export {};
@@ -14,5 +14,5 @@ type PhotoInputProps<TFormValues extends FieldValues> = {
14
14
  onChange?: (file: File | null) => void;
15
15
  onRefresh?: () => Promise<void> | void;
16
16
  };
17
- export declare const PhotoInput: <TFormValues extends FieldValues>({ form, name, label, info, required, capture, maxSizeMb, readOnly, disabled, small, className, onChange, onRefresh, }: PhotoInputProps<TFormValues>) => import("react").JSX.Element;
17
+ export declare const PhotoInput: <TFormValues extends FieldValues>({ form, name, label, info, required, capture, maxSizeMb, readOnly, disabled, small, className, onChange, onRefresh, }: PhotoInputProps<TFormValues>) => import('react').JSX.Element;
18
18
  export {};
@@ -12,5 +12,5 @@ type RichTextEditorProps<TFormValues extends FieldValues> = {
12
12
  onChange?: (html: string) => void;
13
13
  onRefresh?: () => Promise<void> | void;
14
14
  };
15
- export declare const RichTextEditor: <TFormValues extends FieldValues>({ form, name, label, info, required, readOnly, disabled, height, className, onChange, onRefresh, }: RichTextEditorProps<TFormValues>) => import("react").JSX.Element;
15
+ export declare const RichTextEditor: <TFormValues extends FieldValues>({ form, name, label, info, required, readOnly, disabled, height, className, onChange, onRefresh, }: RichTextEditorProps<TFormValues>) => import('react').JSX.Element;
16
16
  export {};
@@ -13,5 +13,5 @@ type SignaturePadProps<TFormValues extends FieldValues> = {
13
13
  onChange?: (dataUrl: string) => void;
14
14
  onRefresh?: () => Promise<void> | void;
15
15
  };
16
- export declare const SignaturePad: <TFormValues extends FieldValues>({ form, name, label, info, required, width, height, readOnly, disabled, className, onChange, onRefresh, }: SignaturePadProps<TFormValues>) => import("react").JSX.Element;
16
+ export declare const SignaturePad: <TFormValues extends FieldValues>({ form, name, label, info, required, width, height, readOnly, disabled, className, onChange, onRefresh, }: SignaturePadProps<TFormValues>) => import('react').JSX.Element;
17
17
  export {};
@@ -7,5 +7,5 @@ type ActionButtonProps = {
7
7
  icon?: ReactNode;
8
8
  variant?: ActionButtonVariant;
9
9
  } & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children">;
10
- export declare const ActionButton: ({ children, loading, disabled, icon, variant, className, type, ...rest }: ActionButtonProps) => import("react").JSX.Element;
10
+ export declare const ActionButton: ({ children, loading, disabled, icon, variant, className, type, ...rest }: ActionButtonProps) => import('react').JSX.Element;
11
11
  export {};
@@ -8,5 +8,5 @@ type ButtonProps = {
8
8
  iconPosition?: "start" | "end";
9
9
  children: ReactNode;
10
10
  } & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children">;
11
- export declare const Button: ({ variant, size, loading, disabled, icon, iconPosition, children, className, type, ...rest }: ButtonProps) => import("react").JSX.Element;
11
+ export declare const Button: ({ variant, size, loading, disabled, icon, iconPosition, children, className, type, ...rest }: ButtonProps) => import('react').JSX.Element;
12
12
  export {};
@@ -3,5 +3,5 @@ type ButtonGroupProps = {
3
3
  children: ReactNode;
4
4
  className?: string;
5
5
  };
6
- export declare const ButtonGroup: ({ children, className }: ButtonGroupProps) => import("react").JSX.Element;
6
+ export declare const ButtonGroup: ({ children, className }: ButtonGroupProps) => import('react').JSX.Element;
7
7
  export {};
@@ -8,5 +8,5 @@ type FormActionsProps = {
8
8
  hideSave?: boolean;
9
9
  className?: string;
10
10
  };
11
- export declare const FormActions: import('react').MemoExoticComponent<({ cancelLabel, saveLabel, onCancel, onSave, cancelLoading, saveLoading, hideSave, className, }: FormActionsProps) => import("react").JSX.Element>;
11
+ export declare const FormActions: import('react').MemoExoticComponent<({ cancelLabel, saveLabel, onCancel, onSave, cancelLoading, saveLoading, hideSave, className, }: FormActionsProps) => import('react').JSX.Element>;
12
12
  export {};
@@ -6,5 +6,5 @@ type RowActionsProps = {
6
6
  deleteLabel?: string;
7
7
  className?: string;
8
8
  };
9
- export declare const RowActions: ({ onEdit, onDelete, disabled, editLabel, deleteLabel, className, }: RowActionsProps) => import("react").JSX.Element;
9
+ export declare const RowActions: ({ onEdit, onDelete, disabled, editLabel, deleteLabel, className, }: RowActionsProps) => import('react').JSX.Element;
10
10
  export {};
@@ -6,5 +6,5 @@ type ToolbarButtonProps = {
6
6
  label?: string;
7
7
  loading?: boolean;
8
8
  } & Omit<ButtonHTMLAttributes<HTMLButtonElement>, "children">;
9
- export declare const ToolbarButton: ({ selected, small, icon, label, loading, disabled, className, type, ...rest }: ToolbarButtonProps) => import("react").JSX.Element;
9
+ export declare const ToolbarButton: ({ selected, small, icon, label, loading, disabled, className, type, ...rest }: ToolbarButtonProps) => import('react').JSX.Element;
10
10
  export {};
@@ -10,5 +10,11 @@ export type BadgeProps = {
10
10
  /** Icono antes del label (`.sf-badge__icon`). Compatible con `dot`: si vienen ambos, primero el punto y
11
11
  * luego el icono. Solo aplica a `shape="pill"` (el círculo es de un solo carácter). */
12
12
  icon?: ReactNode;
13
+ /** "solid": relleno del color con texto claro y esquinas de 6px (estados en tablas densas). Por defecto
14
+ * "soft", el acabado publicado. */
15
+ appearance?: BadgeAppearance;
16
+ /** Color propio para estados sin variante (ej. un estado de un flujo propio). Gana sobre `variant`. */
17
+ color?: string;
13
18
  };
14
- export declare const Badge: ({ label, variant, dot, size, shape, className, icon, }: BadgeProps) => import("react").JSX.Element;
19
+ export type BadgeAppearance = "soft" | "solid";
20
+ export declare const Badge: ({ label, variant, dot, size, shape, className, icon, appearance, color, }: BadgeProps) => import('react').JSX.Element;
@@ -18,11 +18,11 @@ export type EntityCardProps = {
18
18
  onClick?: () => void;
19
19
  className?: string;
20
20
  };
21
- export declare const EntityCard: (props: EntityCardProps) => import("react").JSX.Element;
21
+ export declare const EntityCard: (props: EntityCardProps) => import('react').JSX.Element;
22
22
  type EntityCardGridProps = {
23
23
  children: ReactNode;
24
24
  cols?: 2 | 3 | 4 | 5;
25
25
  className?: string;
26
26
  };
27
- export declare const EntityCardGrid: ({ children, cols, className }: EntityCardGridProps) => import("react").JSX.Element;
27
+ export declare const EntityCardGrid: ({ children, cols, className }: EntityCardGridProps) => import('react').JSX.Element;
28
28
  export {};
@@ -85,11 +85,11 @@ export type KPICardProps = {
85
85
  * afordance de "clickeable" ya lo da `selected`/el borde, no un chevron de navegación. */
86
86
  showChevron?: boolean;
87
87
  };
88
- export declare const KPICard: ({ label, value, sublabel, icon, iconClassName, trend, trendLabel, trendDirection, accentTone, progress, valueFormat, formatOptions, sparkline, layout, variant, size, density, accentBar, iconStyle, labelWrap, className, onClick, selected, showChevron, }: KPICardProps) => import("react").JSX.Element;
88
+ export declare const KPICard: ({ label, value, sublabel, icon, iconClassName, trend, trendLabel, trendDirection, accentTone, progress, valueFormat, formatOptions, sparkline, layout, variant, size, density, accentBar, iconStyle, labelWrap, className, onClick, selected, showChevron, }: KPICardProps) => import('react').JSX.Element;
89
89
  type KPIGridProps = {
90
90
  children: ReactNode;
91
91
  cols?: 2 | 3 | 4 | 5;
92
92
  className?: string;
93
93
  };
94
- export declare const KPIGrid: ({ children, cols, className }: KPIGridProps) => import("react").JSX.Element;
94
+ export declare const KPIGrid: ({ children, cols, className }: KPIGridProps) => import('react').JSX.Element;
95
95
  export {};
@@ -1,17 +1,19 @@
1
- import { MetricBarFootnote, MetricBarItem } from './types';
1
+ import { MetricBarFootnote, MetricBarItem, MetricBarLayout } from './types';
2
2
  type MetricBarRowProps = {
3
3
  item: MetricBarItem;
4
4
  small?: boolean;
5
+ layout?: MetricBarLayout;
5
6
  };
6
- export declare const MetricBarRow: ({ item, small }: MetricBarRowProps) => import("react").JSX.Element;
7
+ export declare const MetricBarRow: ({ item, small, layout }: MetricBarRowProps) => import('react').JSX.Element;
7
8
  type MetricBarListProps = {
8
9
  metrics: MetricBarItem[];
9
10
  small?: boolean;
11
+ layout?: MetricBarLayout;
10
12
  className?: string;
11
13
  /** Nota destacada debajo de las barras (ej. "56% con menos de 3 meses"), en una caja tintada.
12
14
  * Por defecto no se muestra nada (acabado actual). No es una conclusión calculada — el texto es
13
15
  * responsabilidad de quien arma los datos. */
14
16
  footnote?: MetricBarFootnote;
15
17
  };
16
- export declare const MetricBarList: ({ metrics, small, className, footnote }: MetricBarListProps) => import("react").JSX.Element;
18
+ export declare const MetricBarList: ({ metrics, small, layout, className, footnote }: MetricBarListProps) => import('react').JSX.Element;
17
19
  export {};
@@ -23,12 +23,12 @@ export type ModuleCardProps = {
23
23
  className?: string;
24
24
  "aria-label"?: string;
25
25
  };
26
- export declare const ModuleCard: ({ title, subtitle, icon, logoUrl, iconAccent, badge, isNew, favorite, onFavoriteToggle, onClick, variant, density, enterAnimation, enterAnimationOnce, enterDelay, className, "aria-label": ariaLabel, }: ModuleCardProps) => import("react").JSX.Element;
26
+ export declare const ModuleCard: ({ title, subtitle, icon, logoUrl, iconAccent, badge, isNew, favorite, onFavoriteToggle, onClick, variant, density, enterAnimation, enterAnimationOnce, enterDelay, className, "aria-label": ariaLabel, }: ModuleCardProps) => import('react').JSX.Element;
27
27
  type ModuleCardGridProps = {
28
28
  children: ReactNode;
29
29
  variant?: ModuleCardVariant;
30
30
  density?: ModuleCardDensity;
31
31
  className?: string;
32
32
  };
33
- export declare const ModuleCardGrid: ({ children, variant, density, className, }: ModuleCardGridProps) => import("react").JSX.Element;
33
+ export declare const ModuleCardGrid: ({ children, variant, density, className, }: ModuleCardGridProps) => import('react').JSX.Element;
34
34
  export {};
@@ -0,0 +1,27 @@
1
+ import { ReactNode } from 'react';
2
+ import { BadgeVariant } from './types';
3
+ export type ProfileCardFact = {
4
+ key: string;
5
+ icon?: ReactNode;
6
+ label: ReactNode;
7
+ };
8
+ export type ProfileCardProps = {
9
+ name: string;
10
+ role?: string;
11
+ /** Código visible de la persona (ej. su número de empleado). */
12
+ code?: string;
13
+ photoSrc?: string;
14
+ photoAlt?: string;
15
+ /** Estado superpuesto sobre la foto, abajo a la izquierda. */
16
+ status?: {
17
+ label: string;
18
+ variant?: BadgeVariant;
19
+ };
20
+ /** Con `onEdit` aparece el botón de lápiz sobre la foto. */
21
+ onEdit?: () => void;
22
+ editLabel?: string;
23
+ facts?: ProfileCardFact[];
24
+ quote?: ReactNode;
25
+ className?: string;
26
+ };
27
+ export declare const ProfileCard: ({ name, role, code, photoSrc, photoAlt, status, onEdit, editLabel, facts, quote, className, }: ProfileCardProps) => import('react').JSX.Element;
@@ -6,10 +6,10 @@ export type QuickActionTileProps = {
6
6
  disabled?: boolean;
7
7
  className?: string;
8
8
  };
9
- export declare const QuickActionTile: ({ label, icon, onClick, disabled, className }: QuickActionTileProps) => import("react").JSX.Element;
9
+ export declare const QuickActionTile: ({ label, icon, onClick, disabled, className }: QuickActionTileProps) => import('react').JSX.Element;
10
10
  export type QuickActionGridProps = {
11
11
  children: ReactNode;
12
12
  cols?: 2 | 3 | 4;
13
13
  className?: string;
14
14
  };
15
- export declare const QuickActionGrid: ({ children, cols, className }: QuickActionGridProps) => import("react").JSX.Element;
15
+ export declare const QuickActionGrid: ({ children, cols, className }: QuickActionGridProps) => import('react').JSX.Element;
@@ -0,0 +1,11 @@
1
+ import { ReactNode } from 'react';
2
+ export type QuoteCardProps = {
3
+ quote: ReactNode;
4
+ author?: ReactNode;
5
+ /** Adorno decorativo abajo a la derecha (ej. una hoja). */
6
+ icon?: ReactNode;
7
+ /** Foto de fondo, oscurecida para que el texto se lea. */
8
+ backgroundSrc?: string;
9
+ className?: string;
10
+ };
11
+ export declare const QuoteCard: ({ quote, author, icon, backgroundSrc, className }: QuoteCardProps) => import('react').JSX.Element;
@@ -10,4 +10,4 @@ export type RecommendationCardProps = {
10
10
  onAction?: () => void;
11
11
  className?: string;
12
12
  };
13
- export declare const RecommendationCard: ({ title, description, tags, priority, impact, confidence, actionLabel, onAction, className, }: RecommendationCardProps) => import("react").JSX.Element;
13
+ export declare const RecommendationCard: ({ title, description, tags, priority, impact, confidence, actionLabel, onAction, className, }: RecommendationCardProps) => import('react').JSX.Element;
@@ -13,5 +13,5 @@ type SplitBarProps = {
13
13
  * Una sola barra dividida en 2+ segmentos proporcionales (ej. sexo M/F, o una distribución con más
14
14
  * categorías), con labels debajo. Distinto de `MetricBarList`, que apila una barra por fila.
15
15
  */
16
- export declare const SplitBar: ({ segments, size, className }: SplitBarProps) => import("react").JSX.Element;
16
+ export declare const SplitBar: ({ segments, size, className }: SplitBarProps) => import('react').JSX.Element;
17
17
  export {};
@@ -1,5 +1,5 @@
1
1
  export { Badge } from './Badge';
2
- export type { BadgeProps } from './Badge';
2
+ export type { BadgeAppearance, BadgeProps } from './Badge';
3
3
  export { badgeClassName, badgeDotClassName } from './badgeClassName';
4
4
  export { KPICard, KPIGrid } from './KPICard';
5
5
  export type { KPICardAccentTone, KPICardProgress, KPICardLayout, KPICardVariant, KPICardIconStyle, KPICardSize, KPICardDensity, KPICardTrendDirection, KPICardValueFormat, KPICardFormatOptions, KPICardSparkline, KPICardProps, } from './KPICard';
@@ -10,8 +10,12 @@ export type { QuickActionTileProps, QuickActionGridProps } from './QuickActionTi
10
10
  export { MetricBarRow, MetricBarList } from './MetricBar';
11
11
  export { EntityCard, EntityCardGrid } from './EntityCard';
12
12
  export type { EntityCardProps } from './EntityCard';
13
+ export { ProfileCard } from './ProfileCard';
14
+ export type { ProfileCardFact, ProfileCardProps } from './ProfileCard';
15
+ export { QuoteCard } from './QuoteCard';
16
+ export type { QuoteCardProps } from './QuoteCard';
13
17
  export { RecommendationCard } from './RecommendationCard';
14
18
  export type { RecommendationCardProps } from './RecommendationCard';
15
19
  export { ModuleCard, ModuleCardGrid } from './ModuleCard';
16
20
  export type { ModuleCardProps } from './ModuleCard';
17
- export type { BadgeVariant, BadgeSize, BadgeShape, MetricBarTone, MetricBarThresholds, MetricBarItem, MetricBarFootnote, SplitBarTone, SplitBarSegment, EntityCardStatus, EntityCardVariant, RecommendationPriority, RecommendationImpact, ModuleCardVariant, ModuleCardDensity, } from './types';
21
+ export type { BadgeVariant, BadgeSize, BadgeShape, MetricBarTone, MetricBarThresholds, MetricBarItem, MetricBarLayout, MetricBarFootnote, SplitBarTone, SplitBarSegment, EntityCardStatus, EntityCardVariant, RecommendationPriority, RecommendationImpact, ModuleCardVariant, ModuleCardDensity, } from './types';
@@ -1,3 +1,4 @@
1
+ import { ReactNode } from 'react';
1
2
  export type BadgeVariant = "neutral" | "primary" | "success" | "warning" | "danger" | "info";
2
3
  export type BadgeSize = "sm" | "md";
3
4
  export type BadgeShape = "pill" | "circle";
@@ -37,7 +38,25 @@ export type MetricBarItem = {
37
38
  /** Texto a mostrar a la derecha en vez del autogenerado (ej. un conteo real: "442"). NUNCA es lo que
38
39
  * dimensiona la barra — eso siempre es `value` (crudo si hay `max`, 0-100 si no lo hay). */
39
40
  valueLabel?: string;
41
+ /** Color CSS de categoría (ej. `categoryColor(i)`) para el relleno de la barra y el ícono. Gana sobre `tone` y
42
+ * `thresholds` solo en esas partes gráficas: etiqueta, descripción y valor siguen con los colores de texto del tema. */
43
+ color?: string;
44
+ /** Ícono decorativo antes de la etiqueta. */
45
+ icon?: ReactNode;
46
+ /** Texto debajo de la etiqueta (ej. "Quién es"). Parte línea; no se trunca. */
47
+ description?: ReactNode;
48
+ /** Texto corto antes de la etiqueta, en el color de la barra (ej. «01.»). Solo en las disposiciones `tile` e
49
+ * `inline`. */
50
+ prefix?: string;
51
+ /** Contenido tras el valor (ej. un ícono de estado). Solo en las disposiciones `tile` e `inline`. */
52
+ trailing?: ReactNode;
53
+ /** Solo en `tile` e `inline`: la fila es un botón. */
54
+ onClick?: () => void;
55
+ selected?: boolean;
40
56
  };
57
+ /** `default`: etiqueta y valor arriba, barra debajo (publicado). `tile`: baldosa con ícono en círculo, etiqueta,
58
+ * descripción y barra con el valor a su derecha. `inline`: etiqueta, barra gruesa y valor en una sola fila. */
59
+ export type MetricBarLayout = "default" | "tile" | "inline";
41
60
  export type MetricBarFootnote = {
42
61
  text: string;
43
62
  tone?: MetricBarTone;
@@ -1,3 +1,3 @@
1
1
  import { ChartProps } from './types';
2
2
  export type { ChartProps } from './types';
3
- export declare const Chart: ({ type, data, xKey, series, height, ariaLabel, emptyMessage, className, showGrid, showTooltip, showLegend, orientation, stacking, unit, yDomain, xAxisFormat, yAxisFormat, tooltipFormat, valueLabelFormat, showValueLabels, referenceLines, onDataPointClick, }: ChartProps) => import("react").JSX.Element;
3
+ export declare const Chart: ({ type, data, xKey, series, height, ariaLabel, emptyMessage, className, showGrid, showTooltip, showLegend, orientation, stacking, unit, yDomain, xAxisFormat, yAxisFormat, tooltipFormat, valueLabelFormat, showValueLabels, referenceLines, onDataPointClick, stackRadius, }: ChartProps) => import('react').JSX.Element;
@@ -1,14 +1,35 @@
1
+ import { ReactNode } from 'react';
1
2
  export type ChartLegendItem = {
3
+ /** Identidad del ítem, única en `items`. Por defecto, `label`. */
4
+ key?: string;
2
5
  label: string;
3
6
  /** Color CSS (token o hex), el mismo de la serie del gráfico. */
4
7
  color: string;
8
+ /** Cifra que acompaña al nombre (ej. "420.530" o "88%"). Sin ella, el ítem es solo muestra y nombre. */
9
+ value?: ReactNode;
10
+ /** Ícono decorativo en lugar de la muestra de color (ej. una verificación en los indicadores de calidad). */
11
+ icon?: ReactNode;
5
12
  };
13
+ export type ChartLegendOrientation = "inline" | "vertical";
6
14
  export type ChartLegendProps = {
7
15
  items: ChartLegendItem[];
16
+ /** "inline" (por defecto): una línea que parte entre ítems. "vertical": una fila por ítem con la cifra alineada a la
17
+ * derecha, para leyendas con valores (ej. 10 dimensiones junto a una dona). */
18
+ orientation?: ChartLegendOrientation;
19
+ /** Solo en vertical: 2 reparte los ítems en dos columnas (de arriba abajo, luego la derecha) que pasan a una cuando
20
+ * el ancho no alcanza. Por defecto 1. */
21
+ columns?: 1 | 2;
22
+ /** Con `columns={2}`: ancho mínimo de cada columna antes de pasar a una sola (longitud CSS). Por defecto 13rem. */
23
+ columnMinWidth?: string;
24
+ /** Forma de la muestra de color. Por defecto "square". */
25
+ swatchShape?: "square" | "circle";
26
+ /** Con `onSelect` cada ítem es un botón (aria-pressed según `selectedKey`); recibe `key ?? label`. */
27
+ onSelect?: (key: string) => void;
28
+ selectedKey?: string;
8
29
  className?: string;
9
30
  };
10
31
  /**
11
32
  * Leyenda compacta en una línea, para la cabecera de una tarjeta (`DashboardCard.headerAction`) cuando el gráfico va
12
33
  * con `showLegend={false}`: deja el alto del gráfico para los datos.
13
34
  */
14
- export declare const ChartLegend: ({ items, className }: ChartLegendProps) => import("react").JSX.Element;
35
+ export declare const ChartLegend: ({ items, orientation, columns, columnMinWidth, swatchShape, onSelect, selectedKey, className, }: ChartLegendProps) => import('react').JSX.Element;
@@ -4,4 +4,4 @@ import { DeviationBandProps } from './types';
4
4
  * "producción -27% respecto al promedio del lote". Distinto de `MetricBar` (que dimensiona 0-100
5
5
  * contra un `max`, no contra un promedio) y de `Chart` (que es una serie, no un punto).
6
6
  */
7
- export declare const DeviationBand: ({ value, average, min, max, unit, label, valueFormat, direction, className, }: DeviationBandProps) => import("react").JSX.Element;
7
+ export declare const DeviationBand: ({ value, average, min, max, unit, label, valueFormat, direction, className, }: DeviationBandProps) => import('react').JSX.Element;
@@ -9,4 +9,4 @@ export type { DiagnosticRadarProps, RadarMetric } from './types';
9
9
  * Reutiliza los mismos tokens/formatters que `Chart` (`chartAxisTick`, `chartTooltipStyle`,
10
10
  * `buildDefaultFormatter`) para que se vea como parte del mismo sistema, no como un componente aparte.
11
11
  */
12
- export declare const DiagnosticRadar: ({ data, max, color, height, ariaLabel, emptyMessage, className, showTooltip, showLegend, showValues, valueFormat, }: DiagnosticRadarProps) => import("react").JSX.Element;
12
+ export declare const DiagnosticRadar: ({ data, max, color, height, ariaLabel, emptyMessage, className, showTooltip, showLegend, showValues, valueFormat, }: DiagnosticRadarProps) => import('react').JSX.Element;
@@ -1,2 +1,2 @@
1
1
  import { SparklineProps } from './types';
2
- export declare const Sparkline: ({ data, dataKey, type, height, width, color, ariaLabel, emptyMessage, className, }: SparklineProps) => import("react").JSX.Element;
2
+ export declare const Sparkline: ({ data, dataKey, type, height, width, color, ariaLabel, emptyMessage, className, }: SparklineProps) => import('react').JSX.Element;