pixelon 0.9.0 → 0.9.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveCrud/types.d.ts +2 -0
- package/dist/components/molecules/chat/StructuredContent/components/SupportRequestForm/SupportRequestForm.d.ts +25 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.esm.js +384 -302
- package/dist/index.js +384 -301
- package/dist/styles.css +1 -1
- package/dist/styles.css.map +1 -1
- package/package.json +1 -1
- package/src/styles/index.scss +1 -0
- package/dist/components/atoms/chat/AudioWaves/AudioWaves(1).d.ts +0 -21
- package/dist/components/atoms/chat/AudioWaves/index(1).d.ts +0 -2
- package/dist/components/atoms/chat/DateDivider/DateDivider(1).d.ts +0 -7
- package/dist/components/atoms/chat/Loader/Loader(1).d.ts +0 -10
- package/dist/components/atoms/chat/Loader/index(1).d.ts +0 -2
- package/dist/components/atoms/chat/Select/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/Button/Button(1).d.ts +0 -17
- package/dist/components/atoms/lumi/Checkbox/Checkbox(1).d.ts +0 -5
- package/dist/components/atoms/lumi/Checkbox/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/Checkbox/index(2).d.ts +0 -2
- package/dist/components/atoms/lumi/Checkbox/types(1).d.ts +0 -93
- package/dist/components/atoms/lumi/CurrencyDisplay/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/DateDisplay/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/DateDisplay/index(2).d.ts +0 -2
- package/dist/components/atoms/lumi/DateInput/DateInput(1).d.ts +0 -27
- package/dist/components/atoms/lumi/DateInput/WebDatePicker(1).d.ts +0 -19
- package/dist/components/atoms/lumi/DateInput/WebDatePicker(2).d.ts +0 -19
- package/dist/components/atoms/lumi/Icon/Icon(1).d.ts +0 -52
- package/dist/components/atoms/lumi/Input/index(1).d.ts +0 -3
- package/dist/components/atoms/lumi/Popover/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/Popover/types(1).d.ts +0 -62
- package/dist/components/atoms/lumi/TextArea/index(1).d.ts +0 -2
- package/dist/components/atoms/lumi/TextArea/types(1).d.ts +0 -35
- package/dist/components/atoms/lumi/TimeInput/TimeInput(1).d.ts +0 -27
- package/dist/components/atoms/lumi/TimeInput/TimeInput(2).d.ts +0 -27
- package/dist/components/molecules/chat/FullscreenViewer/hooks/useSwipeGestures(1).d.ts +0 -12
- package/dist/components/molecules/chat/StructuredContent/StructuredContent(1).d.ts +0 -10
- package/dist/components/molecules/chat/StructuredContent/components/Cart/Cart.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/components/ProductCard/ProductCard.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/components/ProductCarousel/ProductCarousel.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/components/ProductManager/ProductManager.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveCrud/PriceNegotiationChat.d.ts +0 -4
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/DynamicField(1).d.ts +0 -13
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/buildYupSchema(1).d.ts +0 -4
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/types(1).d.ts +0 -91
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveEndpoints(1).d.ts +0 -17
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveEndpoints(2).d.ts +0 -23
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveForm/useReactiveForm(1).d.ts +0 -38
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/ReactiveMap.d.ts +0 -12
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/ReactiveMapChat.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/components/ReactiveMap/types.d.ts +0 -36
- package/dist/components/molecules/chat/StructuredContent/components/ServiceShortcuts/ServiceShortcutsChat.d.ts +0 -3
- package/dist/components/molecules/chat/StructuredContent/helpers/contentParser(1).d.ts +0 -7
- package/dist/components/molecules/chat/StructuredContent/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Breadcrumb/Breadcrumb(1).d.ts +0 -10
- package/dist/components/molecules/lumi/Breadcrumb/Breadcrumb(2).d.ts +0 -10
- package/dist/components/molecules/lumi/Breadcrumb/types(1).d.ts +0 -105
- package/dist/components/molecules/lumi/Checkbox/Checkbox(1).d.ts +0 -11
- package/dist/components/molecules/lumi/Checkbox/index(1).d.ts +0 -4
- package/dist/components/molecules/lumi/Checkbox/use-cases/index(1).d.ts +0 -1
- package/dist/components/molecules/lumi/Checkbox/validation-helpers(1).d.ts +0 -151
- package/dist/components/molecules/lumi/DateInput/FormDateInput(1).d.ts +0 -12
- package/dist/components/molecules/lumi/DateInput/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/DateInput/use-cases/FormDateInputClearWithResetUseCase(1).d.ts +0 -21
- package/dist/components/molecules/lumi/DateInput/use-cases/FormDateInputErrorVisibilityUseCase(1).d.ts +0 -21
- package/dist/components/molecules/lumi/Drawer/Drawer(1).d.ts +0 -39
- package/dist/components/molecules/lumi/Drawer/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/DropdownMenu/DropdownMenu(1).d.ts +0 -22
- package/dist/components/molecules/lumi/DropdownMenu/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/DropdownMenu/types(1).d.ts +0 -29
- package/dist/components/molecules/lumi/Filter/FilterRow(1).d.ts +0 -13
- package/dist/components/molecules/lumi/Filter/helpers/conditionHelpers(1).d.ts +0 -14
- package/dist/components/molecules/lumi/Filter/index(1).d.ts +0 -5
- package/dist/components/molecules/lumi/Filter/types(1).d.ts +0 -115
- package/dist/components/molecules/lumi/Input/Input(1).d.ts +0 -12
- package/dist/components/molecules/lumi/Menu/Menu(1).d.ts +0 -18
- package/dist/components/molecules/lumi/Menu/MenuContext(1).d.ts +0 -41
- package/dist/components/molecules/lumi/Menu/MenuItem(1).d.ts +0 -6
- package/dist/components/molecules/lumi/Menu/MenuItem(2).d.ts +0 -6
- package/dist/components/molecules/lumi/Menu/MenuItemGroup(1).d.ts +0 -6
- package/dist/components/molecules/lumi/Menu/SubMenu(1).d.ts +0 -6
- package/dist/components/molecules/lumi/Menu/iconHelper(1).d.ts +0 -15
- package/dist/components/molecules/lumi/Menu/index(1).d.ts +0 -8
- package/dist/components/molecules/lumi/Menu/index(2).d.ts +0 -8
- package/dist/components/molecules/lumi/Menu/types(1).d.ts +0 -119
- package/dist/components/molecules/lumi/Pagination/Pagination(1).d.ts +0 -4
- package/dist/components/molecules/lumi/Pagination/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Select/Select(1).d.ts +0 -14
- package/dist/components/molecules/lumi/Select/Select(2).d.ts +0 -14
- package/dist/components/molecules/lumi/Select/Select(3).d.ts +0 -14
- package/dist/components/molecules/lumi/Select/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Select/index(2).d.ts +0 -2
- package/dist/components/molecules/lumi/Select/use-cases/FormSelectClearWithResetUseCase(1).d.ts +0 -21
- package/dist/components/molecules/lumi/Select/use-cases/FormSelectClearWithResetUseCase(2).d.ts +0 -21
- package/dist/components/molecules/lumi/Select/use-cases/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Select/use-cases/index(2).d.ts +0 -2
- package/dist/components/molecules/lumi/SessionExpiryPrompt/SessionExpiryPrompt.d.ts +0 -25
- package/dist/components/molecules/lumi/SessionExpiryPrompt/index.d.ts +0 -1
- package/dist/components/molecules/lumi/Table/Table(1).d.ts +0 -6
- package/dist/components/molecules/lumi/Table/Table(2).d.ts +0 -6
- package/dist/components/molecules/lumi/Table/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Table/types(1).d.ts +0 -177
- package/dist/components/molecules/lumi/Table/types(2).d.ts +0 -177
- package/dist/components/molecules/lumi/Tabs/Tabs(1).d.ts +0 -4
- package/dist/components/molecules/lumi/Tabs/Tabs(2).d.ts +0 -4
- package/dist/components/molecules/lumi/Tabs/index(1).d.ts +0 -2
- package/dist/components/molecules/lumi/Tabs/index(2).d.ts +0 -2
- package/dist/components/molecules/lumi/TimeInput/FormTimeInput(1).d.ts +0 -12
- package/dist/components/molecules/lumi/TimeInput/use-cases/FormTimeInputClearWithResetUseCase(1).d.ts +0 -21
- package/dist/components/molecules/lumi/TimeInput/use-cases/FormTimeInputErrorVisibilityUseCase(1).d.ts +0 -21
- package/dist/components/molecules/lumi/TimeInput/use-cases/index(1).d.ts +0 -4
- package/dist/components/organisms/chat/Chat/Chat(1).d.ts +0 -12
- package/dist/components/organisms/chat/Chat/hooks/useChatHandlers(1).d.ts +0 -15
- package/dist/components/organisms/chat/Chat/hooks/useKeyboardLock(1).d.ts +0 -15
- package/dist/components/organisms/chat/Chat/index(1).d.ts +0 -3
- package/dist/components/organisms/chat/Chat/store/index(1).d.ts +0 -4
- package/dist/components/organisms/chat/Chat/use-cases/GroupMessagesByDateUseCase(1).d.ts +0 -20
- package/dist/components/organisms/chat/index(1).d.ts +0 -3
- package/dist/components/organisms/chat/index(2).d.ts +0 -3
- package/dist/components/organisms/lumi/ActionBar/ActionBar(1).d.ts +0 -18
- package/dist/components/organisms/lumi/ActionBar/types(1).d.ts +0 -57
- package/dist/components/organisms/lumi/BaseNavbar/types(1).d.ts +0 -34
- package/dist/components/organisms/lumi/BaseWorkspace/BaseWorkspace(1).d.ts +0 -28
- package/dist/components/organisms/lumi/BaseWorkspace/index(1).d.ts +0 -2
- package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(1).d.ts +0 -18
- package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(2).d.ts +0 -18
- package/dist/components/organisms/lumi/Calendar/components/CalendarEvent(3).d.ts +0 -18
- package/dist/components/organisms/lumi/Calendar/components/CalendarHeader(1).d.ts +0 -14
- package/dist/components/organisms/lumi/Calendar/components/TimeGutter(1).d.ts +0 -10
- package/dist/components/organisms/lumi/Calendar/components/TimeGutter(2).d.ts +0 -10
- package/dist/components/organisms/lumi/Calendar/hooks/index(1).d.ts +0 -4
- package/dist/components/organisms/lumi/Calendar/hooks/useCalendarHeight(1).d.ts +0 -58
- package/dist/components/organisms/lumi/Calendar/hooks/useCalendarHeight(2).d.ts +0 -58
- package/dist/components/organisms/lumi/Calendar/hooks/useEventLayout(1).d.ts +0 -21
- package/dist/components/organisms/lumi/Calendar/hooks/useEventLayout(2).d.ts +0 -21
- package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(1).d.ts +0 -14
- package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(2).d.ts +0 -14
- package/dist/components/organisms/lumi/Calendar/hooks/useTimeSlots(3).d.ts +0 -14
- package/dist/components/organisms/lumi/Calendar/i18n/index(1).d.ts +0 -1
- package/dist/components/organisms/lumi/Calendar/i18n/index(2).d.ts +0 -1
- package/dist/components/organisms/lumi/Calendar/i18n/translations(1).d.ts +0 -34
- package/dist/components/organisms/lumi/Calendar/index(1).d.ts +0 -2
- package/dist/components/organisms/lumi/Calendar/utils/dateUtils(1).d.ts +0 -140
- package/dist/components/organisms/lumi/Calendar/utils/dateUtils(2).d.ts +0 -140
- package/dist/components/organisms/lumi/Calendar/utils/index(1).d.ts +0 -2
- package/dist/components/organisms/lumi/Calendar/utils/multiDayUtils(1).d.ts +0 -73
- package/dist/components/organisms/lumi/Calendar/views/DayView(1).d.ts +0 -17
- package/dist/components/organisms/lumi/Calendar/views/DayView(2).d.ts +0 -17
- package/dist/components/organisms/lumi/Calendar/views/MonthView(1).d.ts +0 -17
- package/dist/components/organisms/lumi/Calendar/views/MonthView(2).d.ts +0 -17
- package/dist/components/organisms/lumi/Calendar/views/WeekView(1).d.ts +0 -19
- package/dist/components/organisms/lumi/Calendar/views/WeekView(2).d.ts +0 -19
- package/dist/components/organisms/lumi/Calendar/views/YearView(1).d.ts +0 -13
- package/dist/components/organisms/lumi/Calendar/views/index(1).d.ts +0 -4
- package/dist/components/organisms/lumi/Calendar/views/index(2).d.ts +0 -4
- package/dist/components/organisms/lumi/DashboardNavbar/index(1).d.ts +0 -7
- package/dist/components/organisms/lumi/DashboardNavbar/types(1).d.ts +0 -52
- package/dist/components/organisms/lumi/DashboardWorkspace/DashboardWorkspace(1).d.ts +0 -23
- package/dist/components/organisms/lumi/DashboardWorkspace/DashboardWorkspace(2).d.ts +0 -23
- package/dist/components/organisms/lumi/DashboardWorkspace/index(1).d.ts +0 -7
- package/dist/components/organisms/lumi/DashboardWorkspace/index(2).d.ts +0 -7
- package/dist/components/organisms/lumi/DashboardWorkspace/types(1).d.ts +0 -60
- package/dist/components/organisms/lumi/DashboardWorkspace/types(2).d.ts +0 -60
- package/dist/components/organisms/lumi/DynamicForm/DynamicForm(1).d.ts +0 -21
- package/dist/components/organisms/lumi/DynamicForm/helpers/fieldMapper(1).d.ts +0 -17
- package/dist/components/organisms/lumi/DynamicForm/helpers/fieldMapper(2).d.ts +0 -17
- package/dist/components/organisms/lumi/DynamicForm/helpers/fieldRenderer(1).d.ts +0 -6
- package/dist/components/organisms/lumi/DynamicForm/helpers/fieldRenderer(2).d.ts +0 -6
- package/dist/components/organisms/lumi/DynamicForm/index(1).d.ts +0 -2
- package/dist/components/organisms/lumi/DynamicForm/index(2).d.ts +0 -2
- package/dist/components/organisms/lumi/DynamicForm/types(1).d.ts +0 -96
- package/dist/components/organisms/lumi/DynamicForm/types(2).d.ts +0 -96
- package/dist/components/organisms/lumi/FormDrawer/FormDrawer(1).d.ts +0 -5
- package/dist/components/organisms/lumi/FormDrawer/index(1).d.ts +0 -3
- package/dist/components/organisms/lumi/FormDrawer/types(1).d.ts +0 -61
- package/dist/components/organisms/lumi/FormDrawer/types(2).d.ts +0 -61
- package/dist/components/organisms/lumi/Stepper/StepIndicator(1).d.ts +0 -4
- package/dist/components/organisms/lumi/Stepper/Stepper(1).d.ts +0 -5
- package/dist/components/organisms/lumi/Stepper/index(1).d.ts +0 -3
- package/dist/components/organisms/lumi/Stepper/types(1).d.ts +0 -96
- package/dist/components/organisms/lumi/Stepper/types(2).d.ts +0 -96
- package/dist/components/organisms/lumi/index(1).d.ts +0 -10
- package/dist/components/organisms/lumi/index(2).d.ts +0 -10
- package/dist/components/templates/chat/ChatWidget/ChatWidget(1).d.ts +0 -10
- package/dist/components/templates/chat/ChatWidget/hooks/index(1).d.ts +0 -1
- package/dist/components/templates/chat/ChatWidget/index(1).d.ts +0 -2
- package/dist/components/templates/chat/ChatWidget/index(2).d.ts +0 -2
- package/dist/components/templates/chat/ChatWidget/types(1).d.ts +0 -90
- package/dist/components/templates/lumi/Base/hooks/index(1).d.ts +0 -2
- package/dist/components/templates/lumi/Base/hooks/useAppHeight(1).d.ts +0 -21
- package/dist/components/templates/lumi/Base/index(1).d.ts +0 -2
- package/dist/components/templates/lumi/Base/types(1).d.ts +0 -54
- package/dist/components/templates/lumi/Crud/Crud(1).d.ts +0 -6
- package/dist/components/templates/lumi/Crud/Crud(2).d.ts +0 -6
- package/dist/components/templates/lumi/Crud/ScrollToEnd.d.ts +0 -18
- package/dist/components/templates/lumi/Crud/helpers/fieldMapper(1).d.ts +0 -13
- package/dist/components/templates/lumi/Crud/hooks/useCrudActions(1).d.ts +0 -11
- package/dist/components/templates/lumi/Crud/index(1).d.ts +0 -2
- package/dist/components/templates/lumi/Crud/store/actions(1).d.ts +0 -45
- package/dist/components/templates/lumi/Crud/store/crudStore(1).d.ts +0 -8
- package/dist/components/templates/lumi/Crud/store/index(1).d.ts +0 -5
- package/dist/components/templates/lumi/Crud/store/types(1).d.ts +0 -71
- package/dist/components/templates/lumi/Dashboard/Dashboard(1).d.ts +0 -25
- package/dist/components/templates/lumi/Dashboard/hooks/index(1).d.ts +0 -12
- package/dist/components/templates/lumi/Dashboard/hooks/index(2).d.ts +0 -12
- package/dist/components/templates/lumi/Dashboard/hooks/useDashboardStore(1).d.ts +0 -34
- package/dist/components/templates/lumi/Dashboard/hooks/useScrollToTop(1).d.ts +0 -47
- package/dist/components/templates/lumi/Dashboard/index(1).d.ts +0 -10
- package/dist/components/templates/lumi/Dashboard/store/storeKeys(1).d.ts +0 -13
- package/dist/components/templates/lumi/Dashboard/store/types(1).d.ts +0 -73
- package/dist/components/templates/lumi/Dashboard/store/types(2).d.ts +0 -73
- package/dist/components/templates/lumi/Dashboard/types(1).d.ts +0 -114
- package/dist/components/templates/lumi/Dashboard/types(2).d.ts +0 -114
- package/dist/components/templates/lumi/index(1).d.ts +0 -3
- package/dist/core/chat/ChatConfigContext(1).d.ts +0 -36
- package/dist/index(1).esm.js +0 -19378
- package/dist/index(1).js +0 -19487
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
import { CRUD_STORE_KEYS } from "./storeKeys";
|
|
2
|
-
/**
|
|
3
|
-
* Estado completo del store del CRUD template
|
|
4
|
-
*/
|
|
5
|
-
export interface CrudStoreState {
|
|
6
|
-
[CRUD_STORE_KEYS.ACTION_BAR]: {
|
|
7
|
-
selectedCount: number;
|
|
8
|
-
selectedKeys: Array<string | number>;
|
|
9
|
-
buttons: {
|
|
10
|
-
filter: {
|
|
11
|
-
disabled: boolean;
|
|
12
|
-
loading: boolean;
|
|
13
|
-
};
|
|
14
|
-
create: {
|
|
15
|
-
disabled: boolean;
|
|
16
|
-
loading: boolean;
|
|
17
|
-
};
|
|
18
|
-
edit: {
|
|
19
|
-
disabled: boolean;
|
|
20
|
-
loading: boolean;
|
|
21
|
-
};
|
|
22
|
-
delete: {
|
|
23
|
-
disabled: boolean;
|
|
24
|
-
loading: boolean;
|
|
25
|
-
};
|
|
26
|
-
view: {
|
|
27
|
-
disabled: boolean;
|
|
28
|
-
loading: boolean;
|
|
29
|
-
};
|
|
30
|
-
};
|
|
31
|
-
};
|
|
32
|
-
[CRUD_STORE_KEYS.TABLE]: {
|
|
33
|
-
selection: {
|
|
34
|
-
selectedRowKeys: Array<string | number>;
|
|
35
|
-
selectedRows: unknown[];
|
|
36
|
-
};
|
|
37
|
-
loading: boolean;
|
|
38
|
-
dataLoaded: boolean;
|
|
39
|
-
};
|
|
40
|
-
[CRUD_STORE_KEYS.FORM_DRAWER]: {
|
|
41
|
-
isOpen: boolean;
|
|
42
|
-
mode: "create" | "edit" | "view";
|
|
43
|
-
data: Record<string, unknown> | null;
|
|
44
|
-
isDirty: boolean;
|
|
45
|
-
isSubmitting: boolean;
|
|
46
|
-
};
|
|
47
|
-
[CRUD_STORE_KEYS.DYNAMIC_FORM]: {
|
|
48
|
-
isSubmitting: boolean;
|
|
49
|
-
isValidating: boolean;
|
|
50
|
-
errors: Record<string, string>;
|
|
51
|
-
touchedFields: string[];
|
|
52
|
-
hasUnsavedChanges: boolean;
|
|
53
|
-
};
|
|
54
|
-
[CRUD_STORE_KEYS.FILTER_DRAWER]: {
|
|
55
|
-
isOpen: boolean;
|
|
56
|
-
appliedFilters: unknown[];
|
|
57
|
-
tempFilters: unknown[];
|
|
58
|
-
};
|
|
59
|
-
[CRUD_STORE_KEYS.PAGINATION]: {
|
|
60
|
-
current: number;
|
|
61
|
-
pageSize: number;
|
|
62
|
-
total: number;
|
|
63
|
-
totalPages: number;
|
|
64
|
-
};
|
|
65
|
-
[CRUD_STORE_KEYS.CRUD_STATE]: {
|
|
66
|
-
loading: boolean;
|
|
67
|
-
initialized: boolean;
|
|
68
|
-
lastAction: string | null;
|
|
69
|
-
error: string | null;
|
|
70
|
-
};
|
|
71
|
-
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { type FC } from 'react';
|
|
2
|
-
import type { DashboardProps } from './types';
|
|
3
|
-
import './Dashboard.scss';
|
|
4
|
-
/**
|
|
5
|
-
* Dashboard - Template de Lumi
|
|
6
|
-
*
|
|
7
|
-
* Template completo de Dashboard que integra:
|
|
8
|
-
* - DashboardNavbar: Barra superior con menú y breadcrumb
|
|
9
|
-
* - DashboardSidebar: Menú lateral en drawer
|
|
10
|
-
* - DashboardWorkspace: Área de trabajo con scroll
|
|
11
|
-
* - Sistema de store para gestión de estado
|
|
12
|
-
* - Sincronización automática menú-breadcrumb
|
|
13
|
-
* - Props controlado/no controlado
|
|
14
|
-
*
|
|
15
|
-
* @example
|
|
16
|
-
* ```tsx
|
|
17
|
-
* <Dashboard
|
|
18
|
-
* menuItems={menuData}
|
|
19
|
-
* onMenuSelect={(info, breadcrumb) => navigate(info.item.route)}
|
|
20
|
-
* >
|
|
21
|
-
* <YourContent />
|
|
22
|
-
* </Dashboard>
|
|
23
|
-
* ```
|
|
24
|
-
*/
|
|
25
|
-
export declare const Dashboard: FC<DashboardProps>;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hooks personalizados del Dashboard
|
|
3
|
-
*
|
|
4
|
-
* @module DashboardHooks
|
|
5
|
-
*/
|
|
6
|
-
export { useAppHeight } from './useAppHeight';
|
|
7
|
-
export { useResponsive } from './useResponsive';
|
|
8
|
-
export type { ViewportInfo } from './useResponsive';
|
|
9
|
-
export { useScrollToTop } from './useScrollToTop';
|
|
10
|
-
export type { UseScrollToTopOptions, UseScrollToTopReturn } from './useScrollToTop';
|
|
11
|
-
export { useBreadcrumbSync } from './useBreadcrumbSync';
|
|
12
|
-
export { useDashboardStore } from './useDashboardStore';
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hooks personalizados del Dashboard
|
|
3
|
-
*
|
|
4
|
-
* @module DashboardHooks
|
|
5
|
-
*/
|
|
6
|
-
export { useAppHeight } from './useAppHeight';
|
|
7
|
-
export { useResponsive } from './useResponsive';
|
|
8
|
-
export type { ViewportInfo } from './useResponsive';
|
|
9
|
-
export { useScrollToTop } from './useScrollToTop';
|
|
10
|
-
export type { UseScrollToTopOptions, UseScrollToTopReturn } from './useScrollToTop';
|
|
11
|
-
export { useBreadcrumbSync } from './useBreadcrumbSync';
|
|
12
|
-
export { useDashboardStore } from './useDashboardStore';
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Hook para interactuar con el store del dashboard
|
|
3
|
-
*
|
|
4
|
-
* Proporciona acceso reactivo a todas las secciones del store.
|
|
5
|
-
*
|
|
6
|
-
* @example
|
|
7
|
-
* ```tsx
|
|
8
|
-
* function MyComponent() {
|
|
9
|
-
* const {
|
|
10
|
-
* drawerOpen,
|
|
11
|
-
* selectedKeys,
|
|
12
|
-
* breadcrumbItems,
|
|
13
|
-
* showScrollButton,
|
|
14
|
-
* } = useDashboardStore();
|
|
15
|
-
*
|
|
16
|
-
* return <div>{drawerOpen ? 'Open' : 'Closed'}</div>;
|
|
17
|
-
* }
|
|
18
|
-
* ```
|
|
19
|
-
*/
|
|
20
|
-
export declare const useDashboardStore: () => {
|
|
21
|
-
drawerOpen: boolean;
|
|
22
|
-
drawerAnimating: boolean;
|
|
23
|
-
navbarHeight: number;
|
|
24
|
-
navbarShadow: boolean;
|
|
25
|
-
breadcrumbItems: import("../../../../..").LumiBreadcrumbItemType[];
|
|
26
|
-
breadcrumbScrollable: boolean;
|
|
27
|
-
selectedKeys: string[];
|
|
28
|
-
openKeys: string[];
|
|
29
|
-
scrollTop: number;
|
|
30
|
-
showScrollButton: boolean;
|
|
31
|
-
isMobile: boolean;
|
|
32
|
-
isTablet: boolean;
|
|
33
|
-
isDesktop: boolean;
|
|
34
|
-
};
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { type RefObject } from 'react';
|
|
2
|
-
/**
|
|
3
|
-
* Opciones para el hook useScrollToTop
|
|
4
|
-
*/
|
|
5
|
-
export interface UseScrollToTopOptions {
|
|
6
|
-
/** Píxeles de scroll para mostrar el botón (default: 400) */
|
|
7
|
-
threshold?: number;
|
|
8
|
-
/** Duración de la animación en ms (default: 500) */
|
|
9
|
-
duration?: number;
|
|
10
|
-
/** Comportamiento del scroll (default: 'smooth') */
|
|
11
|
-
behavior?: ScrollBehavior;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Valor de retorno del hook
|
|
15
|
-
*/
|
|
16
|
-
export interface UseScrollToTopReturn {
|
|
17
|
-
/** Si el botón debe mostrarse */
|
|
18
|
-
showButton: boolean;
|
|
19
|
-
/** Función para hacer scroll al tope */
|
|
20
|
-
scrollToTop: () => void;
|
|
21
|
-
/** Posición actual de scroll */
|
|
22
|
-
scrollTop: number;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Hook para manejar el comportamiento del botón "scroll to top"
|
|
26
|
-
*
|
|
27
|
-
* @param workspaceRef - Ref del contenedor con scroll
|
|
28
|
-
* @param options - Opciones de configuración
|
|
29
|
-
*
|
|
30
|
-
* @example
|
|
31
|
-
* function Workspace() {
|
|
32
|
-
* const workspaceRef = useRef<HTMLDivElement>(null);
|
|
33
|
-
* const { showButton, scrollToTop } = useScrollToTop(workspaceRef);
|
|
34
|
-
*
|
|
35
|
-
* return (
|
|
36
|
-
* <>
|
|
37
|
-
* <div ref={workspaceRef} className="workspace">
|
|
38
|
-
* contenido largo
|
|
39
|
-
* </div>
|
|
40
|
-
* {showButton && (
|
|
41
|
-
* <button onClick={scrollToTop}>arriba</button>
|
|
42
|
-
* )}
|
|
43
|
-
* </>
|
|
44
|
-
* );
|
|
45
|
-
* }
|
|
46
|
-
*/
|
|
47
|
-
export declare const useScrollToTop: (workspaceRef: RefObject<HTMLElement>, options?: UseScrollToTopOptions) => UseScrollToTopReturn;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Dashboard - Template principal de navegación y layout
|
|
3
|
-
*
|
|
4
|
-
* @module Dashboard
|
|
5
|
-
*/
|
|
6
|
-
export { Dashboard } from './Dashboard';
|
|
7
|
-
export type { DashboardProps } from './types';
|
|
8
|
-
export { useAppHeight, useResponsive, useScrollToTop, useBreadcrumbSync, useDashboardStore, } from './hooks';
|
|
9
|
-
export { dashboardStore, setDashboardStore, subscribeDashboardProperty, DASHBOARD_STORE_KEYS, drawerActions, navbarActions, breadcrumbActions, menuActions, workspaceActions, viewportActions, } from './store';
|
|
10
|
-
export type { DashboardStoreState } from './store';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Constantes para las keys del store del Dashboard
|
|
3
|
-
* Mantiene consistencia y evita errores de typo
|
|
4
|
-
*/
|
|
5
|
-
export declare const DASHBOARD_STORE_KEYS: {
|
|
6
|
-
readonly DRAWER: "drawer";
|
|
7
|
-
readonly NAVBAR: "navbar";
|
|
8
|
-
readonly BREADCRUMB: "breadcrumb";
|
|
9
|
-
readonly MENU: "menu";
|
|
10
|
-
readonly WORKSPACE: "workspace";
|
|
11
|
-
readonly VIEWPORT: "viewport";
|
|
12
|
-
};
|
|
13
|
-
export type DashboardStoreKey = typeof DASHBOARD_STORE_KEYS[keyof typeof DASHBOARD_STORE_KEYS];
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { DASHBOARD_STORE_KEYS } from './storeKeys';
|
|
2
|
-
import type { BreadcrumbItem } from '../../../../molecules/lumi/Breadcrumb/types';
|
|
3
|
-
/**
|
|
4
|
-
* Estado completo del store del Dashboard
|
|
5
|
-
*/
|
|
6
|
-
export interface DashboardStoreState {
|
|
7
|
-
/**
|
|
8
|
-
* Estado del drawer del menú lateral
|
|
9
|
-
*/
|
|
10
|
-
[DASHBOARD_STORE_KEYS.DRAWER]: {
|
|
11
|
-
/** Si el drawer está abierto */
|
|
12
|
-
isOpen: boolean;
|
|
13
|
-
/** Si está en proceso de animación */
|
|
14
|
-
isAnimating: boolean;
|
|
15
|
-
/** Ancho del drawer en píxeles (desktop) */
|
|
16
|
-
width: number;
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Estado del navbar
|
|
20
|
-
*/
|
|
21
|
-
[DASHBOARD_STORE_KEYS.NAVBAR]: {
|
|
22
|
-
/** Altura del navbar en píxeles */
|
|
23
|
-
height: number;
|
|
24
|
-
/** Si el navbar es sticky */
|
|
25
|
-
isSticky: boolean;
|
|
26
|
-
/** Si muestra sombra (cuando hay scroll) */
|
|
27
|
-
showShadow: boolean;
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Estado del breadcrumb
|
|
31
|
-
*/
|
|
32
|
-
[DASHBOARD_STORE_KEYS.BREADCRUMB]: {
|
|
33
|
-
/** Items actuales del breadcrumb */
|
|
34
|
-
items: BreadcrumbItem[];
|
|
35
|
-
/** Si el breadcrumb necesita scroll horizontal */
|
|
36
|
-
isScrollable: boolean;
|
|
37
|
-
/** Posición de scroll horizontal */
|
|
38
|
-
scrollPosition: number;
|
|
39
|
-
};
|
|
40
|
-
/**
|
|
41
|
-
* Estado del menú
|
|
42
|
-
*/
|
|
43
|
-
[DASHBOARD_STORE_KEYS.MENU]: {
|
|
44
|
-
/** Keys de los items seleccionados */
|
|
45
|
-
selectedKeys: string[];
|
|
46
|
-
/** Keys de los submenús abiertos */
|
|
47
|
-
openKeys: string[];
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* Estado del workspace (área de trabajo)
|
|
51
|
-
*/
|
|
52
|
-
[DASHBOARD_STORE_KEYS.WORKSPACE]: {
|
|
53
|
-
/** Posición de scroll vertical */
|
|
54
|
-
scrollTop: number;
|
|
55
|
-
/** Si muestra el botón "scroll to top" */
|
|
56
|
-
showScrollButton: boolean;
|
|
57
|
-
/** Si está en proceso de scroll automático */
|
|
58
|
-
isScrolling: boolean;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Estado del viewport
|
|
62
|
-
*/
|
|
63
|
-
[DASHBOARD_STORE_KEYS.VIEWPORT]: {
|
|
64
|
-
/** Si está en modo móvil (≤768px) */
|
|
65
|
-
isMobile: boolean;
|
|
66
|
-
/** Si está en modo tablet (769-1024px) */
|
|
67
|
-
isTablet: boolean;
|
|
68
|
-
/** Ancho del viewport */
|
|
69
|
-
width: number;
|
|
70
|
-
/** Altura del viewport */
|
|
71
|
-
height: number;
|
|
72
|
-
};
|
|
73
|
-
}
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
import { DASHBOARD_STORE_KEYS } from './storeKeys';
|
|
2
|
-
import type { BreadcrumbItem } from '../../../../molecules/lumi/Breadcrumb/types';
|
|
3
|
-
/**
|
|
4
|
-
* Estado completo del store del Dashboard
|
|
5
|
-
*/
|
|
6
|
-
export interface DashboardStoreState {
|
|
7
|
-
/**
|
|
8
|
-
* Estado del drawer del menú lateral
|
|
9
|
-
*/
|
|
10
|
-
[DASHBOARD_STORE_KEYS.DRAWER]: {
|
|
11
|
-
/** Si el drawer está abierto */
|
|
12
|
-
isOpen: boolean;
|
|
13
|
-
/** Si está en proceso de animación */
|
|
14
|
-
isAnimating: boolean;
|
|
15
|
-
/** Ancho del drawer en píxeles (desktop) */
|
|
16
|
-
width: number;
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Estado del navbar
|
|
20
|
-
*/
|
|
21
|
-
[DASHBOARD_STORE_KEYS.NAVBAR]: {
|
|
22
|
-
/** Altura del navbar en píxeles */
|
|
23
|
-
height: number;
|
|
24
|
-
/** Si el navbar es sticky */
|
|
25
|
-
isSticky: boolean;
|
|
26
|
-
/** Si muestra sombra (cuando hay scroll) */
|
|
27
|
-
showShadow: boolean;
|
|
28
|
-
};
|
|
29
|
-
/**
|
|
30
|
-
* Estado del breadcrumb
|
|
31
|
-
*/
|
|
32
|
-
[DASHBOARD_STORE_KEYS.BREADCRUMB]: {
|
|
33
|
-
/** Items actuales del breadcrumb */
|
|
34
|
-
items: BreadcrumbItem[];
|
|
35
|
-
/** Si el breadcrumb necesita scroll horizontal */
|
|
36
|
-
isScrollable: boolean;
|
|
37
|
-
/** Posición de scroll horizontal */
|
|
38
|
-
scrollPosition: number;
|
|
39
|
-
};
|
|
40
|
-
/**
|
|
41
|
-
* Estado del menú
|
|
42
|
-
*/
|
|
43
|
-
[DASHBOARD_STORE_KEYS.MENU]: {
|
|
44
|
-
/** Keys de los items seleccionados */
|
|
45
|
-
selectedKeys: string[];
|
|
46
|
-
/** Keys de los submenús abiertos */
|
|
47
|
-
openKeys: string[];
|
|
48
|
-
};
|
|
49
|
-
/**
|
|
50
|
-
* Estado del workspace (área de trabajo)
|
|
51
|
-
*/
|
|
52
|
-
[DASHBOARD_STORE_KEYS.WORKSPACE]: {
|
|
53
|
-
/** Posición de scroll vertical */
|
|
54
|
-
scrollTop: number;
|
|
55
|
-
/** Si muestra el botón "scroll to top" */
|
|
56
|
-
showScrollButton: boolean;
|
|
57
|
-
/** Si está en proceso de scroll automático */
|
|
58
|
-
isScrolling: boolean;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Estado del viewport
|
|
62
|
-
*/
|
|
63
|
-
[DASHBOARD_STORE_KEYS.VIEWPORT]: {
|
|
64
|
-
/** Si está en modo móvil (≤768px) */
|
|
65
|
-
isMobile: boolean;
|
|
66
|
-
/** Si está en modo tablet (769-1024px) */
|
|
67
|
-
isTablet: boolean;
|
|
68
|
-
/** Ancho del viewport */
|
|
69
|
-
width: number;
|
|
70
|
-
/** Altura del viewport */
|
|
71
|
-
height: number;
|
|
72
|
-
};
|
|
73
|
-
}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import type { ReactNode } from 'react';
|
|
2
|
-
import type { MenuItemData, SelectInfo } from '../../../molecules/lumi/Menu/types';
|
|
3
|
-
import type { BreadcrumbItem } from '../../../molecules/lumi/Breadcrumb/types';
|
|
4
|
-
/**
|
|
5
|
-
* Props del template Dashboard
|
|
6
|
-
*/
|
|
7
|
-
export interface DashboardProps {
|
|
8
|
-
/**
|
|
9
|
-
* Items del menú de navegación
|
|
10
|
-
*/
|
|
11
|
-
menuItems: MenuItemData[];
|
|
12
|
-
/**
|
|
13
|
-
* Items del breadcrumb (controlado)
|
|
14
|
-
* Si no se proporciona, se genera automáticamente desde el menú seleccionado
|
|
15
|
-
*/
|
|
16
|
-
breadcrumbItems?: BreadcrumbItem[];
|
|
17
|
-
/**
|
|
18
|
-
* Contenido principal del workspace
|
|
19
|
-
*/
|
|
20
|
-
children: ReactNode;
|
|
21
|
-
/**
|
|
22
|
-
* Contenido extra para el navbar (botones, perfil, notificaciones, etc.)
|
|
23
|
-
*/
|
|
24
|
-
navbarExtra?: ReactNode;
|
|
25
|
-
/**
|
|
26
|
-
* Contenido extra para el header del sidebar (junto al botón de close)
|
|
27
|
-
*/
|
|
28
|
-
sidebarHeaderExtra?: ReactNode;
|
|
29
|
-
/**
|
|
30
|
-
* Keys de los items seleccionados (controlado)
|
|
31
|
-
*/
|
|
32
|
-
selectedKeys?: string[];
|
|
33
|
-
/**
|
|
34
|
-
* Keys de los items seleccionados por defecto (no controlado)
|
|
35
|
-
* @default []
|
|
36
|
-
*/
|
|
37
|
-
defaultSelectedKeys?: string[];
|
|
38
|
-
/**
|
|
39
|
-
* Keys de los submenús abiertos (controlado)
|
|
40
|
-
*/
|
|
41
|
-
openKeys?: string[];
|
|
42
|
-
/**
|
|
43
|
-
* Keys de los submenús abiertos por defecto (no controlado)
|
|
44
|
-
* @default []
|
|
45
|
-
*/
|
|
46
|
-
defaultOpenKeys?: string[];
|
|
47
|
-
/**
|
|
48
|
-
* Si el drawer está abierto (controlado)
|
|
49
|
-
*/
|
|
50
|
-
drawerOpen?: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Si el drawer está abierto por defecto (no controlado)
|
|
53
|
-
* @default false
|
|
54
|
-
*/
|
|
55
|
-
defaultDrawerOpen?: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Callback cuando se selecciona un item del menú
|
|
58
|
-
*/
|
|
59
|
-
onMenuSelect?: (info: SelectInfo, breadcrumbPath: BreadcrumbItem[]) => void;
|
|
60
|
-
/**
|
|
61
|
-
* Callback cuando se hace clic en un item del breadcrumb
|
|
62
|
-
*/
|
|
63
|
-
onBreadcrumbClick?: (item: BreadcrumbItem, index: number) => void;
|
|
64
|
-
/**
|
|
65
|
-
* Callback cuando cambia el estado del drawer
|
|
66
|
-
*/
|
|
67
|
-
onDrawerChange?: (isOpen: boolean) => void;
|
|
68
|
-
/**
|
|
69
|
-
* Callback cuando cambian los submenús abiertos
|
|
70
|
-
*/
|
|
71
|
-
onOpenChange?: (openKeys: string[]) => void;
|
|
72
|
-
/**
|
|
73
|
-
* Si muestra el icono de home en el breadcrumb
|
|
74
|
-
* @default false
|
|
75
|
-
*/
|
|
76
|
-
showHomeIcon?: boolean;
|
|
77
|
-
/**
|
|
78
|
-
* Si habilita el botón "volver arriba"
|
|
79
|
-
* @default true
|
|
80
|
-
*/
|
|
81
|
-
enableScrollToTop?: boolean;
|
|
82
|
-
/**
|
|
83
|
-
* Altura del navbar en píxeles
|
|
84
|
-
* @default 64
|
|
85
|
-
*/
|
|
86
|
-
navbarHeight?: number;
|
|
87
|
-
/**
|
|
88
|
-
* Ancho del drawer en píxeles
|
|
89
|
-
* @default 280
|
|
90
|
-
*/
|
|
91
|
-
drawerWidth?: number;
|
|
92
|
-
/**
|
|
93
|
-
* Tema del menú
|
|
94
|
-
* @default 'light'
|
|
95
|
-
*/
|
|
96
|
-
theme?: 'light' | 'dark';
|
|
97
|
-
/**
|
|
98
|
-
* Color de fondo del workspace
|
|
99
|
-
* @default '#fafafa'
|
|
100
|
-
*/
|
|
101
|
-
workspaceBackgroundColor?: string;
|
|
102
|
-
/**
|
|
103
|
-
* Padding del workspace (CSS string)
|
|
104
|
-
*/
|
|
105
|
-
workspacePadding?: string;
|
|
106
|
-
/**
|
|
107
|
-
* Clase CSS adicional
|
|
108
|
-
*/
|
|
109
|
-
className?: string;
|
|
110
|
-
/**
|
|
111
|
-
* Test ID para testing
|
|
112
|
-
*/
|
|
113
|
-
'data-testid'?: string;
|
|
114
|
-
}
|
|
@@ -1,114 +0,0 @@
|
|
|
1
|
-
import type { ReactNode } from 'react';
|
|
2
|
-
import type { MenuItemData, SelectInfo } from '../../../molecules/lumi/Menu/types';
|
|
3
|
-
import type { BreadcrumbItem } from '../../../molecules/lumi/Breadcrumb/types';
|
|
4
|
-
/**
|
|
5
|
-
* Props del template Dashboard
|
|
6
|
-
*/
|
|
7
|
-
export interface DashboardProps {
|
|
8
|
-
/**
|
|
9
|
-
* Items del menú de navegación
|
|
10
|
-
*/
|
|
11
|
-
menuItems: MenuItemData[];
|
|
12
|
-
/**
|
|
13
|
-
* Items del breadcrumb (controlado)
|
|
14
|
-
* Si no se proporciona, se genera automáticamente desde el menú seleccionado
|
|
15
|
-
*/
|
|
16
|
-
breadcrumbItems?: BreadcrumbItem[];
|
|
17
|
-
/**
|
|
18
|
-
* Contenido principal del workspace
|
|
19
|
-
*/
|
|
20
|
-
children: ReactNode;
|
|
21
|
-
/**
|
|
22
|
-
* Contenido extra para el navbar (botones, perfil, notificaciones, etc.)
|
|
23
|
-
*/
|
|
24
|
-
navbarExtra?: ReactNode;
|
|
25
|
-
/**
|
|
26
|
-
* Contenido extra para el header del sidebar (junto al botón de close)
|
|
27
|
-
*/
|
|
28
|
-
sidebarHeaderExtra?: ReactNode;
|
|
29
|
-
/**
|
|
30
|
-
* Keys de los items seleccionados (controlado)
|
|
31
|
-
*/
|
|
32
|
-
selectedKeys?: string[];
|
|
33
|
-
/**
|
|
34
|
-
* Keys de los items seleccionados por defecto (no controlado)
|
|
35
|
-
* @default []
|
|
36
|
-
*/
|
|
37
|
-
defaultSelectedKeys?: string[];
|
|
38
|
-
/**
|
|
39
|
-
* Keys de los submenús abiertos (controlado)
|
|
40
|
-
*/
|
|
41
|
-
openKeys?: string[];
|
|
42
|
-
/**
|
|
43
|
-
* Keys de los submenús abiertos por defecto (no controlado)
|
|
44
|
-
* @default []
|
|
45
|
-
*/
|
|
46
|
-
defaultOpenKeys?: string[];
|
|
47
|
-
/**
|
|
48
|
-
* Si el drawer está abierto (controlado)
|
|
49
|
-
*/
|
|
50
|
-
drawerOpen?: boolean;
|
|
51
|
-
/**
|
|
52
|
-
* Si el drawer está abierto por defecto (no controlado)
|
|
53
|
-
* @default false
|
|
54
|
-
*/
|
|
55
|
-
defaultDrawerOpen?: boolean;
|
|
56
|
-
/**
|
|
57
|
-
* Callback cuando se selecciona un item del menú
|
|
58
|
-
*/
|
|
59
|
-
onMenuSelect?: (info: SelectInfo, breadcrumbPath: BreadcrumbItem[]) => void;
|
|
60
|
-
/**
|
|
61
|
-
* Callback cuando se hace clic en un item del breadcrumb
|
|
62
|
-
*/
|
|
63
|
-
onBreadcrumbClick?: (item: BreadcrumbItem, index: number) => void;
|
|
64
|
-
/**
|
|
65
|
-
* Callback cuando cambia el estado del drawer
|
|
66
|
-
*/
|
|
67
|
-
onDrawerChange?: (isOpen: boolean) => void;
|
|
68
|
-
/**
|
|
69
|
-
* Callback cuando cambian los submenús abiertos
|
|
70
|
-
*/
|
|
71
|
-
onOpenChange?: (openKeys: string[]) => void;
|
|
72
|
-
/**
|
|
73
|
-
* Si muestra el icono de home en el breadcrumb
|
|
74
|
-
* @default false
|
|
75
|
-
*/
|
|
76
|
-
showHomeIcon?: boolean;
|
|
77
|
-
/**
|
|
78
|
-
* Si habilita el botón "volver arriba"
|
|
79
|
-
* @default true
|
|
80
|
-
*/
|
|
81
|
-
enableScrollToTop?: boolean;
|
|
82
|
-
/**
|
|
83
|
-
* Altura del navbar en píxeles
|
|
84
|
-
* @default 64
|
|
85
|
-
*/
|
|
86
|
-
navbarHeight?: number;
|
|
87
|
-
/**
|
|
88
|
-
* Ancho del drawer en píxeles
|
|
89
|
-
* @default 280
|
|
90
|
-
*/
|
|
91
|
-
drawerWidth?: number;
|
|
92
|
-
/**
|
|
93
|
-
* Tema del menú
|
|
94
|
-
* @default 'light'
|
|
95
|
-
*/
|
|
96
|
-
theme?: 'light' | 'dark';
|
|
97
|
-
/**
|
|
98
|
-
* Color de fondo del workspace
|
|
99
|
-
* @default '#fafafa'
|
|
100
|
-
*/
|
|
101
|
-
workspaceBackgroundColor?: string;
|
|
102
|
-
/**
|
|
103
|
-
* Padding del workspace (CSS string)
|
|
104
|
-
*/
|
|
105
|
-
workspacePadding?: string;
|
|
106
|
-
/**
|
|
107
|
-
* Clase CSS adicional
|
|
108
|
-
*/
|
|
109
|
-
className?: string;
|
|
110
|
-
/**
|
|
111
|
-
* Test ID para testing
|
|
112
|
-
*/
|
|
113
|
-
'data-testid'?: string;
|
|
114
|
-
}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
import { type ReactNode } from 'react';
|
|
2
|
-
export interface ChatConfig {
|
|
3
|
-
/** IANA timezone identifier (e.g. "America/Bogota") */
|
|
4
|
-
timezone: string;
|
|
5
|
-
/** BCP 47 locale string (e.g. "es-CO") */
|
|
6
|
-
locale: string;
|
|
7
|
-
/** Title displayed in the chat header */
|
|
8
|
-
headerTitle: string;
|
|
9
|
-
/** Subtitle displayed in the chat header */
|
|
10
|
-
headerSubtitle?: string;
|
|
11
|
-
/** Avatar image URL for the chat header */
|
|
12
|
-
headerAvatarSrc?: string;
|
|
13
|
-
/** Whether to show the chat header */
|
|
14
|
-
showHeader: boolean;
|
|
15
|
-
/** Whether to show the close button in the header */
|
|
16
|
-
showCloseButton: boolean;
|
|
17
|
-
/** Whether to show role labels ("User", "Assistant") on messages */
|
|
18
|
-
showRoleLabels: boolean;
|
|
19
|
-
/** Whether to show the attachment button */
|
|
20
|
-
showAttachmentButton: boolean;
|
|
21
|
-
/** Whether to show the microphone button */
|
|
22
|
-
showMicrophoneButton: boolean;
|
|
23
|
-
/** Default placeholder text for the input textarea */
|
|
24
|
-
placeholderText: string;
|
|
25
|
-
/** Whether to simulate streaming for assistant responses that arrive complete */
|
|
26
|
-
enableStreamingEffect: boolean;
|
|
27
|
-
/** Whether the chat should fit its container (true) or use full viewport height (false) */
|
|
28
|
-
contained: boolean;
|
|
29
|
-
}
|
|
30
|
-
export declare const CHAT_CONFIG_DEFAULTS: ChatConfig;
|
|
31
|
-
export interface ChatConfigProviderProps {
|
|
32
|
-
value: ChatConfig;
|
|
33
|
-
children: ReactNode;
|
|
34
|
-
}
|
|
35
|
-
export declare const ChatConfigProvider: ({ value, children }: ChatConfigProviderProps) => import("react/jsx-runtime").JSX.Element;
|
|
36
|
-
export declare const useChatConfig: () => ChatConfig;
|