@m4l/components 0.1.76 → 0.1.78
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/@types/export.d.ts +22 -3
- package/components/AccountPopover/{index.47cf6c43.js → index.7e76dbb7.js} +8 -7
- package/components/AppBar/{index.f04f5e45.js → index.06858422.js} +8 -7
- package/components/CommonActions/components/ActionCancel/{index.453c2d24.js → index.d536ccfa.js} +2 -2
- package/components/CommonActions/components/ActionFormCancel/{index.c2a2fd55.js → index.a915b105.js} +19 -19
- package/components/CommonActions/components/ActionFormIntro/{index.25d33912.js → index.14e65d6c.js} +2 -2
- package/components/CommonActions/components/ActionIntro/{index.c653a266.js → index.aa1648eb.js} +2 -2
- package/components/CommonActions/components/Actions/{index.e376a68e.js → index.52125041.js} +17 -18
- package/components/DataGrid/{index.ffaf000e.js → index.9fb3e6a1.js} +40 -31
- package/components/DataGrid/types.d.ts +5 -1
- package/components/DraggableWindow/{index.b08af1dc.js → index.c702d3f2.js} +1 -1
- package/components/DynamicFilter/constants.d.ts +1 -0
- package/components/DynamicFilter/contexts/DynamicFilterContext/store.d.ts +6 -1
- package/components/DynamicFilter/{index.d7c03a61.js → index.d1a2e2d1.js} +54 -47
- package/components/DynamicFilter/tests/contants.d.ts +2 -3
- package/components/DynamicFilter/types.d.ts +4 -0
- package/components/GridLayout/GridLayout.d.ts +6 -0
- package/components/GridLayout/Responsive/index.0905a698.js +353 -0
- package/components/GridLayout/WidthProvider/index.9a26dfe4.js +65 -0
- package/components/GridLayout/calculateUtils.d.ts +42 -0
- package/components/GridLayout/index.d.ts +6 -0
- package/components/GridLayout/index.da6fd387.js +1410 -0
- package/components/GridLayout/subcomponents/GridItem/index.d.ts +26 -0
- package/components/GridLayout/subcomponents/GridItem/types.d.ts +78 -0
- package/components/GridLayout/subcomponents/Responsive/index.d.ts +3 -0
- package/components/GridLayout/subcomponents/Responsive/responsiveUtils.d.ts +64 -0
- package/components/GridLayout/subcomponents/Responsive/types.d.ts +69 -0
- package/components/GridLayout/subcomponents/WidthProvider/index.d.ts +16 -0
- package/components/GridLayout/types.d.ts +355 -0
- package/components/GridLayout/utils.d.ts +123 -0
- package/components/HelperText/{index.9864f773.js → index.a019742c.js} +8 -7
- package/components/Icon/{index.9dae8337.js → index.9fcd1476.js} +1 -1
- package/components/LanguagePopover/{index.938c6675.js → index.98b63dcb.js} +8 -7
- package/components/LinearProgressIndeterminate/{index.d34d398f.js → index.60dabc06.js} +1 -1
- package/components/ModalDialog/{index.d9c5d400.js → index.d9937d46.js} +8 -56
- package/components/NavLink/{index.21c8fd90.js → index.a5dea6d3.js} +8 -7
- package/components/ObjectLogs/{index.a2709fc2.js → index.d9d20b9d.js} +27 -21
- package/components/ObjectLogs/types.d.ts +1 -0
- package/components/PaperForm/{index.5e1bc99f.js → index.ba38a0bd.js} +1 -1
- package/components/Period/{index.526791a3.js → index.7b94c418.js} +22 -23
- package/components/PropertyValue/constants.d.ts +3 -0
- package/components/PropertyValue/{index.8a1adf3e.js → index.45c73161.js} +17 -11
- package/components/PropertyValue/types.d.ts +2 -1
- package/components/Resizeable/{index.f6e48e56.js → index.9a9c79a4.js} +1 -1
- package/components/SideBar/{index.9e1a5b96.js → index.2f497e6c.js} +5 -5
- package/components/areas/components/AreasAdmin/classes/index.d.ts +1 -1
- package/components/areas/components/AreasAdmin/classes/types.d.ts +5 -0
- package/components/areas/components/AreasAdmin/{index.946eebb9.js → index.43ecd998.js} +167 -81
- package/components/areas/components/AreasAdmin/subcomponents/AreaChip/types.d.ts +0 -1
- package/components/areas/components/AreasAdmin/subcomponents/AreaChipMobile/subcomponents/PanelWindowPopUp/index.d.ts +3 -0
- package/components/areas/components/AreasAdmin/subcomponents/AreaChipMobile/subcomponents/PanelWindowPopUp/types.d.ts +3 -0
- package/components/areas/components/AreasViewer/classes/index.d.ts +1 -1
- package/components/areas/components/AreasViewer/classes/types.d.ts +3 -0
- package/components/areas/components/AreasViewer/{index.bf4191ea.js → index.14e62059.js} +326 -345
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/{GridLayout → AreaGridLayout}/index.d.ts +1 -1
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/index.d.ts +2 -2
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/index.d.ts +1 -7
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowPopUpsList/index.d.ts +3 -0
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/subcomponents/WindowPopUpsList/types.d.ts +2 -0
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/subcomponents/Header/types.d.ts +6 -0
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/Window/types.d.ts +1 -1
- package/components/areas/components/index.a87653a9.js +29 -0
- package/components/areas/contexts/AreasContext/helper.d.ts +8 -16
- package/components/areas/contexts/AreasContext/{index.f0397b7c.js → index.02c4e7be.js} +262 -336
- package/components/areas/contexts/AreasContext/types.d.ts +22 -20
- package/components/areas/contexts/{index.1809650a.js → index.1ff9b360.js} +1 -1
- package/components/areas/{dictionary.3fabae50.js → dictionary.afb7e3d9.js} +5 -2
- package/components/areas/dictionary.d.ts +4 -1
- package/components/areas/hooks/useAreas/{index.40917e99.js → index.85e4b2e2.js} +1 -1
- package/components/areas/{icons.19cde4b4.js → icons.8266ccc8.js} +5 -1
- package/components/areas/icons.d.ts +4 -0
- package/components/areas/{index.9bd48013.js → index.d1dcccf5.js} +12 -11
- package/components/areas/types.d.ts +29 -22
- package/components/formatters/BooleanFormatter/{index.431dc923.js → index.e8de8e4c.js} +1 -1
- package/components/formatters/{index.e1af75e6.js → index.67aeb049.js} +2 -2
- package/components/hook-form/RHFAutocomplete/{index.a063dc44.js → index.6aa51705.js} +25 -13
- package/components/hook-form/RHFAutocompleteAsync/{index.ddfd9cc9.js → index.1a3dfe5f.js} +1 -1
- package/components/hook-form/RHFCheckbox/{index.7e7f220b.js → index.a08a65b3.js} +1 -1
- package/components/hook-form/RHFDateTime/{index.d330709b.js → index.4d671108.js} +10 -9
- package/components/hook-form/RHFPeriod/{index.e2b1293b.js → index.39b4be49.js} +2 -2
- package/components/hook-form/RHFTextField/{index.e5336d09.js → index.9004e898.js} +5 -5
- package/components/hook-form/RHFUpload/{index.17e7f9eb.js → index.bed8573e.js} +9 -11
- package/components/index.d.ts +1 -0
- package/components/modal/{WindowBase.7acb9f1d.js → WindowBase.a0c0b322.js} +10 -9
- package/components/modal/{WindowConfirm.9b829837.js → WindowConfirm.6c063f2d.js} +19 -19
- package/components/modal/classes/index.d.ts +1 -0
- package/components/modal/classes/types.d.ts +1 -0
- package/components/modal/{index.1b25b61d.js → index.00efea85.js} +19 -17
- package/components/mui_extended/Accordion/constants.d.ts +1 -0
- package/components/mui_extended/Accordion/{index.3faafd8b.js → index.9877f7bf.js} +8 -9
- package/components/mui_extended/Accordion/types.d.ts +1 -0
- package/components/mui_extended/Badge/Badge.d.ts +3 -0
- package/components/mui_extended/Badge/classes/constants.d.ts +1 -0
- package/components/mui_extended/Badge/classes/index.d.ts +6 -0
- package/components/mui_extended/Badge/classes/types.d.ts +6 -0
- package/components/mui_extended/Badge/index.8c2b8b66.js +36 -0
- package/components/mui_extended/Badge/index.d.ts +2 -0
- package/components/mui_extended/Badge/tests/constants.d.ts +1 -0
- package/components/mui_extended/Badge/tests/utils.d.ts +2 -0
- package/components/mui_extended/Badge/types.d.ts +4 -0
- package/components/mui_extended/Button/{index.fdb5dcbd.js → index.4288f9fc.js} +8 -3
- package/components/mui_extended/IconButton/{index.1a9d4fa5.js → index.12f1a3c3.js} +4 -1
- package/components/mui_extended/MenuActions/{index.ba1da3b3.js → index.43a2e1ae.js} +41 -13
- package/components/mui_extended/MenuActions/index.d.ts +3 -2
- package/components/mui_extended/MenuActions/types.d.ts +9 -0
- package/components/mui_extended/Pager/{index.67bda2c5.js → index.2f6d6d7d.js} +1 -1
- package/components/mui_extended/Tab/constant.d.ts +1 -0
- package/components/mui_extended/Tab/{index.9e2f6e34.js → index.7c82e43d.js} +5 -6
- package/components/mui_extended/Tab/types.d.ts +1 -0
- package/components/mui_extended/{index.73e536de.js → index.0e2ff642.js} +8 -7
- package/components/mui_extended/index.d.ts +1 -0
- package/contexts/ModalContext/{index.699f95fa.js → index.e9a7ba4a.js} +1 -1
- package/hooks/useModal/{index.7b7d26ba.js → index.8e85f7ae.js} +1 -1
- package/index.js +228 -214
- package/node_modules.d73a220d.js +363 -0
- package/package.json +4 -3
- package/{react-draggable.6d7949a3.js → react-draggable.7abb5d0a.js} +3 -2
- package/{react-resizable.b6f8e04a.js → react-resizable.ba08699a.js} +13 -12
- package/test/getNameDataTestId.d.ts +1 -0
- package/utils/{index.008b4c2a.js → index.c43a95f4.js} +0 -15
- package/vendor.e353394b.js +124 -0
- package/components/DynamicFilter/tests/types.d.ts +0 -2
- package/components/DynamicFilter/tests/utils.d.ts +0 -2
- package/components/PropertyValue/tests/constants.d.ts +0 -1
- package/components/PropertyValue/tests/utils.d.ts +0 -2
- package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/WindowPopUp/index.d.ts +0 -4
- package/components/areas/components/index.2bb534cb.js +0 -28
- package/components/modal/ModalDialog/types.d.ts +0 -7
- package/components/mui_extended/Accordion/tests/constants.d.ts +0 -1
- package/components/mui_extended/Accordion/tests/utils.d.ts +0 -2
- package/components/mui_extended/Tab/tests/constants.d.ts +0 -1
- package/components/mui_extended/Tab/tests/utils.d.ts +0 -2
- /package/components/areas/components/AreasViewer/subcomponents/Area/subcomponents/{GridLayout → AreaGridLayout}/types.d.ts +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { GridItemProps } from './types';
|
|
3
|
+
export declare type RefProps = {
|
|
4
|
+
cols: number;
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
w: number;
|
|
8
|
+
h: number;
|
|
9
|
+
minW: number;
|
|
10
|
+
maxW: number;
|
|
11
|
+
minH: number;
|
|
12
|
+
maxH: number;
|
|
13
|
+
containerWidth: number;
|
|
14
|
+
containerHeight: number;
|
|
15
|
+
margin: [number, number];
|
|
16
|
+
containerPadding: [number, number];
|
|
17
|
+
rowHeight: number;
|
|
18
|
+
maxRows: number;
|
|
19
|
+
colapsed?: boolean;
|
|
20
|
+
visible?: boolean;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* An individual item within a ReactGridLayout.
|
|
24
|
+
*/
|
|
25
|
+
export declare function GridItem(props: GridItemProps): React.JSX.Element;
|
|
26
|
+
export declare const MemonizedGridItem: React.MemoExoticComponent<typeof GridItem>;
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { CSSProperties } from 'react';
|
|
2
|
+
import { DroppingPosition, GridDragEvent, GridResizeEvent, LayoutItemRender, LayoutItemType, ResizeHandle } from '../../types';
|
|
3
|
+
export declare type GridItemState = {
|
|
4
|
+
resizing?: {
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
dragging?: {
|
|
9
|
+
top: number;
|
|
10
|
+
left: number;
|
|
11
|
+
};
|
|
12
|
+
className: string;
|
|
13
|
+
};
|
|
14
|
+
export declare type PartialPosition = {
|
|
15
|
+
top: number;
|
|
16
|
+
left: number;
|
|
17
|
+
};
|
|
18
|
+
export interface DraggableData {
|
|
19
|
+
node: HTMLElement;
|
|
20
|
+
x: number;
|
|
21
|
+
y: number;
|
|
22
|
+
deltaX: number;
|
|
23
|
+
deltaY: number;
|
|
24
|
+
lastX: number;
|
|
25
|
+
lastY: number;
|
|
26
|
+
}
|
|
27
|
+
export declare type GridItemCallback<T extends GridDragEvent | GridResizeEvent> = (i: string, w: number, h: number, data: T) => void;
|
|
28
|
+
export declare type Maximize = 'maximize_me' | 'maximize_other' | 'none';
|
|
29
|
+
export declare type GridItemProps = {
|
|
30
|
+
type: LayoutItemType;
|
|
31
|
+
layoutItemRender: LayoutItemRender;
|
|
32
|
+
cols: number;
|
|
33
|
+
containerWidth: number;
|
|
34
|
+
containerHeight: number;
|
|
35
|
+
margin: [number, number];
|
|
36
|
+
containerPadding: [number, number];
|
|
37
|
+
rowHeight: number;
|
|
38
|
+
colapsedHeight?: number;
|
|
39
|
+
maxRows: number;
|
|
40
|
+
isDraggable: boolean;
|
|
41
|
+
isResizable: boolean;
|
|
42
|
+
isBounded: boolean;
|
|
43
|
+
static?: boolean;
|
|
44
|
+
useCSSTransforms?: boolean;
|
|
45
|
+
usePercentages?: boolean;
|
|
46
|
+
droppingPosition?: DroppingPosition;
|
|
47
|
+
style?: CSSProperties;
|
|
48
|
+
cancel?: string;
|
|
49
|
+
handle?: string;
|
|
50
|
+
x: number;
|
|
51
|
+
y: number;
|
|
52
|
+
w: number;
|
|
53
|
+
h: number;
|
|
54
|
+
className?: string;
|
|
55
|
+
minW?: number;
|
|
56
|
+
maxW?: number;
|
|
57
|
+
minH?: number;
|
|
58
|
+
maxH?: number;
|
|
59
|
+
transformScale?: number;
|
|
60
|
+
i: string;
|
|
61
|
+
maximize: Maximize;
|
|
62
|
+
colapsed?: boolean;
|
|
63
|
+
visible?: boolean;
|
|
64
|
+
resizeHandles?: ResizeHandle[];
|
|
65
|
+
/**
|
|
66
|
+
* Defines custom component for resize handle
|
|
67
|
+
*/
|
|
68
|
+
resizeHandle?: React.ReactNode | ((resizeHandle: ResizeHandle) => React.ReactNode);
|
|
69
|
+
onDrag?: (i: string, x: number, y: number, gridDragEvent: GridDragEvent) => void;
|
|
70
|
+
onDragStart?: (i: string, x: number, y: number, gridDragEvent: GridDragEvent) => void;
|
|
71
|
+
onDragStop?: (i: string, x: number, y: number, gridDragEvent: GridDragEvent) => void;
|
|
72
|
+
onResize?: GridItemCallback<GridResizeEvent>;
|
|
73
|
+
onResizeStart?: GridItemCallback<GridResizeEvent>;
|
|
74
|
+
onResizeStop?: GridItemCallback<GridResizeEvent>;
|
|
75
|
+
onFreeMoveClick?: (i: string) => void;
|
|
76
|
+
freeMove?: boolean;
|
|
77
|
+
zIndex?: number;
|
|
78
|
+
};
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import { CompactType, Layout, LayoutItem, Margin } from '../../types';
|
|
2
|
+
import { Breakpoint, BreakpointCols, Breakpoints, ResponsiveLayout, Layouts, ResponsiveMargin } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* Given a width, find the highest breakpoint that matches is valid for it (width > breakpoint).
|
|
5
|
+
*
|
|
6
|
+
* @param {Object} breakpoints Breakpoints object (e.g. {lg: 1200, md: 960, ...})
|
|
7
|
+
* @param {Number} width Screen width.
|
|
8
|
+
* @return {String} Highest breakpoint that is less than width.
|
|
9
|
+
*/
|
|
10
|
+
export declare function getBreakpointFromWidth(breakpoints: Breakpoints<Breakpoint>, width: number): Breakpoint;
|
|
11
|
+
/**
|
|
12
|
+
* Given a breakpoint, get the # of cols set for it.
|
|
13
|
+
* @param {String} breakpoint Breakpoint name.
|
|
14
|
+
* @param {Object} cols Map of breakpoints to cols.
|
|
15
|
+
* @return {Number} Number of cols.
|
|
16
|
+
*/
|
|
17
|
+
export declare function getColsFromBreakpoint(breakpoint: Breakpoint, cols: Breakpoints<Breakpoint>): number;
|
|
18
|
+
/**
|
|
19
|
+
* Given existing layouts and a new breakpoint, find or generate a new layout.
|
|
20
|
+
*
|
|
21
|
+
* This finds the layout above the new one and generates from it, if it exists.
|
|
22
|
+
*
|
|
23
|
+
* @param {Object} layouts Existing layouts.
|
|
24
|
+
* @param {Array} breakpoints All breakpoints.
|
|
25
|
+
* @param {String} breakpoint New breakpoint.
|
|
26
|
+
* @param {String} breakpoint Last breakpoint (for fallback).
|
|
27
|
+
* @param {Number} cols Column count at new breakpoint.
|
|
28
|
+
* @param {Boolean} verticalCompact Whether or not to compact the layout
|
|
29
|
+
* vertically.
|
|
30
|
+
* @return {Array} New layout.
|
|
31
|
+
*/
|
|
32
|
+
export declare function findOrGenerateResponsiveLayout(layouts: ResponsiveLayout<Breakpoint>, breakpoints: Breakpoints<Breakpoint>, breakpoint: Breakpoint, lastBreakpoint: Breakpoint, cols: number, compactType: CompactType, brekpointsCols: BreakpointCols, colapsedHeight: number): Layout;
|
|
33
|
+
/**
|
|
34
|
+
* Given breakpoints, return an array of breakpoints sorted by width. This is usually
|
|
35
|
+
* e.g. ['xxs', 'xs', 'sm', ...]
|
|
36
|
+
*
|
|
37
|
+
* @param {Object} breakpoints Key/value pair of breakpoint names to widths.
|
|
38
|
+
* @return {Array} Sorted breakpoints.
|
|
39
|
+
*/
|
|
40
|
+
export declare function sortBreakpoints(breakpoints: Breakpoints<Breakpoint>): Array<Breakpoint>;
|
|
41
|
+
/**
|
|
42
|
+
* Get a value of margin or containerPadding.
|
|
43
|
+
*
|
|
44
|
+
* @param {Array | Object} param Margin | containerPadding, e.g. [10, 10] | {lg: [10, 10], ...}.
|
|
45
|
+
* @param {String} breakpoint Breakpoint: lg, md, sm, xs and etc.
|
|
46
|
+
* @return {Array}
|
|
47
|
+
*/
|
|
48
|
+
export declare function getIndentationValue(param: ResponsiveMargin, breakpoint: string): Margin;
|
|
49
|
+
/**
|
|
50
|
+
* Modifica el layout y le arega el item a todos los breakpoints
|
|
51
|
+
* @param layouts
|
|
52
|
+
* @param layoutItem
|
|
53
|
+
*/
|
|
54
|
+
export declare function addLayoutItemToBreakPointIfNoExists(layouts: Layouts, breakpoint: string, layoutItem: LayoutItem, cols: BreakpointCols, margin: ResponsiveMargin, containerPadding: ResponsiveMargin, rowHeight: number, containerHeight?: number, currentBreakpoint?: Breakpoint): void;
|
|
55
|
+
/**
|
|
56
|
+
* Modifica el layout y le arega el item a todos los breakpoints
|
|
57
|
+
* @param layouts
|
|
58
|
+
* @param layoutItem
|
|
59
|
+
*/
|
|
60
|
+
export declare function addLayoutItemToBreakPoints(layouts: Layouts, layoutItem: LayoutItem, cols: BreakpointCols, margin: ResponsiveMargin, containerPadding: ResponsiveMargin, rowHeight: number, containerHeight?: number, currentBreakpoint?: Breakpoint): Layouts;
|
|
61
|
+
export declare function cloneLayouts(layouts: Layouts, layoutItemReplaceProps?: Partial<Exclude<LayoutItem, 'i'>>): Layouts;
|
|
62
|
+
export declare function isEqualLayoutItem(layoutA: LayoutItem, layoutB: LayoutItem): boolean;
|
|
63
|
+
export declare function isEqualLayout(layoutA: Layout, layoutB: Layout): boolean;
|
|
64
|
+
export declare function isEqualLayouts(layoutsA: Layouts, layoutsB: Layouts): boolean;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { BaseLayoutItem, GridLayoutProps, Layout, LayoutItemRender, LayoutNotReadOnly, Margin } from '../../types';
|
|
2
|
+
export declare type Breakpoint = string;
|
|
3
|
+
export declare type DefaultBreakpoints = 'lg' | 'md' | 'sm' | 'xs' | 'xxs';
|
|
4
|
+
export declare type ResponsiveLayout<T extends Breakpoint> = Record<T, Layout>;
|
|
5
|
+
export declare type Breakpoints<T extends Breakpoint> = Readonly<Record<T, number>>;
|
|
6
|
+
export interface LayoutsNotReadonly {
|
|
7
|
+
[P: Breakpoint]: LayoutNotReadOnly;
|
|
8
|
+
}
|
|
9
|
+
export interface Layouts {
|
|
10
|
+
[P: Breakpoint]: Layout;
|
|
11
|
+
}
|
|
12
|
+
export declare type BaseResposiveLayoutItems = BaseLayoutItem[];
|
|
13
|
+
export declare type State = {
|
|
14
|
+
layout: LayoutNotReadOnly;
|
|
15
|
+
breakpoint: Breakpoint;
|
|
16
|
+
cols: number;
|
|
17
|
+
fireOnLoadLayoutChange?: boolean;
|
|
18
|
+
contaierMargin: Margin;
|
|
19
|
+
contaierPadding: Margin;
|
|
20
|
+
};
|
|
21
|
+
export declare type AddItemPostion = 'first' | 'last';
|
|
22
|
+
export declare type OnLayoutChangeCallback = (layout: LayoutNotReadOnly, layouts: LayoutsNotReadonly) => void;
|
|
23
|
+
export declare type LayoutItemResponsive = {
|
|
24
|
+
i: string;
|
|
25
|
+
freeMove: boolean;
|
|
26
|
+
};
|
|
27
|
+
export declare type ResponsiveMargin = {
|
|
28
|
+
[key: Breakpoint]: Margin;
|
|
29
|
+
} | Margin;
|
|
30
|
+
export declare type RefResponsiveState = {
|
|
31
|
+
layouts: LayoutsNotReadonly;
|
|
32
|
+
breakpoint: Breakpoint;
|
|
33
|
+
breakpoints: Breakpoints<Breakpoint>;
|
|
34
|
+
width: number;
|
|
35
|
+
height: number;
|
|
36
|
+
};
|
|
37
|
+
export declare type OnBreakpointChange = (breakPoint: Breakpoint, cols: number, width: number, height: number) => void;
|
|
38
|
+
export declare type ContainerChangeEvent = {
|
|
39
|
+
containerWidth: number;
|
|
40
|
+
containerHeight: number;
|
|
41
|
+
containerMargin: Margin;
|
|
42
|
+
containerPadding: Margin;
|
|
43
|
+
breakpoint: Breakpoint;
|
|
44
|
+
cols: number;
|
|
45
|
+
};
|
|
46
|
+
export declare type OnContainerChange = (event: ContainerChangeEvent) => void;
|
|
47
|
+
export declare type BreakpointCols = {
|
|
48
|
+
[key: Breakpoint]: number;
|
|
49
|
+
};
|
|
50
|
+
export declare type ResponsiveReactGridLayoutProps = {
|
|
51
|
+
/**
|
|
52
|
+
* rawLayout: LayoutItems vigentes en todos los breakpoints, si se remueve de aca, se remueve en todos
|
|
53
|
+
*/
|
|
54
|
+
addItemPosition?: AddItemPostion;
|
|
55
|
+
layoutItemRender: LayoutItemRender;
|
|
56
|
+
allowOverlap?: boolean;
|
|
57
|
+
breakpoint?: Breakpoint;
|
|
58
|
+
breakpoints: Breakpoints<Breakpoint>;
|
|
59
|
+
cols: BreakpointCols;
|
|
60
|
+
layouts: ResponsiveLayout<Breakpoint>;
|
|
61
|
+
width: number;
|
|
62
|
+
height: number;
|
|
63
|
+
containerMargin?: ResponsiveMargin;
|
|
64
|
+
containerPadding?: ResponsiveMargin;
|
|
65
|
+
onBreakpointChange?: OnBreakpointChange;
|
|
66
|
+
onLayoutChange?: OnLayoutChangeCallback;
|
|
67
|
+
onContainerChange?: OnContainerChange;
|
|
68
|
+
} & Omit<GridLayoutProps, 'cols' | 'margin' | 'containerPadding' | 'onLayoutChange' | 'layout'>;
|
|
69
|
+
export declare type generateInitialStateProps = Pick<ResponsiveReactGridLayoutProps, 'width' | 'height' | 'breakpoint' | 'breakpoints' | 'cols' | 'compactType' | 'layouts' | 'containerMargin' | 'containerPadding' | 'colapsedHeight'>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { FunctionComponent } from 'react';
|
|
2
|
+
import { CoreProps, GridLayoutProps } from '../../types';
|
|
3
|
+
import { ResponsiveReactGridLayoutProps } from '../Responsive/types';
|
|
4
|
+
export declare const THROTTLE_RESIZE_TIME = 200;
|
|
5
|
+
export declare type HOCProps = {
|
|
6
|
+
measureBeforeMount?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare type ComponentReactGridLayoutProps = GridLayoutProps & {
|
|
9
|
+
measureBeforeMount?: boolean;
|
|
10
|
+
};
|
|
11
|
+
export interface ComponentResponsiveReactGridLayoutProps extends Omit<ResponsiveReactGridLayoutProps, 'width' | 'height'> {
|
|
12
|
+
measureBeforeMount?: boolean;
|
|
13
|
+
}
|
|
14
|
+
declare type MinimalParameters = Pick<CoreProps, 'width' | 'height' | 'innerRef' | 'style' | 'className'>;
|
|
15
|
+
export declare function WidthProvider<T extends MinimalParameters>(ComposedComponent: FunctionComponent<T>): (props: Omit<T, 'width' | 'height' | 'innerRef'> & HOCProps) => import("react").JSX.Element;
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,355 @@
|
|
|
1
|
+
import { SyntheticEvent } from 'react';
|
|
2
|
+
import { DraggableEvent } from 'react-draggable';
|
|
3
|
+
export declare type Position = {
|
|
4
|
+
left: number;
|
|
5
|
+
top: number;
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
};
|
|
9
|
+
export declare type PartialPosition = {
|
|
10
|
+
left: number;
|
|
11
|
+
top: number;
|
|
12
|
+
};
|
|
13
|
+
export declare type PositionParams = {
|
|
14
|
+
containerMargin: [number, number];
|
|
15
|
+
containerPadding: [number, number];
|
|
16
|
+
containerWidth: number;
|
|
17
|
+
containerHeight: number;
|
|
18
|
+
cols: number;
|
|
19
|
+
rowHeight: number;
|
|
20
|
+
maxRows: number;
|
|
21
|
+
};
|
|
22
|
+
export declare type ReactDraggableCallbackData = {
|
|
23
|
+
node: HTMLElement;
|
|
24
|
+
x?: number;
|
|
25
|
+
y?: number;
|
|
26
|
+
deltaX: number;
|
|
27
|
+
deltaY: number;
|
|
28
|
+
lastX?: number;
|
|
29
|
+
lastY?: number;
|
|
30
|
+
};
|
|
31
|
+
export declare type ReactRef<T> = React.RefObject<T>;
|
|
32
|
+
export declare type ResizeHandle = 's' | 'w' | 'e' | 'n' | 'sw' | 'nw' | 'se' | 'ne';
|
|
33
|
+
export declare type DroppingPosition = {
|
|
34
|
+
left: number;
|
|
35
|
+
top: number;
|
|
36
|
+
e: Event;
|
|
37
|
+
};
|
|
38
|
+
export declare type Size = {
|
|
39
|
+
width: number;
|
|
40
|
+
height: number;
|
|
41
|
+
};
|
|
42
|
+
export declare type GridResizeEvent = {
|
|
43
|
+
e: SyntheticEvent;
|
|
44
|
+
node: HTMLElement;
|
|
45
|
+
size: Size;
|
|
46
|
+
};
|
|
47
|
+
export declare type GridDragEvent = {
|
|
48
|
+
e: DraggableEvent;
|
|
49
|
+
node: HTMLElement;
|
|
50
|
+
newPosition: PartialPosition;
|
|
51
|
+
};
|
|
52
|
+
export declare type DragOverEvent = MouseEvent & {
|
|
53
|
+
nativeEvent: {
|
|
54
|
+
layerX: number;
|
|
55
|
+
layerY: number;
|
|
56
|
+
} & Event;
|
|
57
|
+
};
|
|
58
|
+
export declare type Margin = [number, number];
|
|
59
|
+
export interface BaseLayoutItem {
|
|
60
|
+
/**
|
|
61
|
+
* A string corresponding to the component key.
|
|
62
|
+
* Uses the index of components instead if not provided.
|
|
63
|
+
*/
|
|
64
|
+
i: string;
|
|
65
|
+
/**
|
|
66
|
+
* If true el item puede moverse dentro del area sin reorganizar los otros layouuts.
|
|
67
|
+
*/
|
|
68
|
+
freeMove?: boolean | undefined;
|
|
69
|
+
/**
|
|
70
|
+
* If true el item solo muestra el header. y reacomoda el layout
|
|
71
|
+
*/
|
|
72
|
+
colapsed?: boolean | undefined;
|
|
73
|
+
/**
|
|
74
|
+
* If false desaparece del layout
|
|
75
|
+
*/
|
|
76
|
+
visible?: boolean | undefined;
|
|
77
|
+
}
|
|
78
|
+
export interface LayoutItem extends BaseLayoutItem {
|
|
79
|
+
/**
|
|
80
|
+
* X position in grid units.
|
|
81
|
+
*/
|
|
82
|
+
x: number;
|
|
83
|
+
/**
|
|
84
|
+
* Y position in grid units.
|
|
85
|
+
*/
|
|
86
|
+
y: number;
|
|
87
|
+
/**
|
|
88
|
+
* Width in grid units.
|
|
89
|
+
*/
|
|
90
|
+
w: number;
|
|
91
|
+
/**
|
|
92
|
+
* Height in grid units.
|
|
93
|
+
*/
|
|
94
|
+
h: number;
|
|
95
|
+
/**
|
|
96
|
+
* Minimum width in grid units.
|
|
97
|
+
*/
|
|
98
|
+
minW?: number | undefined;
|
|
99
|
+
/**
|
|
100
|
+
* Maximum width in grid units.
|
|
101
|
+
*/
|
|
102
|
+
maxW?: number | undefined;
|
|
103
|
+
/**
|
|
104
|
+
* Minimum height in grid units.
|
|
105
|
+
*/
|
|
106
|
+
minH?: number | undefined;
|
|
107
|
+
/**
|
|
108
|
+
* Maximum height in grid units.
|
|
109
|
+
*/
|
|
110
|
+
maxH?: number | undefined;
|
|
111
|
+
/**
|
|
112
|
+
* set by DragEvents (onDragStart, onDrag, onDragStop) and ResizeEvents (onResizeStart, onResize, onResizeStop)
|
|
113
|
+
*/
|
|
114
|
+
moved?: boolean | undefined;
|
|
115
|
+
/**
|
|
116
|
+
* If true, equal to `isDraggable: false` and `isResizable: false`.
|
|
117
|
+
*/
|
|
118
|
+
static?: boolean | undefined;
|
|
119
|
+
/**
|
|
120
|
+
* If false, will not be draggable. Overrides `static`.
|
|
121
|
+
*/
|
|
122
|
+
isDraggable?: boolean | undefined;
|
|
123
|
+
/**
|
|
124
|
+
* If false, will not be resizable. Overrides `static`.
|
|
125
|
+
*/
|
|
126
|
+
isResizable?: boolean | undefined;
|
|
127
|
+
/**
|
|
128
|
+
* By default, a handle is only shown on the bottom-right (southeast) corner.
|
|
129
|
+
* Note that resizing from the top or left is generally not intuitive.
|
|
130
|
+
*/
|
|
131
|
+
resizeHandles?: ResizeHandle[] | undefined;
|
|
132
|
+
/**
|
|
133
|
+
* If true and draggable, item will be moved only within grid.
|
|
134
|
+
*/
|
|
135
|
+
isBounded?: boolean | undefined;
|
|
136
|
+
}
|
|
137
|
+
export declare type LayoutNotReadOnly = Array<LayoutItem>;
|
|
138
|
+
export declare type Layout = Array<LayoutItem>;
|
|
139
|
+
export declare type CompactType = 'horizontal' | 'vertical' | null;
|
|
140
|
+
export declare type EventCallback = (layout: Layout, oldItem: LayoutItem | undefined, newItem: LayoutItem, placeholder: LayoutItem | undefined, event: DraggableEvent | SyntheticEvent, element: HTMLElement) => void;
|
|
141
|
+
export declare type LayoutItemType = 'placeholder' | 'layoutItem';
|
|
142
|
+
export declare type LayoutItemRenderProps = {
|
|
143
|
+
i: string;
|
|
144
|
+
type: LayoutItemType;
|
|
145
|
+
};
|
|
146
|
+
export declare type LayoutItemRender = (props: LayoutItemRenderProps) => JSX.Element;
|
|
147
|
+
export interface CoreProps {
|
|
148
|
+
/**
|
|
149
|
+
* The classname to add to the root element.
|
|
150
|
+
*/
|
|
151
|
+
className?: string | undefined;
|
|
152
|
+
/**
|
|
153
|
+
* Inline-style object to pass to the root element.
|
|
154
|
+
*/
|
|
155
|
+
style?: React.CSSProperties | undefined;
|
|
156
|
+
/**
|
|
157
|
+
* This allows setting the initial width on the server side.
|
|
158
|
+
* This is required unless using the HOC <WidthProvider> or similar.
|
|
159
|
+
*/
|
|
160
|
+
width?: number | undefined;
|
|
161
|
+
/**
|
|
162
|
+
* This allows setting the initial heigth on the server side.
|
|
163
|
+
* This is required unless using the HOC <WidthProvider> or similar.
|
|
164
|
+
*/
|
|
165
|
+
height?: number | undefined;
|
|
166
|
+
/**
|
|
167
|
+
* If true, the container height swells and contracts to fit contents.
|
|
168
|
+
*/
|
|
169
|
+
autoSize?: boolean | undefined;
|
|
170
|
+
/**
|
|
171
|
+
* A CSS selector for tags that will not be draggable.
|
|
172
|
+
* For example: `draggableCancel: '.MyNonDraggableAreaClassName'`
|
|
173
|
+
* If you forget the leading. it will not work.
|
|
174
|
+
* "".react-resizable-handle" is always prepended to this value.
|
|
175
|
+
*/
|
|
176
|
+
draggableCancel?: string | undefined;
|
|
177
|
+
/**
|
|
178
|
+
* A CSS selector for tags that will act as the draggable handle.
|
|
179
|
+
* For example: `draggableHandle: '.MyDragHandleClassName'`
|
|
180
|
+
* If you forget the leading . it will not work.
|
|
181
|
+
*/
|
|
182
|
+
draggableHandle?: string | undefined;
|
|
183
|
+
/**
|
|
184
|
+
* Compaction type.
|
|
185
|
+
*/
|
|
186
|
+
compactType?: CompactType;
|
|
187
|
+
/**
|
|
188
|
+
* Rows have a static height, but you can change this based on breakpoints if you like.
|
|
189
|
+
*/
|
|
190
|
+
rowHeight?: number | undefined;
|
|
191
|
+
/**
|
|
192
|
+
* Altura cuando está colapsado
|
|
193
|
+
*/
|
|
194
|
+
colapsedHeight?: number;
|
|
195
|
+
/**
|
|
196
|
+
* Configuration of a dropping element. Dropping element is a "virtual" element
|
|
197
|
+
* which appears when you drag over some element from outside.
|
|
198
|
+
*/
|
|
199
|
+
droppingItem?: {
|
|
200
|
+
i: string;
|
|
201
|
+
w: number;
|
|
202
|
+
h: number;
|
|
203
|
+
} | undefined;
|
|
204
|
+
/**
|
|
205
|
+
* If true, the layout will compact vertically.
|
|
206
|
+
*/
|
|
207
|
+
verticalCompact?: boolean | undefined;
|
|
208
|
+
/**
|
|
209
|
+
* Default Infinity, but you can specify a max here if you like.
|
|
210
|
+
* Note that this isn't fully fleshed out and won't error if you specify a layout that
|
|
211
|
+
* extends beyond the row capacity. It will, however, not allow users to drag/resize
|
|
212
|
+
* an item past the barrier. They can push items beyond the barrier, though.
|
|
213
|
+
* Intentionally not documented for this reason.
|
|
214
|
+
*/
|
|
215
|
+
maxRows?: number | undefined;
|
|
216
|
+
/**
|
|
217
|
+
* If set to false it will disable dragging on all children.
|
|
218
|
+
*/
|
|
219
|
+
isDraggable?: boolean | undefined;
|
|
220
|
+
/**
|
|
221
|
+
* If set to false it will disable resizing on all children.
|
|
222
|
+
*/
|
|
223
|
+
isResizable?: boolean | undefined;
|
|
224
|
+
/**
|
|
225
|
+
* If true and draggable, all items will be moved only within grid.
|
|
226
|
+
*/
|
|
227
|
+
isBounded?: boolean | undefined;
|
|
228
|
+
/**
|
|
229
|
+
* Uses CSS3 `translate()` instead of position top/left.
|
|
230
|
+
* This makes about 6x faster paint performance.
|
|
231
|
+
*/
|
|
232
|
+
useCSSTransforms?: boolean | undefined;
|
|
233
|
+
/**
|
|
234
|
+
* If parent DOM node of ResponsiveReactGridLayout or ReactGridLayout has "transform: scale(n)" css property,
|
|
235
|
+
* we should set scale coefficient to avoid render artefacts while dragging.
|
|
236
|
+
*/
|
|
237
|
+
transformScale?: number | undefined;
|
|
238
|
+
/**
|
|
239
|
+
* If true, grid can be placed one over the other.
|
|
240
|
+
*/
|
|
241
|
+
allowOverlap?: boolean | undefined;
|
|
242
|
+
/**
|
|
243
|
+
* If true, grid items won't change position when being dragged over.
|
|
244
|
+
*/
|
|
245
|
+
preventCollision?: boolean | undefined;
|
|
246
|
+
/**
|
|
247
|
+
* If true, droppable elements (with `draggable={true}` attribute)
|
|
248
|
+
* can be dropped on the grid. It triggers "onDrop" callback
|
|
249
|
+
* with position and event object as parameters.
|
|
250
|
+
* It can be useful for dropping an element in a specific position
|
|
251
|
+
* NOTE: In case of using Firefox you should add
|
|
252
|
+
* `onDragStart={e => e.dataTransfer.setData('text/plain', '')}` attribute
|
|
253
|
+
* along with `draggable={true}` otherwise this feature will work incorrect.
|
|
254
|
+
* onDragStart attribute is required for Firefox for a dragging initialization
|
|
255
|
+
* @see https://bugzilla.mozilla.org/show_bug.cgi?id=568313
|
|
256
|
+
*/
|
|
257
|
+
isDroppable?: boolean | undefined;
|
|
258
|
+
/**
|
|
259
|
+
* Defines which resize handles should be rendered
|
|
260
|
+
* Allows for any combination of:
|
|
261
|
+
* 's' - South handle (bottom-center)
|
|
262
|
+
* 'w' - West handle (left-center)
|
|
263
|
+
* 'e' - East handle (right-center)
|
|
264
|
+
* 'n' - North handle (top-center)
|
|
265
|
+
* 'sw' - Southwest handle (bottom-left)
|
|
266
|
+
* 'nw' - Northwest handle (top-left)
|
|
267
|
+
* 'se' - Southeast handle (bottom-right)
|
|
268
|
+
* 'ne' - Northeast handle (top-right)
|
|
269
|
+
*/
|
|
270
|
+
resizeHandles?: ResizeHandle[];
|
|
271
|
+
/**
|
|
272
|
+
* Defines custom component for resize handle
|
|
273
|
+
*/
|
|
274
|
+
resizeHandle?: React.ReactNode | ((resizeHandle: ResizeHandle) => React.ReactNode);
|
|
275
|
+
/**
|
|
276
|
+
* Calls when drag starts.
|
|
277
|
+
*/
|
|
278
|
+
onDragStart?: EventCallback | undefined;
|
|
279
|
+
/**
|
|
280
|
+
* Calls on each drag movement.
|
|
281
|
+
*/
|
|
282
|
+
onDrag?: EventCallback | undefined;
|
|
283
|
+
/**
|
|
284
|
+
* Calls when drag is complete.
|
|
285
|
+
*/
|
|
286
|
+
onDragStop?: EventCallback | undefined;
|
|
287
|
+
/**
|
|
288
|
+
* Calls when resize starts.
|
|
289
|
+
*/
|
|
290
|
+
onResizeStart?: EventCallback | undefined;
|
|
291
|
+
/**
|
|
292
|
+
* Calls when resize movement happens.
|
|
293
|
+
*/
|
|
294
|
+
onResize?: EventCallback | undefined;
|
|
295
|
+
/**
|
|
296
|
+
* Calls when resize is complete.
|
|
297
|
+
*/
|
|
298
|
+
onResizeStop?: EventCallback | undefined;
|
|
299
|
+
/**
|
|
300
|
+
* Calls when some element has been dropped
|
|
301
|
+
*/
|
|
302
|
+
onDrop?(layout: Layout[], item: Layout, e: Event): void;
|
|
303
|
+
/**
|
|
304
|
+
* Calls when an element is being dragged over the grid from outside as above.
|
|
305
|
+
* This callback should return an object to dynamically change the droppingItem size
|
|
306
|
+
* Return false to short-circuit the dragover
|
|
307
|
+
*/
|
|
308
|
+
onDropDragOver?(e: any): {
|
|
309
|
+
w?: number;
|
|
310
|
+
h?: number;
|
|
311
|
+
} | false | undefined;
|
|
312
|
+
/**
|
|
313
|
+
* Ref for getting a reference for the grid's wrapping div.
|
|
314
|
+
* You can use this instead of a regular ref and the deprecated `ReactDOM.findDOMNode()`` function.
|
|
315
|
+
*/
|
|
316
|
+
innerRef?: React.Ref<HTMLDivElement>;
|
|
317
|
+
}
|
|
318
|
+
export interface GridLayoutProps extends CoreProps {
|
|
319
|
+
layoutItemRender: LayoutItemRender;
|
|
320
|
+
/**
|
|
321
|
+
* Number of columns in this layout.
|
|
322
|
+
*/
|
|
323
|
+
cols?: number | undefined;
|
|
324
|
+
/**
|
|
325
|
+
* containerMargin between items `[x, y]` in px.
|
|
326
|
+
*/
|
|
327
|
+
containerMargin?: Margin;
|
|
328
|
+
/**
|
|
329
|
+
* Padding inside the container `[x, y]` in px.
|
|
330
|
+
*/
|
|
331
|
+
containerPadding?: [number, number] | undefined;
|
|
332
|
+
/**
|
|
333
|
+
* Layout is an array of object with the format:
|
|
334
|
+
*
|
|
335
|
+
* `{x: number, y: number, w: number, h: number}`
|
|
336
|
+
*
|
|
337
|
+
* The index into the layout must match the key used on each item component.
|
|
338
|
+
* If you choose to use custom keys, you can specify that key in the layout
|
|
339
|
+
* array objects like so:
|
|
340
|
+
*
|
|
341
|
+
* `{i: string, x: number, y: number, w: number, h: number}`
|
|
342
|
+
*
|
|
343
|
+
* If not provided, use data-grid props on children.
|
|
344
|
+
*/
|
|
345
|
+
layout?: Layout | undefined;
|
|
346
|
+
/**
|
|
347
|
+
* Indica cual ventana se va a maximizar
|
|
348
|
+
*/
|
|
349
|
+
maximizeId?: string | undefined;
|
|
350
|
+
/**
|
|
351
|
+
* Callback so you can save the layout.
|
|
352
|
+
* Calls back with (currentLayout) after every drag or resize stop.
|
|
353
|
+
*/
|
|
354
|
+
onLayoutChange?(layout: Layout): void;
|
|
355
|
+
}
|