@axzydev/axzy_ui_system 1.0.164 → 1.0.166
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +3195 -2563
- package/dist/index.cjs.map +1 -1
- package/dist/index.css +61 -5
- package/dist/index.css.map +1 -1
- package/dist/index.d.cts +401 -222
- package/dist/index.d.ts +401 -222
- package/dist/index.js +3362 -2732
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
- package/src/theme/theme.ts +50 -29
- package/src/theme/theme.types.ts +65 -0
package/dist/index.d.ts
CHANGED
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
|
-
import React__default, { ReactNode } from 'react';
|
|
3
|
+
import React__default, { ReactNode, FocusEvent } from 'react';
|
|
4
4
|
import * as Yup from 'yup';
|
|
5
5
|
|
|
6
|
-
declare const buttonVariants: Record<string, string>;
|
|
7
|
-
|
|
8
6
|
declare const semanticColors: {
|
|
9
7
|
primary: {
|
|
10
8
|
50: string;
|
|
@@ -127,8 +125,26 @@ declare const semanticColors: {
|
|
|
127
125
|
|
|
128
126
|
type ColorsTypes = keyof typeof semanticColors;
|
|
129
127
|
|
|
128
|
+
declare const badgeVariants: {
|
|
129
|
+
readonly filled: "filled";
|
|
130
|
+
readonly outlined: "outlined";
|
|
131
|
+
};
|
|
132
|
+
|
|
130
133
|
type SizesTypes = "small" | "medium" | "large";
|
|
131
134
|
|
|
135
|
+
interface ITBadgetProps {
|
|
136
|
+
label?: string;
|
|
137
|
+
children?: React.ReactNode;
|
|
138
|
+
color?: ColorsTypes;
|
|
139
|
+
size?: SizesTypes;
|
|
140
|
+
variant?: keyof typeof badgeVariants;
|
|
141
|
+
className?: string;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
declare function ITBadget({ children, label, color, size, variant, className, }: ITBadgetProps): react_jsx_runtime.JSX.Element;
|
|
145
|
+
|
|
146
|
+
declare const buttonVariants: Record<string, string>;
|
|
147
|
+
|
|
132
148
|
interface ITButtonProps {
|
|
133
149
|
label?: string;
|
|
134
150
|
children?: React.ReactNode;
|
|
@@ -162,6 +178,9 @@ interface ITCalendarProps {
|
|
|
162
178
|
onSelectRange?: (start: Date, end: Date) => void;
|
|
163
179
|
value?: Date;
|
|
164
180
|
onChange?: (date: Date) => void;
|
|
181
|
+
selectionMode?: 'single' | 'range';
|
|
182
|
+
startDate?: Date;
|
|
183
|
+
endDate?: Date;
|
|
165
184
|
minDate?: Date;
|
|
166
185
|
maxDate?: Date;
|
|
167
186
|
className?: string;
|
|
@@ -189,21 +208,122 @@ interface ITCardProps {
|
|
|
189
208
|
*/
|
|
190
209
|
declare function ITCard({ title, image, alt, children, actions, className, imageClassName, titleClassName, contentClassName, actionClassName, onClick, }: ITCardProps): react_jsx_runtime.JSX.Element;
|
|
191
210
|
|
|
211
|
+
type TableVariants = "default" | "striped" | "bordered";
|
|
212
|
+
type TableSize = "sm" | "md" | "lg";
|
|
213
|
+
|
|
214
|
+
type ColumnType = "string" | "date" | "number" | "boolean" | "actions" | "catalog";
|
|
215
|
+
interface CatalogOption {
|
|
216
|
+
id: string | number;
|
|
217
|
+
name: string;
|
|
218
|
+
}
|
|
219
|
+
interface Column<T = any> {
|
|
220
|
+
key: string;
|
|
221
|
+
label: string;
|
|
222
|
+
className?: string;
|
|
223
|
+
currencyMX?: boolean;
|
|
224
|
+
actions?: (row: T) => React.ReactNode;
|
|
225
|
+
filter?: boolean | "catalog";
|
|
226
|
+
type: ColumnType;
|
|
227
|
+
sortable?: boolean;
|
|
228
|
+
render?: (row: T) => React.ReactNode;
|
|
229
|
+
editComponent?: (props: {
|
|
230
|
+
value: any;
|
|
231
|
+
onChange: (value: any) => void;
|
|
232
|
+
rowData: T;
|
|
233
|
+
}) => React.ReactNode;
|
|
234
|
+
catalogOptions?: {
|
|
235
|
+
data: CatalogOption[];
|
|
236
|
+
loading?: boolean;
|
|
237
|
+
error?: boolean;
|
|
238
|
+
};
|
|
239
|
+
}
|
|
240
|
+
interface ITTableProps<T> {
|
|
241
|
+
columns: Column<T>[];
|
|
242
|
+
containerClassName?: string;
|
|
243
|
+
data: T[];
|
|
244
|
+
variant?: TableVariants;
|
|
245
|
+
className?: string;
|
|
246
|
+
size?: TableSize;
|
|
247
|
+
itemsPerPageOptions?: Array<number>;
|
|
248
|
+
defaultItemsPerPage?: number;
|
|
249
|
+
title?: string;
|
|
250
|
+
}
|
|
251
|
+
|
|
252
|
+
interface ITDataTableFetchParams {
|
|
253
|
+
page: number;
|
|
254
|
+
limit: number;
|
|
255
|
+
filters: Record<string, string | number | boolean | Date>;
|
|
256
|
+
sort?: {
|
|
257
|
+
key: string;
|
|
258
|
+
direction: "asc" | "desc";
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
interface ITDataTableResponse<T> {
|
|
262
|
+
data: T[];
|
|
263
|
+
total: number;
|
|
264
|
+
}
|
|
265
|
+
interface ITDataTableProps<T extends Record<string, unknown>> {
|
|
266
|
+
/**
|
|
267
|
+
* The column configuration array matching ITTable but adapted for Server-Side processing
|
|
268
|
+
*/
|
|
269
|
+
columns: Column<T>[];
|
|
270
|
+
/**
|
|
271
|
+
* Async callback that the component will trigger whenever pagination, filtering or sorting changes.
|
|
272
|
+
* It must return a Promise with `data` array and the `total` items matching the query.
|
|
273
|
+
*/
|
|
274
|
+
fetchData: (params: ITDataTableFetchParams) => Promise<ITDataTableResponse<T>>;
|
|
275
|
+
/**
|
|
276
|
+
* The amount of milliseconds to wait after internal `filters` state changes
|
|
277
|
+
* before triggering `fetchData`. Helpful to avoid spamming the backend while typing.
|
|
278
|
+
* @default 400
|
|
279
|
+
*/
|
|
280
|
+
debounceMs?: number;
|
|
281
|
+
/**
|
|
282
|
+
* Filters managed outside of the ITDataTable (e.g. a date range picker).
|
|
283
|
+
* These will be merged with the internal column filters before calling fetchData.
|
|
284
|
+
*/
|
|
285
|
+
externalFilters?: Record<string, string | number | boolean | Date>;
|
|
286
|
+
/**
|
|
287
|
+
* Custom element to display instead of the default spinner while `isLoading` is true.
|
|
288
|
+
*/
|
|
289
|
+
loadingIndicator?: ReactNode;
|
|
290
|
+
/**
|
|
291
|
+
* Re-fetches the table automatically upon mounting.
|
|
292
|
+
* @default true
|
|
293
|
+
*/
|
|
294
|
+
fetchOnMount?: boolean;
|
|
295
|
+
/**
|
|
296
|
+
* External hook to force the component to re-fetch the current page.
|
|
297
|
+
* Example: trigger after a successful modal form submission.
|
|
298
|
+
*/
|
|
299
|
+
reloadTrigger?: number | string | boolean;
|
|
300
|
+
containerClassName?: string;
|
|
301
|
+
className?: string;
|
|
302
|
+
variant?: "default" | "striped" | "bordered" | "minimal";
|
|
303
|
+
size?: "sm" | "md" | "lg";
|
|
304
|
+
itemsPerPageOptions?: number[];
|
|
305
|
+
defaultItemsPerPage?: number;
|
|
306
|
+
title?: string | ReactNode;
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
declare function ITDataTable<T extends Record<string, unknown>>({ columns, fetchData, debounceMs, externalFilters, loadingIndicator, fetchOnMount, reloadTrigger, containerClassName, className, variant, size, itemsPerPageOptions, defaultItemsPerPage, title, }: ITDataTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
310
|
+
|
|
192
311
|
interface ITDatePickerProps {
|
|
193
312
|
name: string;
|
|
194
|
-
value?: Date;
|
|
313
|
+
value?: Date | [Date | null, Date | null];
|
|
195
314
|
onChange: (event: React.ChangeEvent<HTMLInputElement> | {
|
|
196
315
|
target: {
|
|
197
316
|
name: string;
|
|
198
|
-
value: Date;
|
|
317
|
+
value: Date | [Date | null, Date | null];
|
|
199
318
|
};
|
|
200
319
|
}) => void;
|
|
201
320
|
onBlur?: (event: React.FocusEvent<HTMLInputElement> | {
|
|
202
321
|
target: {
|
|
203
322
|
name: string;
|
|
204
|
-
value: Date;
|
|
323
|
+
value: Date | [Date | null, Date | null];
|
|
205
324
|
};
|
|
206
325
|
}) => void;
|
|
326
|
+
range?: boolean;
|
|
207
327
|
variant?: ColorsTypes;
|
|
208
328
|
size?: SizesTypes;
|
|
209
329
|
className?: string;
|
|
@@ -218,7 +338,7 @@ interface ITDatePickerProps {
|
|
|
218
338
|
maxDate?: Date;
|
|
219
339
|
}
|
|
220
340
|
|
|
221
|
-
declare function ITDatePicker({ name, value, onChange, onBlur, variant, size, className, calendarClassName, disabled, label, touched, error, required, placeholder, minDate, maxDate, }: ITDatePickerProps): react_jsx_runtime.JSX.Element;
|
|
341
|
+
declare function ITDatePicker({ name, value, onChange, onBlur, variant, size, className, calendarClassName, disabled, label, touched, error, required, placeholder, minDate, maxDate, range, }: ITDatePickerProps): react_jsx_runtime.JSX.Element;
|
|
222
342
|
|
|
223
343
|
interface ITDialogProps {
|
|
224
344
|
isOpen: boolean;
|
|
@@ -335,6 +455,13 @@ interface ITFormBuilderProps {
|
|
|
335
455
|
|
|
336
456
|
declare function ITFormBuilder({ fields, config, columns, values, handleChange, handleBlur, touched, errors, setFieldValue, setFieldTouched, setFieldError, isSubmitting, }: ITFormBuilderProps): react_jsx_runtime.JSX.Element;
|
|
337
457
|
|
|
458
|
+
declare const ITImage: ({ src, alt, className, fallbackSrc, }: {
|
|
459
|
+
src: any;
|
|
460
|
+
alt: any;
|
|
461
|
+
className?: string;
|
|
462
|
+
fallbackSrc?: string;
|
|
463
|
+
}) => react_jsx_runtime.JSX.Element;
|
|
464
|
+
|
|
338
465
|
interface ITInputProps {
|
|
339
466
|
name: string;
|
|
340
467
|
type?: "text" | "password" | "number" | "email" | "checkbox" | "radio" | "textarea";
|
|
@@ -371,6 +498,89 @@ interface ITInputProps {
|
|
|
371
498
|
|
|
372
499
|
declare function ITInput({ name, type, label, placeholder, value, onChange, onBlur, disabled, className, containerClassName, labelClassName, touched, error, formatNumber, required, autoFocus, onClick, iconLeft, iconRight, maxLength, minLength, checked, showHintLength, currencyFormat, rows, min, max, readOnly, focusContent }: ITInputProps): react_jsx_runtime.JSX.Element;
|
|
373
500
|
|
|
501
|
+
interface ITNavigationItem$1 {
|
|
502
|
+
id: string;
|
|
503
|
+
label: string;
|
|
504
|
+
icon?: React.ReactNode;
|
|
505
|
+
action?: () => void;
|
|
506
|
+
isActive?: boolean;
|
|
507
|
+
subitems?: ITNavigationSubItem$1[];
|
|
508
|
+
}
|
|
509
|
+
interface ITNavigationSubItem$1 {
|
|
510
|
+
id: string;
|
|
511
|
+
label: string;
|
|
512
|
+
action: () => void;
|
|
513
|
+
isActive?: boolean;
|
|
514
|
+
}
|
|
515
|
+
interface ITNavbarProps {
|
|
516
|
+
logo?: React.ReactNode;
|
|
517
|
+
logoText?: string;
|
|
518
|
+
navigationItems?: ITNavigationItem$1[];
|
|
519
|
+
userMenu?: {
|
|
520
|
+
userImage?: string;
|
|
521
|
+
userName: string;
|
|
522
|
+
userEmail: string;
|
|
523
|
+
menuItems: Array<{
|
|
524
|
+
label: string;
|
|
525
|
+
onClick: () => void;
|
|
526
|
+
}>;
|
|
527
|
+
};
|
|
528
|
+
children?: React.ReactNode;
|
|
529
|
+
navItems?: React.ReactNode;
|
|
530
|
+
showSidebar?: boolean;
|
|
531
|
+
showSidebarOnMobile?: boolean;
|
|
532
|
+
sidebarItems?: React.ReactNode;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
declare function ITNavbar({ logo, logoText, navigationItems, userMenu, children, navItems, showSidebar, showSidebarOnMobile, sidebarItems, }: ITNavbarProps): react_jsx_runtime.JSX.Element;
|
|
536
|
+
|
|
537
|
+
interface ITPaginationProps {
|
|
538
|
+
/**
|
|
539
|
+
* Current active page (1-indexed).
|
|
540
|
+
*/
|
|
541
|
+
currentPage: number;
|
|
542
|
+
/**
|
|
543
|
+
* Total number of pages available.
|
|
544
|
+
*/
|
|
545
|
+
totalPages: number;
|
|
546
|
+
/**
|
|
547
|
+
* Callback fired when a page is clicked or next/prev is activated.
|
|
548
|
+
*/
|
|
549
|
+
onPageChange: (page: number) => void;
|
|
550
|
+
/**
|
|
551
|
+
* Number of visible pages before and after the current page.
|
|
552
|
+
* Default: 1
|
|
553
|
+
*/
|
|
554
|
+
siblingCount?: number;
|
|
555
|
+
/**
|
|
556
|
+
* Semantic color from the theme (primary, secondary, success, danger, warning, info, purple).
|
|
557
|
+
* Default: primary
|
|
558
|
+
*/
|
|
559
|
+
color?: string;
|
|
560
|
+
/**
|
|
561
|
+
* Additional CSS classes for the container.
|
|
562
|
+
*/
|
|
563
|
+
className?: string;
|
|
564
|
+
/**
|
|
565
|
+
* Options for items per page selector.
|
|
566
|
+
*/
|
|
567
|
+
itemsPerPageOptions?: number[];
|
|
568
|
+
/**
|
|
569
|
+
* Current items per page value. Required if itemsPerPageOptions is provided.
|
|
570
|
+
*/
|
|
571
|
+
itemsPerPage?: number;
|
|
572
|
+
/**
|
|
573
|
+
* Callback fired when items per page is changed.
|
|
574
|
+
*/
|
|
575
|
+
onItemsPerPageChange?: (value: number) => void;
|
|
576
|
+
/**
|
|
577
|
+
* Total number of items across all pages. Used to render "1-10 of 50" text.
|
|
578
|
+
*/
|
|
579
|
+
totalItems?: number;
|
|
580
|
+
}
|
|
581
|
+
|
|
582
|
+
declare function ITPagination({ currentPage, totalPages, onPageChange, siblingCount, color, className, itemsPerPageOptions, itemsPerPage, onItemsPerPageChange, totalItems, }: ITPaginationProps): react_jsx_runtime.JSX.Element;
|
|
583
|
+
|
|
374
584
|
interface OptionType {
|
|
375
585
|
[key: string]: string;
|
|
376
586
|
}
|
|
@@ -401,6 +611,56 @@ interface ITSelectProps {
|
|
|
401
611
|
*/
|
|
402
612
|
declare function ITSelect({ name, options, label, placeholder, valueField, labelField, value, onChange, onBlur, disabled, className, touched, required, error, readOnly, }: ITSelectProps): react_jsx_runtime.JSX.Element;
|
|
403
613
|
|
|
614
|
+
interface ITSearchSelectOption {
|
|
615
|
+
label: string;
|
|
616
|
+
value: string | number;
|
|
617
|
+
[key: string]: any;
|
|
618
|
+
}
|
|
619
|
+
interface ITSearchSelectProps {
|
|
620
|
+
/** Nombre del campo para integraciones con formularios */
|
|
621
|
+
name?: string;
|
|
622
|
+
/** Etiqueta que se muestra arriba del select */
|
|
623
|
+
label?: string;
|
|
624
|
+
/** Texto que se muestra cuando no hay nada seleccionado */
|
|
625
|
+
placeholder?: string;
|
|
626
|
+
/** Valor seleccionado */
|
|
627
|
+
value?: string | number;
|
|
628
|
+
/** Arreglo de opciones (Modo 1: Lista estática) */
|
|
629
|
+
options?: ITSearchSelectOption[];
|
|
630
|
+
/** Campo que se usará como valor (por defecto "value") */
|
|
631
|
+
valueField?: string;
|
|
632
|
+
/** Campo que se usará como etiqueta (por defecto "label") */
|
|
633
|
+
labelField?: string;
|
|
634
|
+
/** Callback cuando cambia el valor */
|
|
635
|
+
onChange?: (value: string | number, option?: ITSearchSelectOption) => void;
|
|
636
|
+
/** Callback cuando pierde el foco */
|
|
637
|
+
onBlur?: (e: FocusEvent<any>) => void;
|
|
638
|
+
/** Indica si el componente está deshabilitado */
|
|
639
|
+
disabled?: boolean;
|
|
640
|
+
/** Clase CSS adicional para el contenedor */
|
|
641
|
+
className?: string;
|
|
642
|
+
/** Indica si el campo ha sido tocado (para validaciones) */
|
|
643
|
+
touched?: boolean;
|
|
644
|
+
/** Indica si el campo es requerido */
|
|
645
|
+
required?: boolean;
|
|
646
|
+
/** Mensaje de error */
|
|
647
|
+
error?: string;
|
|
648
|
+
/** Indica si el campo es de solo lectura */
|
|
649
|
+
readOnly?: boolean;
|
|
650
|
+
/** Callback para búsqueda en servidor (Modo 2: Conexión con API) */
|
|
651
|
+
onSearch?: (query: string) => void;
|
|
652
|
+
/** Indica si se está cargando información desde la API */
|
|
653
|
+
isLoading?: boolean;
|
|
654
|
+
/** Mensaje cuando no hay resultados */
|
|
655
|
+
noResultsMessage?: string;
|
|
656
|
+
}
|
|
657
|
+
|
|
658
|
+
/**
|
|
659
|
+
* ITSearchSelect - Un componente de selección con buscador integrado.
|
|
660
|
+
* Soporta filtrado local y búsqueda remota via API.
|
|
661
|
+
*/
|
|
662
|
+
declare function ITSearchSelect({ name, options, label, placeholder, valueField, labelField, value, onChange, onBlur, disabled, className, touched, required, error, readOnly, onSearch, isLoading, noResultsMessage, }: ITSearchSelectProps): react_jsx_runtime.JSX.Element;
|
|
663
|
+
|
|
404
664
|
interface ITSlideToggleProps {
|
|
405
665
|
/**
|
|
406
666
|
* Callback executed when the switch is toggled. Receives the new state.
|
|
@@ -447,48 +707,12 @@ interface ITSlideToggleProps {
|
|
|
447
707
|
declare function ITSlideToggle({ onToggle, isOn: controlledIsOn, initialState, activeColor, inactiveColor, // default gray-400
|
|
448
708
|
disabled, size, className, }: ITSlideToggleProps): react_jsx_runtime.JSX.Element;
|
|
449
709
|
|
|
450
|
-
|
|
451
|
-
type TableSize = "sm" | "md" | "lg";
|
|
710
|
+
declare function ITTable<T extends Record<string, unknown>>({ columns, data, containerClassName, className, variant, size, itemsPerPageOptions, defaultItemsPerPage, title, }: ITTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
452
711
|
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
id: string | number;
|
|
456
|
-
name: string;
|
|
457
|
-
}
|
|
458
|
-
interface Column<T = any> {
|
|
459
|
-
key: string;
|
|
460
|
-
label: string;
|
|
461
|
-
className?: string;
|
|
462
|
-
currencyMX?: boolean;
|
|
463
|
-
actions?: (row: T) => React.ReactNode;
|
|
464
|
-
filter?: boolean | "catalog";
|
|
465
|
-
type: ColumnType;
|
|
466
|
-
sortable?: boolean;
|
|
467
|
-
render?: (row: T) => React.ReactNode;
|
|
468
|
-
editComponent?: (props: {
|
|
469
|
-
value: any;
|
|
470
|
-
onChange: (value: any) => void;
|
|
471
|
-
rowData: T;
|
|
472
|
-
}) => React.ReactNode;
|
|
473
|
-
catalogOptions?: {
|
|
474
|
-
data: CatalogOption[];
|
|
475
|
-
loading?: boolean;
|
|
476
|
-
error?: boolean;
|
|
477
|
-
};
|
|
478
|
-
}
|
|
479
|
-
interface ITTableProps<T> {
|
|
480
|
-
columns: Column<T>[];
|
|
481
|
-
containerClassName?: string;
|
|
482
|
-
data: T[];
|
|
483
|
-
variant?: TableVariants;
|
|
712
|
+
declare function ITText({ children, className }: {
|
|
713
|
+
children: any;
|
|
484
714
|
className?: string;
|
|
485
|
-
|
|
486
|
-
itemsPerPageOptions?: Array<number>;
|
|
487
|
-
defaultItemsPerPage?: number;
|
|
488
|
-
title?: string;
|
|
489
|
-
}
|
|
490
|
-
|
|
491
|
-
declare function ITTable<T extends Record<string, unknown>>({ columns, data, containerClassName, className, variant, size, itemsPerPageOptions, defaultItemsPerPage, title, }: ITTableProps<T>): react_jsx_runtime.JSX.Element;
|
|
715
|
+
}): react_jsx_runtime.JSX.Element;
|
|
492
716
|
|
|
493
717
|
interface ITToastProps {
|
|
494
718
|
message: string;
|
|
@@ -500,135 +724,37 @@ interface ITToastProps {
|
|
|
500
724
|
|
|
501
725
|
declare function ITToast({ message, type, duration, position, onClose, }: ITToastProps): react_jsx_runtime.JSX.Element;
|
|
502
726
|
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
id: string;
|
|
513
|
-
label: string;
|
|
514
|
-
action: () => void;
|
|
515
|
-
isActive?: boolean;
|
|
516
|
-
}
|
|
517
|
-
interface ITNavbarProps {
|
|
518
|
-
logo?: React.ReactNode;
|
|
519
|
-
logoText?: string;
|
|
520
|
-
navigationItems?: ITNavigationItem$1[];
|
|
521
|
-
userMenu?: {
|
|
522
|
-
userImage?: string;
|
|
523
|
-
userName: string;
|
|
524
|
-
userEmail: string;
|
|
525
|
-
menuItems: Array<{
|
|
526
|
-
label: string;
|
|
527
|
-
onClick: () => void;
|
|
528
|
-
}>;
|
|
529
|
-
};
|
|
530
|
-
children?: React.ReactNode;
|
|
531
|
-
navItems?: React.ReactNode;
|
|
532
|
-
showSidebar?: boolean;
|
|
533
|
-
showSidebarOnMobile?: boolean;
|
|
534
|
-
sidebarItems?: React.ReactNode;
|
|
535
|
-
}
|
|
536
|
-
|
|
537
|
-
declare function ITNavbar({ logo, logoText, navigationItems, userMenu, children, navItems, showSidebar, showSidebarOnMobile, sidebarItems, }: ITNavbarProps): react_jsx_runtime.JSX.Element;
|
|
538
|
-
|
|
539
|
-
declare function ITText({ children, className }: {
|
|
540
|
-
children: any;
|
|
541
|
-
className?: string;
|
|
542
|
-
}): react_jsx_runtime.JSX.Element;
|
|
543
|
-
|
|
544
|
-
declare const ITImage: ({ src, alt, className, fallbackSrc, }: {
|
|
545
|
-
src: any;
|
|
546
|
-
alt: any;
|
|
547
|
-
className?: string;
|
|
548
|
-
fallbackSrc?: string;
|
|
549
|
-
}) => react_jsx_runtime.JSX.Element;
|
|
550
|
-
|
|
551
|
-
declare const badgeVariants: {
|
|
552
|
-
readonly filled: "filled";
|
|
553
|
-
readonly outlined: "outlined";
|
|
554
|
-
};
|
|
555
|
-
|
|
556
|
-
interface ITBadgetProps {
|
|
557
|
-
label?: string;
|
|
558
|
-
children?: React.ReactNode;
|
|
559
|
-
color?: ColorsTypes;
|
|
560
|
-
size?: SizesTypes;
|
|
561
|
-
variant?: keyof typeof badgeVariants;
|
|
562
|
-
className?: string;
|
|
727
|
+
/** Enum con tipos de archivo permitidos */
|
|
728
|
+
declare enum FileTypeEnum {
|
|
729
|
+
PDF = "application/pdf",
|
|
730
|
+
XLS = "application/vnd.ms-excel",
|
|
731
|
+
XLSX = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
732
|
+
CSV = "text/csv",
|
|
733
|
+
PNG = "image/png",
|
|
734
|
+
JPG = "image/jpg",
|
|
735
|
+
JPEG = "image/jpeg"
|
|
563
736
|
}
|
|
564
|
-
|
|
565
|
-
declare
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
*/
|
|
571
|
-
currentPage: number;
|
|
572
|
-
/**
|
|
573
|
-
* Total number of pages available.
|
|
574
|
-
*/
|
|
575
|
-
totalPages: number;
|
|
576
|
-
/**
|
|
577
|
-
* Callback fired when a page is clicked or next/prev is activated.
|
|
578
|
-
*/
|
|
579
|
-
onPageChange: (page: number) => void;
|
|
580
|
-
/**
|
|
581
|
-
* Number of visible pages before and after the current page.
|
|
582
|
-
* Default: 1
|
|
583
|
-
*/
|
|
584
|
-
siblingCount?: number;
|
|
585
|
-
/**
|
|
586
|
-
* Semantic color from the theme (primary, secondary, success, danger, warning, info, purple).
|
|
587
|
-
* Default: primary
|
|
588
|
-
*/
|
|
589
|
-
color?: string;
|
|
590
|
-
/**
|
|
591
|
-
* Additional CSS classes for the container.
|
|
592
|
-
*/
|
|
593
|
-
className?: string;
|
|
594
|
-
/**
|
|
595
|
-
* Options for items per page selector.
|
|
596
|
-
*/
|
|
597
|
-
itemsPerPageOptions?: number[];
|
|
598
|
-
/**
|
|
599
|
-
* Current items per page value. Required if itemsPerPageOptions is provided.
|
|
600
|
-
*/
|
|
601
|
-
itemsPerPage?: number;
|
|
602
|
-
/**
|
|
603
|
-
* Callback fired when items per page is changed.
|
|
604
|
-
*/
|
|
605
|
-
onItemsPerPageChange?: (value: number) => void;
|
|
606
|
-
/**
|
|
607
|
-
* Total number of items across all pages. Used to render "1-10 of 50" text.
|
|
608
|
-
*/
|
|
609
|
-
totalItems?: number;
|
|
737
|
+
/** Enum para el estado de subida */
|
|
738
|
+
declare enum UploadStatus {
|
|
739
|
+
PENDING = "pendiente",
|
|
740
|
+
UPLOADING = "subiendo",
|
|
741
|
+
UPLOADED = "subido",
|
|
742
|
+
ERROR = "error"
|
|
610
743
|
}
|
|
611
|
-
|
|
612
|
-
|
|
613
|
-
|
|
614
|
-
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
618
|
-
|
|
619
|
-
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
623
|
-
interface LoaderProps {
|
|
624
|
-
size?: LoaderSize;
|
|
625
|
-
variant?: LoaderVariant;
|
|
626
|
-
color?: string;
|
|
627
|
-
className?: string;
|
|
744
|
+
/** Props del componente */
|
|
745
|
+
interface ITDropfileProps {
|
|
746
|
+
onFileSelect: (file: File | null) => void;
|
|
747
|
+
onCancel?: () => void;
|
|
748
|
+
onSubmit?: (file: File) => void;
|
|
749
|
+
acceptedFileTypes?: FileTypeEnum[];
|
|
750
|
+
contentClassName?: string;
|
|
751
|
+
containerClassName?: string;
|
|
752
|
+
showStatusBadge?: boolean;
|
|
753
|
+
uploadStatus?: UploadStatus;
|
|
754
|
+
onStatusChange?: (status: UploadStatus) => void;
|
|
755
|
+
initialPreviewUrl?: string | null;
|
|
628
756
|
}
|
|
629
|
-
|
|
630
|
-
declare function ITLoader({ size, variant, color, // Default to semantic primary
|
|
631
|
-
className, }: LoaderProps): react_jsx_runtime.JSX.Element;
|
|
757
|
+
declare const ITDropfile: React__default.FC<ITDropfileProps>;
|
|
632
758
|
|
|
633
759
|
interface ITTopBarNavItem {
|
|
634
760
|
id: string;
|
|
@@ -682,60 +808,23 @@ interface ITLayoutProps {
|
|
|
682
808
|
sidebar: ITSidebarProps;
|
|
683
809
|
children: React.ReactNode;
|
|
684
810
|
className?: string;
|
|
811
|
+
contentClassName?: string;
|
|
685
812
|
}
|
|
686
813
|
|
|
687
|
-
declare function ITLayout({ topBar, sidebar, children, className, }: ITLayoutProps): react_jsx_runtime.JSX.Element;
|
|
814
|
+
declare function ITLayout({ topBar, sidebar, children, className, contentClassName, }: ITLayoutProps): react_jsx_runtime.JSX.Element;
|
|
688
815
|
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
|
|
695
|
-
|
|
696
|
-
required?: boolean;
|
|
697
|
-
touched?: boolean;
|
|
698
|
-
error?: string | boolean;
|
|
699
|
-
disabled?: boolean;
|
|
816
|
+
type LoaderSize = "sm" | "md" | "lg" | "xl";
|
|
817
|
+
type LoaderVariant = "spinner" | "dots" | "bar" | "pulse";
|
|
818
|
+
|
|
819
|
+
interface LoaderProps {
|
|
820
|
+
size?: LoaderSize;
|
|
821
|
+
variant?: LoaderVariant;
|
|
822
|
+
color?: string;
|
|
700
823
|
className?: string;
|
|
701
|
-
size?: "small" | "medium" | "large";
|
|
702
|
-
variant?: "primary" | "secondary" | "danger" | "success" | "warning" | "info" | "purple";
|
|
703
|
-
color?: "primary" | "secondary" | "danger" | "success" | "warning" | "info" | "purple" | string;
|
|
704
824
|
}
|
|
705
825
|
|
|
706
|
-
declare function
|
|
707
|
-
|
|
708
|
-
/** Enum con tipos de archivo permitidos */
|
|
709
|
-
declare enum FileTypeEnum {
|
|
710
|
-
PDF = "application/pdf",
|
|
711
|
-
XLS = "application/vnd.ms-excel",
|
|
712
|
-
XLSX = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
713
|
-
CSV = "text/csv",
|
|
714
|
-
PNG = "image/png",
|
|
715
|
-
JPG = "image/jpg",
|
|
716
|
-
JPEG = "image/jpeg"
|
|
717
|
-
}
|
|
718
|
-
/** Enum para el estado de subida */
|
|
719
|
-
declare enum UploadStatus {
|
|
720
|
-
PENDING = "pendiente",
|
|
721
|
-
UPLOADING = "subiendo",
|
|
722
|
-
UPLOADED = "subido",
|
|
723
|
-
ERROR = "error"
|
|
724
|
-
}
|
|
725
|
-
/** Props del componente */
|
|
726
|
-
interface ITDropfileProps {
|
|
727
|
-
onFileSelect: (file: File | null) => void;
|
|
728
|
-
onCancel?: () => void;
|
|
729
|
-
onSubmit?: (file: File) => void;
|
|
730
|
-
acceptedFileTypes?: FileTypeEnum[];
|
|
731
|
-
contentClassName?: string;
|
|
732
|
-
containerClassName?: string;
|
|
733
|
-
showStatusBadge?: boolean;
|
|
734
|
-
uploadStatus?: UploadStatus;
|
|
735
|
-
onStatusChange?: (status: UploadStatus) => void;
|
|
736
|
-
initialPreviewUrl?: string | null;
|
|
737
|
-
}
|
|
738
|
-
declare const ITDropfile: React__default.FC<ITDropfileProps>;
|
|
826
|
+
declare function ITLoader({ size, variant, color, // Default to semantic primary
|
|
827
|
+
className, }: LoaderProps): react_jsx_runtime.JSX.Element;
|
|
739
828
|
|
|
740
829
|
type IconType = React__default.ReactNode;
|
|
741
830
|
interface Step {
|
|
@@ -792,6 +881,71 @@ interface ITThemeConfig {
|
|
|
792
881
|
backgroundColor?: string;
|
|
793
882
|
contentPadding?: string;
|
|
794
883
|
};
|
|
884
|
+
topbar?: {
|
|
885
|
+
backgroundColor?: string;
|
|
886
|
+
borderColor?: string;
|
|
887
|
+
iconColor?: string;
|
|
888
|
+
iconHoverColor?: string;
|
|
889
|
+
shadow?: string;
|
|
890
|
+
textColor?: string;
|
|
891
|
+
textHoverColor?: string;
|
|
892
|
+
userMenu?: {
|
|
893
|
+
backgroundColor?: string;
|
|
894
|
+
hoverBackground?: string;
|
|
895
|
+
textColor?: string;
|
|
896
|
+
subtitleColor?: string;
|
|
897
|
+
dropdown?: {
|
|
898
|
+
backgroundColor?: string;
|
|
899
|
+
borderColor?: string;
|
|
900
|
+
itemHoverBackground?: string;
|
|
901
|
+
};
|
|
902
|
+
};
|
|
903
|
+
};
|
|
904
|
+
sidebar?: {
|
|
905
|
+
backgroundColor?: string;
|
|
906
|
+
borderColor?: string;
|
|
907
|
+
label?: {
|
|
908
|
+
color?: string;
|
|
909
|
+
size?: string;
|
|
910
|
+
weight?: string;
|
|
911
|
+
};
|
|
912
|
+
icon?: {
|
|
913
|
+
color?: string;
|
|
914
|
+
size?: string;
|
|
915
|
+
};
|
|
916
|
+
hover?: {
|
|
917
|
+
backgroundColor?: string;
|
|
918
|
+
};
|
|
919
|
+
active?: {
|
|
920
|
+
backgroundColor?: string;
|
|
921
|
+
color?: string;
|
|
922
|
+
iconColor?: string;
|
|
923
|
+
};
|
|
924
|
+
badge?: {
|
|
925
|
+
backgroundColor?: string;
|
|
926
|
+
color?: string;
|
|
927
|
+
};
|
|
928
|
+
};
|
|
929
|
+
calendar?: {
|
|
930
|
+
backgroundColor?: string;
|
|
931
|
+
borderColor?: string;
|
|
932
|
+
header?: {
|
|
933
|
+
textColor?: string;
|
|
934
|
+
hoverBackground?: string;
|
|
935
|
+
};
|
|
936
|
+
days?: {
|
|
937
|
+
textColor?: string;
|
|
938
|
+
weekendColor?: string;
|
|
939
|
+
outsideMonthColor?: string;
|
|
940
|
+
};
|
|
941
|
+
selection?: {
|
|
942
|
+
selectedColor?: string;
|
|
943
|
+
selectedBackground?: string;
|
|
944
|
+
rangeBackground?: string;
|
|
945
|
+
todayBackground?: string;
|
|
946
|
+
todayColor?: string;
|
|
947
|
+
};
|
|
948
|
+
};
|
|
795
949
|
}
|
|
796
950
|
|
|
797
951
|
interface ITThemeProviderProps {
|
|
@@ -801,4 +955,29 @@ interface ITThemeProviderProps {
|
|
|
801
955
|
|
|
802
956
|
declare function ITThemeProvider({ theme, children }: ITThemeProviderProps): react_jsx_runtime.JSX.Element;
|
|
803
957
|
|
|
804
|
-
|
|
958
|
+
interface ITTimePickerProps {
|
|
959
|
+
name: string;
|
|
960
|
+
value?: string;
|
|
961
|
+
label?: string;
|
|
962
|
+
placeholder?: string;
|
|
963
|
+
onChange: (e: any) => void;
|
|
964
|
+
onBlur: (e: any) => void;
|
|
965
|
+
required?: boolean;
|
|
966
|
+
touched?: boolean;
|
|
967
|
+
error?: string | boolean;
|
|
968
|
+
disabled?: boolean;
|
|
969
|
+
className?: string;
|
|
970
|
+
size?: "small" | "medium" | "large";
|
|
971
|
+
variant?: "primary" | "secondary" | "danger" | "success" | "warning" | "info" | "purple";
|
|
972
|
+
color?: "primary" | "secondary" | "danger" | "success" | "warning" | "info" | "purple" | string;
|
|
973
|
+
}
|
|
974
|
+
|
|
975
|
+
declare function ITTimePicker({ name, value, label, placeholder, onChange, onBlur, required, touched, error, disabled, className, size, variant, color, }: ITTimePickerProps): react_jsx_runtime.JSX.Element;
|
|
976
|
+
|
|
977
|
+
declare const createValidationSchema: (fields: FieldConfig[]) => Yup.ObjectSchema<{
|
|
978
|
+
[x: string]: never;
|
|
979
|
+
}, Yup.AnyObject, {
|
|
980
|
+
[x: string]: any;
|
|
981
|
+
}, "">;
|
|
982
|
+
|
|
983
|
+
export { type Column, type FieldConfig, type FieldConfigV2, ITBadget, type ITBadgetProps, ITButton, type ITButtonProps, ITCalendar, type ITCalendarProps, ITCard, type ITCardProps, ITDataTable, type ITDataTableFetchParams, type ITDataTableProps, type ITDataTableResponse, ITDatePicker, type ITDatePickerProps, ITDialog, type ITDialogProps, ITDropfile, ITFormBuilder, type ITFormBuilderProps, ITImage, ITInput, type ITInputProps, ITLayout, type ITLayoutProps, ITLoader, ITNavbar, type ITNavbarProps, ITPagination, ITSearchSelect, type ITSearchSelectProps, ITSelect, type ITSelectProps, ITSlideToggle, type ITSlideToggleProps, ITStepper, ITTable, type ITTableProps, ITText, type ITThemeConfig, ITThemeProvider, type ITThemeProviderProps, ITTimePicker, type ITTimePickerProps, ITToast, type ITToastProps, createValidationSchema };
|