@scmlatam/web-ui 0.2.39 → 0.2.44

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 (41) hide show
  1. package/dist/src/components/rb.d.ts +5 -4
  2. package/dist/src/pages/Fechas.d.ts +3 -0
  3. package/dist/src/pages/home/rb/components/PropsTable.d.ts +8 -0
  4. package/dist/src/pages/home/rb/sections/BreadcrumbsSection.d.ts +1 -0
  5. package/dist/src/pages/home/rb/types/documentation.types.d.ts +6 -0
  6. package/dist/src/rb-components/feedback/empty-state/EmptyState.d.ts +23 -0
  7. package/dist/src/rb-components/feedback/empty-state/index.d.ts +2 -0
  8. package/dist/src/rb-components/feedback/index.d.ts +1 -0
  9. package/dist/src/rb-components/form/FormShell.d.ts +2 -1
  10. package/dist/src/rb-components/shell/Breadcrumbs.d.ts +1 -2
  11. package/dist/src/rb-components/shell/index.d.ts +2 -0
  12. package/dist/src/rb-components/table/RbTable.d.ts +1 -1
  13. package/dist/src/rb-components/table/types.d.ts +7 -0
  14. package/dist/src/rb-components/timeline/Timeline.d.ts +1 -1
  15. package/dist/src/rb-components/timeline/index.d.ts +1 -1
  16. package/dist/src/rb-components/timeline/timeline.types.d.ts +17 -0
  17. package/dist/src/rb-components/timeline/timelineLayout.d.ts +4 -0
  18. package/dist/src/rb-components/tree-panel/virtualTree.types.d.ts +0 -1
  19. package/dist/src/rb-components/ui/index.d.ts +6 -2
  20. package/dist/src/rb-components/ui/overlays/Tooltip.d.ts +2 -1
  21. package/dist/src/rb-components/ui/primitives/AutoCustomCompleteField.d.ts +1 -0
  22. package/dist/src/rb-components/ui/primitives/Calendario.d.ts +134 -0
  23. package/dist/src/rb-components/ui/primitives/CalendarioTimePanel.d.ts +22 -0
  24. package/dist/src/rb-components/ui/primitives/Input.d.ts +1 -0
  25. package/dist/src/rb-components/ui/primitives/date-fields/CustomDateControl.d.ts +41 -0
  26. package/dist/src/rb-components/ui/primitives/date-fields/CustomDatePicker.d.ts +2 -1
  27. package/dist/src/rb-components/ui/primitives/date-fields/CustomDateRangePicker.d.ts +5 -13
  28. package/dist/src/rb-components/ui/primitives/date-fields/CustomDateRangefield.d.ts +2 -1
  29. package/dist/src/rb-components/ui/primitives/date-fields/CustomDatefield.d.ts +4 -1
  30. package/dist/src/rb-components/ui/primitives/date-fields/CustomIndefiniteDatePicker/CustomDatePicker.d.ts +4 -1
  31. package/dist/src/rb-components/ui/primitives/date-fields/CustomIndefiniteDatePicker/YearGrid.d.ts +2 -1
  32. package/dist/src/rb-components/ui/primitives/date-fields/CustomTimefield.d.ts +2 -1
  33. package/dist/src/rb-components/ui/primitives/date-fields/DateFieldTrigger.d.ts +4 -0
  34. package/dist/src/rb-components/ui/primitives/date-fields/DateInputTrigger.d.ts +3 -0
  35. package/dist/src/rb-components/ui/primitives/date-fields/TimeFieldTrigger.d.ts +1 -0
  36. package/dist/src/rb-components/ui/primitives/date-fields/dateUtils.d.ts +6 -0
  37. package/dist/src/rb-components/ui/primitives/date-fields/index.d.ts +2 -0
  38. package/dist/src/rb-components/ui/primitives/date-fields/useDatePopover.d.ts +1 -0
  39. package/dist/web-ui.js +8289 -7918
  40. package/dist/web-ui.umd.cjs +64 -68
  41. package/package.json +1 -1
@@ -10,11 +10,12 @@ export { RbList, RbListItem } from '../rb-components/list';
10
10
  export type { RbListItemProps, RbListProps, RbListSize, RbListVariant, } from '../rb-components/list';
11
11
  export { PillsTabs, PillsTabs as RbPillsTabs, TabPanel, TabPanel as RbTabPanel, } from '../rb-components/navigation';
12
12
  export type { PillsTabItem, PillsTabsProps, TabPanelItem, TabPanelProps, } from '../rb-components/navigation';
13
- export { Button as RBButton, Input, AutoCustomCompleteField, CustomDatefield, CustomDatePicker, CustomTimefield, CustomDateRangefield, CustomDateRangePicker, CustomDateRangeCalendar, CustomIndefiniteDatePicker, RbInlineChipField, CalendarChipIcon, ClockChipIcon, Card, CardHeader, CardTitle, CardContent, CardFooter, IconButton as RbIconButton, Tooltip, Portal, ConfirmDialog, RbContextMenu, Checkbox, Radio, RbStepper, cn, } from '../rb-components/ui';
14
- export type { AutoValueItem, ButtonProps as RBButtonProps, InputProps, CustomAutoCompleteFieldProps, CustomDatefieldProps, CustomDatePickerProps, CustomTimefieldProps, CustomDateRangefieldProps, CustomDateRangePickerProps, CustomDateRangeCalendarProps, CustomIndefiniteDatePickerProps, RbInlineChipFieldProps, RbInlineChipFieldAction, RbContextMenuAlign, RbContextMenuItem, RbContextMenuPosition, RbContextMenuProps, RbContextMenuVariant, CardProps, IconButtonProps as RbIconButtonProps, CheckboxProps, CheckboxSize, RadioProps, RbStepperProps, RbStepperStep, PortalProps, TooltipProps, ConfirmDialogProps, ConfirmDialogInitialFocus, ConfirmDialogIconType, } from '../rb-components/ui';
13
+ export { Button as RBButton, Input, AutoCustomCompleteField, CustomDatefield, CustomDatePicker, CustomTimefield, CustomDateRangefield, CustomDateRangePicker, CustomDateRangeCalendar, CustomIndefiniteDatePicker, CustomDateControl, RbInlineChipField, CalendarChipIcon, ClockChipIcon, Card, CardHeader, CardTitle, CardContent, CardFooter, IconButton as RbIconButton, Tooltip, Portal, ConfirmDialog, RbContextMenu, Checkbox, Radio, RbStepper, cn, } from '../rb-components/ui';
14
+ export type { AutoValueItem, ButtonProps as RBButtonProps, InputProps, CustomAutoCompleteFieldProps, CustomDatefieldProps, CustomDatePickerProps, CustomTimefieldProps, CustomDateRangefieldProps, CustomDateRangePickerProps, CustomDateRangeCalendarProps, CustomIndefiniteDatePickerProps, CustomDateControlProps, RbInlineChipFieldProps, RbInlineChipFieldAction, RbContextMenuAlign, RbContextMenuItem, RbContextMenuPosition, RbContextMenuProps, RbContextMenuVariant, CardProps, IconButtonProps as RbIconButtonProps, CheckboxProps, CheckboxSize, RadioProps, RbStepperProps, RbStepperStep, PortalProps, TooltipProps, ConfirmDialogProps, ConfirmDialogInitialFocus, ConfirmDialogIconType, } from '../rb-components/ui';
15
15
  export { RbTable, RbExcelTable, RbTableToolbar, RbToolbarActionButton, RbToolbarActions, RbToolbarDateRangeField, RbToolbarMultiSelectField, RbToolbarSearchField, RbToolbarSelectField, formatRbExcelDate, formatRbExcelTime, getRbExcelValueAtPath, isRbExcelEmptyValue, isValidRbExcelDate, isValidRbExcelNumber, isValidRbExcelTime, parseRbExcelValue, setRbExcelValueAtPath, } from '../rb-components/table';
16
16
  export type { RbExcelCellContext, RbExcelCreateRowContext, RbExcelEditorContext, RbExcelFieldType, RbExcelImportContext, RbExcelParseContext, RbExcelRenderContext, RbExcelRowsChangeMeta, RbExcelRowsChangeSource, RbExcelTableActions, RbExcelTableColumn, RbExcelTableLabels, RbExcelTableProps, RbExcelTableRef, RbExcelValidationError, RbExcelValidationErrorInput, RbExcelValidationErrorSource, RbExcelValidationResult, RbExcelValueSource, RbTableColumn, RbTableRowId, RbTableProps, RbTableCellParams, RbTableRowParams, RbTableInitialState, RbTablePinnedColumns, RbTableBaseRow, RbTableSize, RbTableDensity, RbTableAlign, RbTableCellContextMenuParams, RbTableCellContextMenuPosition, RbTablePaginationMode, RbTablePaginationModel, RbRowSelectionModel, RbRowsPerPageOption, RbToolbarActionsProps, RbToolbarDateRangeFieldProps, RbToolbarDateRangeValue, RbAnyTableColumn, RbLegacyGridColumn, } from '../rb-components/table';
17
- export { DashboardShell, ShellContent } from '../rb-components/shell';
17
+ export { Breadcrumbs, DashboardShell, ShellContent, } from '../rb-components/shell';
18
+ export type { BreadcrumbItem, BreadcrumbsProps } from '../rb-components/shell';
18
19
  export { Sidebar, SidebarContent, SidebarFooter, SidebarHeader, } from '../rb-components/sidebar';
19
20
  export { TopBar, TopBarUserMenu } from '../rb-components/topbar';
20
21
  export { TreePanel, VirtualTree, findNodeById, flattenTree, getExpandableNodeIds, getNodeSelectionState, getSelectableDescendantIds, getSelectableSubtreeIds, hasNodeChildren, isNodeSelectable, isNodeSelectionMutable, normalizeHierarchicalSelection, toggleExpandedNode, toggleNodeSelection, buildVirtualTreeIndex, filterVirtualTreeItems, getVirtualTreeAncestorIds, getVisibleVirtualTreeItems, normalizeVirtualTreeSearch, normalizeVirtualTreeSelection, toggleVirtualTreeSelection, useVirtualTreeState, } from '../rb-components/tree-panel';
@@ -22,4 +23,4 @@ export type { GetSelectableSubtreeOptions, TreePanelExpandedChangeDetails, TreeP
22
23
  export { getRbImageUrl, rbImages } from '../rb-components/images';
23
24
  export type { RbImageName } from '../rb-components/images';
24
25
  export { Timeline } from '../rb-components/timeline';
25
- export type { TimelineProps, TimelineSegment, TimelineBoundary, TimelineBoundaryClickArgs, TimelineSegmentClickArgs, TimelineBoundaryChangeArgs, TimelineSegmentId, } from '../rb-components/timeline';
26
+ export type { TimelineProps, TimelineCompactRange, TimelineSegment, TimelineBoundary, TimelineBoundaryClickArgs, TimelineSegmentClickArgs, TimelineBoundaryChangeArgs, TimelineSegmentId, } from '../rb-components/timeline';
@@ -0,0 +1,3 @@
1
+ import { PageProps } from '../components/core/types/types';
2
+ declare const Fechas: ({ location, navigate }: PageProps) => import("react").JSX.Element;
3
+ export { Fechas };
@@ -0,0 +1,8 @@
1
+ import { PropDefinition } from '../types/documentation.types';
2
+ export interface PropsTableProps {
3
+ componentName: string;
4
+ rows: PropDefinition[];
5
+ description?: string;
6
+ className?: string;
7
+ }
8
+ export declare function PropsTable({ componentName, rows, description, className, }: PropsTableProps): import("react").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare function BreadcrumbsSection(): import("react").JSX.Element;
@@ -4,3 +4,9 @@ export interface RbDocumentationIndexItem {
4
4
  description: string;
5
5
  }
6
6
  export type DemoPillTab = "general" | "detalle";
7
+ export interface PropDefinition {
8
+ name: string;
9
+ type: string;
10
+ default?: string;
11
+ description: string;
12
+ }
@@ -0,0 +1,23 @@
1
+ import { ReactNode } from 'react';
2
+ export type EmptyStateContext = "form" | "page";
3
+ export interface EmptyStateAction {
4
+ label: ReactNode;
5
+ onClick: () => void;
6
+ disabled?: boolean;
7
+ }
8
+ export interface EmptyStateProps {
9
+ context?: EmptyStateContext;
10
+ icon?: ReactNode;
11
+ title?: ReactNode;
12
+ description?: ReactNode;
13
+ primaryAction?: EmptyStateAction;
14
+ secondaryAction?: EmptyStateAction;
15
+ hideIcon?: boolean;
16
+ hideTitle?: boolean;
17
+ hideDescription?: boolean;
18
+ hidePrimaryAction?: boolean;
19
+ hideSecondaryAction?: boolean;
20
+ className?: string;
21
+ }
22
+ export declare function EmptyState({ context, icon, title, description, primaryAction, secondaryAction, hideIcon, hideTitle, hideDescription, hidePrimaryAction, hideSecondaryAction, className, }: EmptyStateProps): import("react").JSX.Element;
23
+ export default EmptyState;
@@ -0,0 +1,2 @@
1
+ export { EmptyState } from './EmptyState';
2
+ export type { EmptyStateAction, EmptyStateContext, EmptyStateProps, } from './EmptyState';
@@ -1,2 +1,3 @@
1
1
  export * from './system-alert';
2
2
  export * from './message-alert';
3
+ export * from './empty-state';
@@ -33,6 +33,7 @@ export interface FormShellProps {
33
33
  headerClassName?: string;
34
34
  bodyClassName?: string;
35
35
  footerClassName?: string;
36
+ marginY?: number;
36
37
  }
37
- export declare function FormShell({ open, title, ariaLabel, alert, children, footer, onClose, loading, loadingLabel, closeLabel, size, draggable, closeOnEscape, closeOnBackdrop, className, headerClassName, bodyClassName, footerClassName, }: FormShellProps): React.JSX.Element | null;
38
+ export declare function FormShell({ open, title, ariaLabel, alert, children, footer, onClose, loading, loadingLabel, closeLabel, size, draggable, closeOnEscape, closeOnBackdrop, className, headerClassName, bodyClassName, footerClassName, marginY, }: FormShellProps): React.JSX.Element | null;
38
39
  export default FormShell;
@@ -3,7 +3,7 @@ export type BreadcrumbItem = {
3
3
  label: ReactNode;
4
4
  to?: string;
5
5
  };
6
- interface BreadcrumbsProps {
6
+ export interface BreadcrumbsProps {
7
7
  items?: BreadcrumbItem[];
8
8
  separator?: ReactNode;
9
9
  className?: string;
@@ -30,4 +30,3 @@ interface BreadcrumbsProps {
30
30
  }) => ReactNode;
31
31
  }
32
32
  export default function Breadcrumbs({ items, separator, className, queryKeys, includeHome, homeLabel, homeTo, labelFormatter, }: BreadcrumbsProps): import("react").JSX.Element | null;
33
- export {};
@@ -1,2 +1,4 @@
1
1
  export { DashboardShell } from './DashboardShell';
2
2
  export { ShellContent } from './ShellContent';
3
+ export { default as Breadcrumbs } from './Breadcrumbs';
4
+ export type { BreadcrumbItem, BreadcrumbsProps } from './Breadcrumbs';
@@ -1,3 +1,3 @@
1
1
  import { default as React } from 'react';
2
2
  import { RbTableBaseRow, RbTableProps } from './types';
3
- export declare function RbTable<Row extends RbTableBaseRow = RbTableBaseRow>({ columns, rows, loading, getRowKey, title, description, toolbarLeft, toolbarRight, showToolbar, toolbarClassName, emptyText, emptyState, className, rootClassName, bodyClassName, size, fill, density, onRowClick, onCellContextMenu, rowClassName, getCellClassName, getRowClassName, checkboxSelection, rowSelectionModel, setRowSelectionModel, onRowSelectionModelChange, isRowSelectable, disableRowSelectionOnClick, pinnedColumns, initialState, paginate, paginationMode, paginationModel, setPaginationModel, onPaginationModelChange, rowCount, defaultRowsPerPage, rowsPerPageOptions, resultsLabel, viewAllLabel, prevAriaLabel, nextAriaLabel, footer, footerActions, hideFooter, }: RbTableProps<Row>): React.JSX.Element;
3
+ export declare function RbTable<Row extends RbTableBaseRow = RbTableBaseRow>({ columns, rows, loading, getRowKey, title, description, toolbarLeft, toolbarRight, showToolbar, toolbarClassName, emptyText, emptyState, className, rootClassName, bodyClassName, size, fill, density, maxHeight, onRowClick, onCellContextMenu, rowClassName, getCellClassName, getRowClassName, checkboxSelection, rowSelectionModel, setRowSelectionModel, onRowSelectionModelChange, isRowSelectable, disableRowSelectionOnClick, pinnedColumns, initialState, paginate, paginationMode, paginationModel, setPaginationModel, onPaginationModelChange, rowCount, defaultRowsPerPage, rowsPerPageOptions, resultsLabel, viewAllLabel, prevAriaLabel, nextAriaLabel, footer, footerActions, hideFooter, }: RbTableProps<Row>): React.JSX.Element;
@@ -214,6 +214,13 @@ export type RbTableProps<Row extends RbTableBaseRow = RbTableBaseRow> = {
214
214
  size?: RbTableSize;
215
215
  fill?: boolean;
216
216
  density?: RbTableDensity;
217
+ /**
218
+ * Altura máxima del body de la tabla. Acepta el mismo formato que el ancho
219
+ * de columnas: number => px, o cualquier string CSS válido ("20rem", "50vh", etc).
220
+ * Si no se define, se usa el valor por defecto asociado a 'size'.
221
+ * Se ignora cuando 'fill' está activo.
222
+ */
223
+ maxHeight?: number | string;
217
224
  onRowClick?: (row: Row, index: number) => void;
218
225
  /**
219
226
  * Se ejecuta al hacer clic derecho sobre una celda.
@@ -1,3 +1,3 @@
1
1
  import { TimelineProps } from './timeline.types';
2
- export declare function Timeline({ segments, startBoundary, endBoundary, colors, formatDate, segmentTooltip, boundaryTooltip, onSegmentClick, onBoundaryClick, allowGaps, scale, editableBoundaries, exclusiveEnd, indefiniteDate, indefiniteLabel, onBoundaryDateChange, className, }: TimelineProps): import("react").JSX.Element | null;
2
+ export declare function Timeline({ segments, mode, external_labels, legend, compactRange, tooltips, startBoundary, endBoundary, colors, formatDate, segmentTooltip, boundaryTooltip, onSegmentClick, onBoundaryClick, allowGaps, scale, editableBoundaries, exclusiveEnd, indefiniteDate, indefiniteLabel, onBoundaryDateChange, className, }: TimelineProps): import("react").JSX.Element | null;
3
3
  export default Timeline;
@@ -1,2 +1,2 @@
1
1
  export { Timeline, default } from './Timeline';
2
- export type { TimelineBoundary, TimelineBoundaryClickArgs, TimelineProps, TimelineSegment, TimelineSegmentClickArgs, TimelineSegmentId, TimelineBoundaryChangeArgs, } from './timeline.types';
2
+ export type { TimelineBoundary, TimelineBoundaryClickArgs, TimelineCompactRange, TimelineProps, TimelineSegment, TimelineSegmentClickArgs, TimelineSegmentId, TimelineBoundaryChangeArgs, } from './timeline.types';
@@ -27,6 +27,10 @@ export interface TimelineBoundary {
27
27
  color?: string;
28
28
  tooltip?: React.ReactNode;
29
29
  }
30
+ export interface TimelineCompactRange {
31
+ startDate: Dayjs;
32
+ endDate: Dayjs;
33
+ }
30
34
  export interface TimelineBoundaryClickArgs {
31
35
  /** Índice del punto (0 = inicio, `segments.length` = fin). */
32
36
  index: number;
@@ -43,6 +47,19 @@ export interface TimelineSegmentClickArgs {
43
47
  }
44
48
  export interface TimelineProps {
45
49
  segments: TimelineSegment[];
50
+ /** Vista del timeline. `simple` conserva la vista con dots y etiquetas. */
51
+ mode?: "simple" | "compact";
52
+ /** Etiquetas externas para los extremos de la vista compacta. */
53
+ external_labels?: {
54
+ fecha_inicio?: React.ReactNode;
55
+ fecha_fin?: React.ReactNode;
56
+ };
57
+ /** Muestra la leyenda de segmentos en la vista compacta. */
58
+ legend?: boolean;
59
+ /** Dominio temporal usado por la vista compacta para posicionar los segmentos. */
60
+ compactRange?: TimelineCompactRange;
61
+ /** Activa los tooltips de rango en la vista compacta. */
62
+ tooltips?: boolean;
46
63
  /** Personaliza el punto/etiqueta inicial (por defecto usa la fecha inicial del primer segmento). */
47
64
  startBoundary?: TimelineBoundary;
48
65
  /** Personaliza el punto/etiqueta final (por defecto usa la fecha final del último segmento). */
@@ -4,6 +4,10 @@ export interface BuildSlotsOptions {
4
4
  /** Reparte el ancho según la duración real de cada tramo. */
5
5
  proportional?: boolean;
6
6
  indefiniteDate?: Dayjs;
7
+ domain?: {
8
+ startDate: Dayjs;
9
+ endDate: Dayjs;
10
+ };
7
11
  }
8
12
  export declare function buildSlots(segments: TimelineSegment[], allowGaps: boolean, options?: BuildSlotsOptions): TimelineSlot[];
9
13
  export declare function buildBoundaries(segments: TimelineSegment[], segmentSlots: TimelineSlot[], allowGaps: boolean): ResolvedBoundary[];
@@ -36,7 +36,6 @@ export interface VirtualTreeApiRef<TValue = unknown> {
36
36
  scrollToItem: (itemId: VirtualTreeNodeId) => void;
37
37
  }
38
38
  export interface VirtualTreeProps<TValue = unknown> {
39
- title: React.ReactNode;
40
39
  ariaLabel?: string;
41
40
  items?: readonly VirtualTreeNode<TValue>[];
42
41
  selectionMode?: VirtualTreeSelectionMode;
@@ -14,8 +14,12 @@ export { Button } from './primitives/Button';
14
14
  export type { ButtonProps } from './primitives/Button';
15
15
  export { AutoCustomCompleteField } from './primitives/AutoCustomCompleteField';
16
16
  export type { AutoValueItem, CustomAutoCompleteFieldProps, } from './primitives/AutoCustomCompleteField';
17
- export { CustomDatefield, CustomDatePicker, CustomIndefiniteDatePicker, CustomTimefield, CustomDateRangefield, CustomDateRangePicker, CustomDateRangeCalendar, } from './primitives/date-fields';
18
- export type { CustomDatefieldProps, CustomDatePickerProps, CustomIndefiniteDatePickerProps, CustomTimefieldProps, CustomDateRangefieldProps, CustomDateRangePickerProps, CustomDateRangeCalendarProps, } from './primitives/date-fields';
17
+ export { CustomDatefield, CustomDatePicker, CustomIndefiniteDatePicker, CustomTimefield, CustomDateRangefield, CustomDateRangePicker, CustomDateRangeCalendar, CustomDateControl, } from './primitives/date-fields';
18
+ export type { CustomDatefieldProps, CustomDatePickerProps, CustomIndefiniteDatePickerProps, CustomTimefieldProps, CustomDateRangefieldProps, CustomDateRangePickerProps, CustomDateRangeCalendarProps, CustomDateControlProps, } from './primitives/date-fields';
19
+ export { Calendario } from './primitives/Calendario';
20
+ export { getDateShortcuts, getDateRangeShortcuts, } from './primitives/date-fields/DateShortcuts';
21
+ export type { DateShortcut, DateRangeShortcut, } from './primitives/date-fields/DateShortcuts';
22
+ export type { CalendarioProps, CalendarioSingleProps, CalendarioRangeProps, CalendarioRange, CalendarioMonths, CalendarioCaptionLayout, CalendarioTimeFormat, CalendarioLocale, CalendarioDateFormat, } from './primitives/Calendario';
19
23
  export { RbInlineChipField, CalendarChipIcon, ClockChipIcon, } from './primitives/RbInlineChipField';
20
24
  export type { RbInlineChipFieldProps, RbInlineChipFieldAction, } from './primitives/RbInlineChipField';
21
25
  export { RbContextMenu } from './primitives/RbContextMenu';
@@ -6,9 +6,10 @@ export interface TooltipProps {
6
6
  placement?: TooltipPlacement;
7
7
  multiline?: boolean;
8
8
  disabled?: boolean;
9
+ triggerClassName?: string;
9
10
  className?: string;
10
11
  openDelay?: number;
11
12
  closeDelay?: number;
12
13
  }
13
- export default function Tooltip({ content, children, placement, multiline, disabled, className, openDelay, closeDelay, }: TooltipProps): React.JSX.Element;
14
+ export default function Tooltip({ content, children, placement, multiline, disabled, triggerClassName, className, openDelay, closeDelay, }: TooltipProps): React.JSX.Element;
14
15
  export {};
@@ -66,6 +66,7 @@ interface CustomAutoCompleteBaseProps {
66
66
  values: AutoValueItem[];
67
67
  white: boolean;
68
68
  disabled?: boolean;
69
+ required?: boolean;
69
70
  error?: boolean;
70
71
  helperText?: ReactNode;
71
72
  emptyText?: ReactNode;
@@ -0,0 +1,134 @@
1
+ import { default as React } from 'react';
2
+ import { Dayjs } from 'dayjs';
3
+ import { CalendarioTimeFormat } from './CalendarioTimePanel';
4
+ import { DateRangeShortcut, DateShortcut } from './date-fields/DateShortcuts';
5
+ declare const CALENDARIO_LOCALES: {
6
+ readonly en: import('react-day-picker').DayPickerLocale;
7
+ readonly es: import('react-day-picker').DayPickerLocale;
8
+ };
9
+ type CalendarioLocale = keyof typeof CALENDARIO_LOCALES;
10
+ export type { CalendarioLocale };
11
+ export type CalendarioMonths = 1 | 2 | 3;
12
+ export type CalendarioCaptionLayout = "label" | "month" | "year" | "dropdown" | "hidden";
13
+ export type { CalendarioTimeFormat };
14
+ export type CalendarioRange = [Dayjs | null, Dayjs | null];
15
+ export type CalendarioDateFormat = "DD/MM/YYYY" | "MM/DD/YYYY" | "YYYY-MM-DD";
16
+ interface CalendarioBaseProps {
17
+ label: string;
18
+ disabled: boolean;
19
+ white: boolean;
20
+ fullWidth: boolean;
21
+ placeholder?: string;
22
+ /**
23
+ * label: mes y año como texto.
24
+ * month: selector de mes.
25
+ * year: selector de año.
26
+ * dropdown: selectores de mes y año.
27
+ * hidden: sin cabecera de mes/año.
28
+ */
29
+ captionLayout?: CalendarioCaptionLayout;
30
+ /**
31
+ * Permite cambiar de mes y de año.
32
+ * En false oculta las flechas, los selectores
33
+ * y bloquea el cambio al escribir.
34
+ */
35
+ enableMonthNavigation?: boolean;
36
+ /**
37
+ * Muestra el calendario. En false el panel
38
+ * solo permite elegir hora.
39
+ */
40
+ includeDatePicker?: boolean;
41
+ /**
42
+ * Agrega la selección de hora al panel.
43
+ */
44
+ includeTimePicker?: boolean;
45
+ /**
46
+ * Formato del selector de hora.
47
+ */
48
+ timeFormat?: CalendarioTimeFormat;
49
+ /**
50
+ * Agrega la columna de segundos
51
+ * al selector de hora.
52
+ */
53
+ includeSeconds?: boolean;
54
+ /**
55
+ * Intervalo de minutos del selector de hora.
56
+ */
57
+ minuteStep?: number;
58
+ locale?: CalendarioLocale | null;
59
+ minDate?: Dayjs | Date;
60
+ maxDate?: Dayjs | Date;
61
+ calendarWhite?: boolean;
62
+ /**
63
+ * Cantidad de meses visibles en el panel:
64
+ * 1 simple, 2 doble, 3 triple.
65
+ */
66
+ months?: CalendarioMonths;
67
+ /**
68
+ * Centra los calendarios y la cabecera
69
+ * dentro del panel.
70
+ */
71
+ centerCalendars?: boolean;
72
+ /**
73
+ * Formato de la fecha en el campo:
74
+ * display, máscara al escribir y parseo.
75
+ */
76
+ dateFormat?: CalendarioDateFormat;
77
+ /**
78
+ * Muestra el valor del trigger en formato corto
79
+ * (año de dos dígitos), útil en espacios reducidos.
80
+ */
81
+ compact?: boolean;
82
+ /**
83
+ * Muestra la columna de atajos
84
+ * (hoy, ayer, mañana, etc.).
85
+ */
86
+ hasShortcuts?: boolean;
87
+ /**
88
+ * Exige confirmar con el botón "Listo"
89
+ * en vez de cerrar al completar la selección.
90
+ */
91
+ noInstantAcept?: boolean;
92
+ /**
93
+ * Activa el estado visual y accesible de error.
94
+ */
95
+ error?: boolean;
96
+ /**
97
+ * Texto de ayuda o validación mostrado
98
+ * bajo el campo.
99
+ */
100
+ helperText?: React.ReactNode;
101
+ }
102
+ export interface CalendarioSingleProps extends CalendarioBaseProps {
103
+ selectionMode?: "single";
104
+ initialValue: Dayjs | null;
105
+ value: Dayjs | null;
106
+ setValue: (newValue: Dayjs | null) => void;
107
+ /**
108
+ * Habilita el check de fecha indefinida
109
+ * dentro del panel.
110
+ */
111
+ isIndefiniteAllowed?: boolean;
112
+ indefinite?: boolean;
113
+ onIndefiniteChange?: (indefinite: boolean) => void;
114
+ indefiniteLabel?: string;
115
+ /**
116
+ * Reemplaza los atajos por defecto
117
+ * (ayer, hoy, mañana).
118
+ */
119
+ shortcuts?: DateShortcut[];
120
+ }
121
+ export interface CalendarioRangeProps extends CalendarioBaseProps {
122
+ selectionMode: "range";
123
+ initialValue: CalendarioRange;
124
+ value: CalendarioRange;
125
+ setValue: (newValue: CalendarioRange) => void;
126
+ /**
127
+ * Reemplaza los atajos de rango por defecto
128
+ * (semana pasada, últimos 7 días, etc.).
129
+ */
130
+ shortcuts?: DateRangeShortcut[];
131
+ }
132
+ export type CalendarioProps = CalendarioSingleProps | CalendarioRangeProps;
133
+ declare const Calendario: (props: CalendarioProps) => React.JSX.Element;
134
+ export { Calendario };
@@ -0,0 +1,22 @@
1
+ import { default as React } from 'react';
2
+ import { Dayjs } from 'dayjs';
3
+ export type CalendarioTimeFormat = "ampm" | "24h";
4
+ export interface CalendarioTimePanelProps {
5
+ value: Dayjs | null;
6
+ onChange: (newValue: Dayjs) => void;
7
+ timeFormat?: CalendarioTimeFormat;
8
+ includeSeconds?: boolean;
9
+ minuteStep?: number;
10
+ disabled?: boolean;
11
+ /** Se dispara al elegir en la última columna. */
12
+ onComplete?: () => void;
13
+ }
14
+ export declare function CalendarioTimePanel({ value, onChange, timeFormat, includeSeconds, minuteStep, disabled, onComplete, }: CalendarioTimePanelProps): React.JSX.Element;
15
+ export declare function getCalendarioTimePattern(timeFormat: CalendarioTimeFormat, includeSeconds: boolean): "HH:mm" | "HH:mm:ss" | "hh:mm:ss A" | "hh:mm A";
16
+ export interface CalendarioTimeFieldProps extends Omit<CalendarioTimePanelProps, "onChange"> {
17
+ label?: string;
18
+ white?: boolean;
19
+ onChange: (newValue: Dayjs) => void;
20
+ }
21
+ export declare function parseCalendarioTimeText(text: string, base: Dayjs | null, timeFormat: CalendarioTimeFormat): Dayjs | null;
22
+ export declare function CalendarioTimeField({ value, onChange, label, timeFormat, includeSeconds, minuteStep, disabled, white, }: CalendarioTimeFieldProps): React.JSX.Element;
@@ -4,6 +4,7 @@ export type BaseInputProps = {
4
4
  containerClassName?: string;
5
5
  label?: React.ReactNode;
6
6
  labelVariant?: InputLabelVariant;
7
+ white?: boolean;
7
8
  hint?: React.ReactNode;
8
9
  helperText?: React.ReactNode;
9
10
  error?: boolean;
@@ -0,0 +1,41 @@
1
+ import { Dayjs } from 'dayjs';
2
+ import { CustomDatePickerProps } from './CustomDatePicker';
3
+ import { CustomDatePickerProps as CustomFieldDatePickerProps } from './CustomIndefiniteDatePicker/CustomDatePicker';
4
+ import { CustomIndefiniteDatePickerProps } from './CustomIndefiniteDatePicker/CustomIndefiniteDatePicker';
5
+ type DateControlVariant = "input" | "field";
6
+ type DateControlBaseProps = {
7
+ label: string;
8
+ initialValue?: Dayjs | null;
9
+ value: Dayjs | null;
10
+ setValue: (newValue: Dayjs | null) => void;
11
+ disabled?: boolean;
12
+ required?: boolean;
13
+ white?: boolean;
14
+ fullWidth?: boolean;
15
+ placeholder?: string;
16
+ minDate?: Dayjs | Date;
17
+ maxDate?: Dayjs | Date;
18
+ error?: boolean;
19
+ helperText?: React.ReactNode;
20
+ };
21
+ type DateControlPickerProps = Omit<CustomDatePickerProps, "label" | "initialValue" | "value" | "setValue" | "disabled" | "required" | "white" | "fullWidth" | "placeholder" | "error" | "helperText">;
22
+ type DateControlIndefiniteProps = Omit<CustomIndefiniteDatePickerProps, "label" | "value" | "setValue" | "disabled" | "required" | "white" | "fullWidth" | "placeholder" | "error" | "helperText" | "indefinite" | "onIndefiniteChange">;
23
+ type DateControlFieldProps = Omit<CustomFieldDatePickerProps, "label" | "value" | "setValue" | "disabled" | "required" | "white" | "fullWidth" | "placeholder" | "error" | "helperText">;
24
+ export interface CustomDateControlProps extends DateControlBaseProps {
25
+ /** Visualizacion editable tipo input o visualizacion compacta tipo field. */
26
+ variant?: DateControlVariant;
27
+ /** Usa el selector de fecha y hora de CustomDatefield. */
28
+ withTime?: boolean;
29
+ /** Activa la visualizacion y comportamiento de fecha indefinida. */
30
+ indefinite?: boolean;
31
+ /** Handler requerido cuando se muestra la opcion indefinida. */
32
+ onIndefiniteChange?: (indefinite: boolean) => void;
33
+ /** Props especificas del CustomDatePicker editable. */
34
+ pickerProps?: DateControlPickerProps;
35
+ /** Props especificas de la visualizacion compacta tipo field. */
36
+ fieldProps?: DateControlFieldProps;
37
+ /** Props especificas de CustomIndefiniteDatePicker. */
38
+ indefiniteProps?: DateControlIndefiniteProps;
39
+ }
40
+ declare const CustomDateControl: ({ label, initialValue, value, setValue, disabled, required, white, fullWidth, placeholder, minDate, maxDate, error, helperText, variant, withTime, indefinite, onIndefiniteChange, pickerProps, fieldProps, indefiniteProps, }: CustomDateControlProps) => import("react").JSX.Element;
41
+ export { CustomDateControl };
@@ -11,6 +11,7 @@ export interface CustomDatePickerProps {
11
11
  value: Dayjs | null;
12
12
  setValue: (newValue: Dayjs | null) => void;
13
13
  disabled: boolean;
14
+ required?: boolean;
14
15
  white: boolean;
15
16
  fullWidth: boolean;
16
17
  placeholder?: string;
@@ -28,5 +29,5 @@ export interface CustomDatePickerProps {
28
29
  */
29
30
  helperText?: React.ReactNode;
30
31
  }
31
- declare const CustomDatePicker: ({ label, initialValue, value, setValue, disabled, white, fullWidth, placeholder, captionLayout, error, helperText, locale, minDate: minDateProp, maxDate: maxDateProp, }: CustomDatePickerProps) => React.JSX.Element;
32
+ declare const CustomDatePicker: ({ label, initialValue, value, setValue, disabled, required, white, fullWidth, placeholder, captionLayout, error, helperText, locale, minDate: minDateProp, maxDate: maxDateProp, }: CustomDatePickerProps) => React.JSX.Element;
32
33
  export { CustomDatePicker };
@@ -2,20 +2,12 @@ import { default as React } from 'react';
2
2
  import { Dayjs } from 'dayjs';
3
3
  export interface CustomDateRangePickerProps {
4
4
  label: string;
5
- initialValue: [
6
- Dayjs | null,
7
- Dayjs | null
8
- ];
9
- value: [
10
- Dayjs | null,
11
- Dayjs | null
12
- ];
13
- setValue: (newValue: [
14
- Dayjs | null,
15
- Dayjs | null
16
- ]) => void;
5
+ initialValue: [Dayjs | null, Dayjs | null];
6
+ value: [Dayjs | null, Dayjs | null];
7
+ setValue: (newValue: [Dayjs | null, Dayjs | null]) => void;
17
8
  calendars: 1 | 2 | 3;
18
9
  disabled: boolean;
10
+ required?: boolean;
19
11
  white: boolean;
20
12
  fullWidth: boolean;
21
13
  /**
@@ -24,5 +16,5 @@ export interface CustomDateRangePickerProps {
24
16
  */
25
17
  compact?: boolean;
26
18
  }
27
- declare const CustomDateRangePicker: ({ label, initialValue, value, setValue, calendars, disabled, white, fullWidth, compact, }: CustomDateRangePickerProps) => React.JSX.Element;
19
+ declare const CustomDateRangePicker: ({ label, initialValue, value, setValue, calendars, disabled, required, white, fullWidth, compact, }: CustomDateRangePickerProps) => React.JSX.Element;
28
20
  export { CustomDateRangePicker };
@@ -5,6 +5,7 @@ export interface CustomDateRangefieldProps {
5
5
  value: [Dayjs | null, Dayjs | null];
6
6
  setValue: (newValue: [Dayjs | null, Dayjs | null]) => void;
7
7
  disabled: boolean;
8
+ required?: boolean;
8
9
  }
9
- declare const CustomDateRangefield: ({ label, value, setValue, disabled, }: CustomDateRangefieldProps) => React.JSX.Element;
10
+ declare const CustomDateRangefield: ({ label, value, setValue, disabled, required, }: CustomDateRangefieldProps) => React.JSX.Element;
10
11
  export { CustomDateRangefield };
@@ -6,8 +6,11 @@ export interface CustomDatefieldProps {
6
6
  value: Dayjs | null;
7
7
  setValue: (newValue: Dayjs | null) => void;
8
8
  disabled: boolean;
9
+ required?: boolean;
9
10
  white: boolean;
10
11
  fullWidth: boolean;
12
+ minDate?: Dayjs | Date;
13
+ maxDate?: Dayjs | Date;
11
14
  }
12
- declare const CustomDatefield: ({ label, initialValue, value, setValue, disabled, white, fullWidth, }: CustomDatefieldProps) => React.JSX.Element;
15
+ declare const CustomDatefield: ({ label, initialValue, value, setValue, disabled, required, white, fullWidth, minDate, maxDate, }: CustomDatefieldProps) => React.JSX.Element;
13
16
  export { CustomDatefield };
@@ -1,5 +1,6 @@
1
1
  import { default as React } from 'react';
2
2
  import { Dayjs } from 'dayjs';
3
+ type DatePickerCaptionLayout = "label" | "dropdown";
3
4
  export interface DatePickerFooterApi {
4
5
  close: () => void;
5
6
  }
@@ -10,9 +11,11 @@ export interface CustomDatePickerProps {
10
11
  minDate?: Dayjs | Date;
11
12
  maxDate?: Dayjs | Date;
12
13
  disabled?: boolean;
14
+ required?: boolean;
13
15
  white?: boolean;
14
16
  fullWidth?: boolean;
15
17
  placeholder?: string;
18
+ captionLayout?: DatePickerCaptionLayout;
16
19
  /** Sobrescribe el texto del trigger (ej. "Indefinido"). */
17
20
  displayValue?: string;
18
21
  /** Texto de ayuda opcional que se muestra debajo del campo. */
@@ -22,5 +25,5 @@ export interface CustomDatePickerProps {
22
25
  /** Contenido opcional al pie del panel. Se oculta en la vista de años. */
23
26
  footer?: (api: DatePickerFooterApi) => React.ReactNode;
24
27
  }
25
- declare const CustomDatePicker: ({ label, value, setValue, minDate: minDateProp, maxDate: maxDateProp, disabled, white, fullWidth, placeholder, displayValue, footer, helperText, error, }: CustomDatePickerProps) => React.JSX.Element;
28
+ declare const CustomDatePicker: ({ label, value, setValue, minDate: minDateProp, maxDate: maxDateProp, disabled, required, white, fullWidth, placeholder, displayValue, footer, helperText, error, }: CustomDatePickerProps) => React.JSX.Element;
26
29
  export { CustomDatePicker };
@@ -2,7 +2,8 @@ import { default as React } from 'react';
2
2
  interface YearGridProps {
3
3
  years: number[];
4
4
  activeYear: number;
5
+ variant?: "light" | "dark";
5
6
  onSelect: (year: number) => void;
6
7
  }
7
- export declare const YearGrid: React.MemoExoticComponent<({ years, activeYear, onSelect }: YearGridProps) => React.JSX.Element>;
8
+ export declare const YearGrid: React.MemoExoticComponent<({ years, activeYear, variant, onSelect, }: YearGridProps) => React.JSX.Element>;
8
9
  export {};
@@ -6,6 +6,7 @@ export interface CustomTimefieldProps {
6
6
  value: Dayjs | null;
7
7
  setValue: (newValue: Dayjs | null) => void;
8
8
  disabled: boolean;
9
+ required?: boolean;
9
10
  white: boolean;
10
11
  fullWidth: boolean;
11
12
  /**
@@ -31,5 +32,5 @@ export interface CustomTimefieldProps {
31
32
  */
32
33
  helperText?: React.ReactNode;
33
34
  }
34
- declare const CustomTimefield: ({ label, initialValue, value, setValue, disabled, white, fullWidth, minuteStep, error, helperText, }: CustomTimefieldProps) => React.JSX.Element;
35
+ declare const CustomTimefield: ({ label, initialValue, value, setValue, disabled, required, white, fullWidth, minuteStep, error, helperText, }: CustomTimefieldProps) => React.JSX.Element;
35
36
  export { CustomTimefield, };
@@ -7,6 +7,7 @@ interface DateFieldTriggerProps {
7
7
  placeholder?: string;
8
8
  open?: boolean;
9
9
  disabled?: boolean;
10
+ required?: boolean;
10
11
  white?: boolean;
11
12
  fullWidth?: boolean;
12
13
  icon?: DateFieldIcon;
@@ -23,6 +24,9 @@ interface DateFieldTriggerProps {
23
24
  */
24
25
  helperText?: React.ReactNode;
25
26
  onClick?: () => void;
27
+ onChange?: (value: string) => void;
28
+ onBlur?: () => void;
29
+ onKeyDown?: React.KeyboardEventHandler<HTMLInputElement>;
26
30
  }
27
31
  export declare const DateFieldTrigger: React.ForwardRefExoticComponent<DateFieldTriggerProps & React.RefAttributes<HTMLButtonElement | HTMLInputElement>>;
28
32
  export {};
@@ -6,10 +6,13 @@ interface DateInputTriggerProps {
6
6
  placeholder: string;
7
7
  open: boolean;
8
8
  disabled: boolean;
9
+ required?: boolean;
9
10
  white: boolean;
10
11
  fullWidth: boolean;
11
12
  error: boolean;
12
13
  helperText?: React.ReactNode;
14
+ maxLength?: number;
15
+ readOnly?: boolean;
13
16
  onChange: (value: string) => void;
14
17
  onOpen: () => void;
15
18
  onBlur: () => void;
@@ -6,6 +6,7 @@ interface TimeFieldTriggerProps {
6
6
  minute: string;
7
7
  open: boolean;
8
8
  disabled: boolean;
9
+ required?: boolean;
9
10
  white: boolean;
10
11
  fullWidth: boolean;
11
12
  error: boolean;