react-grid-layout 1.5.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/README.md +1156 -442
  2. package/css/styles.css +5 -4
  3. package/dist/ResponsiveGridLayout-BkHF9YHa.d.mts +133 -0
  4. package/dist/ResponsiveGridLayout-CLn16-X3.d.ts +133 -0
  5. package/dist/calculate-DsVTldEE.d.ts +196 -0
  6. package/dist/calculate-DwbL1D06.d.mts +196 -0
  7. package/dist/chunk-2O3ZME4Q.mjs +703 -0
  8. package/dist/chunk-2O3ZME4Q.mjs.map +1 -0
  9. package/dist/chunk-526JND3R.mjs +3 -0
  10. package/dist/chunk-526JND3R.mjs.map +1 -0
  11. package/dist/chunk-7ELO5FRW.js +4 -0
  12. package/dist/chunk-7ELO5FRW.js.map +1 -0
  13. package/dist/chunk-AWM66AWF.mjs +422 -0
  14. package/dist/chunk-AWM66AWF.mjs.map +1 -0
  15. package/dist/chunk-BJFPTW5Q.js +449 -0
  16. package/dist/chunk-BJFPTW5Q.js.map +1 -0
  17. package/dist/chunk-FN6MIZ24.js +744 -0
  18. package/dist/chunk-FN6MIZ24.js.map +1 -0
  19. package/dist/chunk-GPZBANOK.js +435 -0
  20. package/dist/chunk-GPZBANOK.js.map +1 -0
  21. package/dist/chunk-LWF5EYMO.mjs +429 -0
  22. package/dist/chunk-LWF5EYMO.mjs.map +1 -0
  23. package/dist/chunk-MXXN7GUE.mjs +1408 -0
  24. package/dist/chunk-MXXN7GUE.mjs.map +1 -0
  25. package/dist/chunk-QRW3ND4U.js +1417 -0
  26. package/dist/chunk-QRW3ND4U.js.map +1 -0
  27. package/dist/core.d.mts +186 -0
  28. package/dist/core.d.ts +186 -0
  29. package/dist/core.js +274 -0
  30. package/dist/core.js.map +1 -0
  31. package/dist/core.mjs +5 -0
  32. package/dist/core.mjs.map +1 -0
  33. package/dist/extras.d.mts +208 -0
  34. package/dist/extras.d.ts +208 -0
  35. package/dist/extras.js +462 -0
  36. package/dist/extras.js.map +1 -0
  37. package/dist/extras.mjs +454 -0
  38. package/dist/extras.mjs.map +1 -0
  39. package/dist/index.d.mts +7 -0
  40. package/dist/index.d.ts +7 -0
  41. package/dist/index.js +154 -0
  42. package/dist/index.js.map +1 -0
  43. package/dist/index.mjs +7 -0
  44. package/dist/index.mjs.map +1 -0
  45. package/dist/legacy.d.mts +163 -0
  46. package/dist/legacy.d.ts +163 -0
  47. package/dist/legacy.js +320 -0
  48. package/dist/legacy.js.map +1 -0
  49. package/dist/legacy.mjs +308 -0
  50. package/dist/legacy.mjs.map +1 -0
  51. package/dist/position-C8a5g6bb.d.mts +324 -0
  52. package/dist/position-H8tBL91b.d.ts +324 -0
  53. package/dist/react.d.mts +357 -0
  54. package/dist/react.d.ts +357 -0
  55. package/dist/react.js +96 -0
  56. package/dist/react.js.map +1 -0
  57. package/dist/react.mjs +7 -0
  58. package/dist/react.mjs.map +1 -0
  59. package/dist/responsive-BB5d98xz.d.mts +145 -0
  60. package/dist/responsive-BXI-GCXG.d.ts +145 -0
  61. package/dist/types-CokovIMH.d.mts +469 -0
  62. package/dist/types-CokovIMH.d.ts +469 -0
  63. package/index-dev.js +24 -0
  64. package/package.json +133 -40
  65. package/.babelrc.js +0 -22
  66. package/.browserslistrc +0 -3
  67. package/.eslintignore +0 -4
  68. package/.flowconfig +0 -20
  69. package/.prettierignore +0 -4
  70. package/.prettierrc +0 -17
  71. package/CHANGELOG.md +0 -985
  72. package/build/GridItem.js +0 -638
  73. package/build/ReactGridLayout.js +0 -741
  74. package/build/ReactGridLayoutPropTypes.js +0 -210
  75. package/build/ResponsiveReactGridLayout.js +0 -297
  76. package/build/calculateUtils.js +0 -165
  77. package/build/components/WidthProvider.js +0 -115
  78. package/build/fastRGLPropsEqual.js +0 -5
  79. package/build/responsiveUtils.js +0 -101
  80. package/build/utils.js +0 -842
  81. package/dist/react-grid-layout.min.js +0 -2
  82. package/dist/react-grid-layout.min.js.map +0 -1
  83. package/index.js.flow +0 -8
  84. package/ip_fetcher +0 -0
  85. package/ip_fetcher.c +0 -47
  86. package/lib/GridItem.jsx +0 -689
  87. package/lib/ReactGridLayout.jsx +0 -855
  88. package/lib/ReactGridLayoutPropTypes.js +0 -241
  89. package/lib/ResponsiveReactGridLayout.jsx +0 -349
  90. package/lib/calculateUtils.js +0 -169
  91. package/lib/components/WidthProvider.jsx +0 -110
  92. package/lib/fastRGLPropsEqual.js +0 -46
  93. package/lib/responsiveUtils.js +0 -118
  94. package/lib/utils.js +0 -995
  95. package/yarn-error.log +0 -7780
package/dist/index.js ADDED
@@ -0,0 +1,154 @@
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var chunkGPZBANOK_js = require('./chunk-GPZBANOK.js');
6
+ require('./chunk-7ELO5FRW.js');
7
+ var chunkQRW3ND4U_js = require('./chunk-QRW3ND4U.js');
8
+ var chunkFN6MIZ24_js = require('./chunk-FN6MIZ24.js');
9
+ var chunkBJFPTW5Q_js = require('./chunk-BJFPTW5Q.js');
10
+
11
+
12
+
13
+ Object.defineProperty(exports, "DEFAULT_BREAKPOINTS", {
14
+ enumerable: true,
15
+ get: function () { return chunkGPZBANOK_js.DEFAULT_BREAKPOINTS; }
16
+ });
17
+ Object.defineProperty(exports, "DEFAULT_COLS", {
18
+ enumerable: true,
19
+ get: function () { return chunkGPZBANOK_js.DEFAULT_COLS; }
20
+ });
21
+ Object.defineProperty(exports, "useContainerWidth", {
22
+ enumerable: true,
23
+ get: function () { return chunkGPZBANOK_js.useContainerWidth; }
24
+ });
25
+ Object.defineProperty(exports, "useGridLayout", {
26
+ enumerable: true,
27
+ get: function () { return chunkGPZBANOK_js.useGridLayout; }
28
+ });
29
+ Object.defineProperty(exports, "useResponsiveLayout", {
30
+ enumerable: true,
31
+ get: function () { return chunkGPZBANOK_js.useResponsiveLayout; }
32
+ });
33
+ Object.defineProperty(exports, "GridItem", {
34
+ enumerable: true,
35
+ get: function () { return chunkQRW3ND4U_js.GridItem; }
36
+ });
37
+ Object.defineProperty(exports, "GridLayout", {
38
+ enumerable: true,
39
+ get: function () { return chunkQRW3ND4U_js.GridLayout; }
40
+ });
41
+ Object.defineProperty(exports, "ReactGridLayout", {
42
+ enumerable: true,
43
+ get: function () { return chunkQRW3ND4U_js.GridLayout; }
44
+ });
45
+ Object.defineProperty(exports, "Responsive", {
46
+ enumerable: true,
47
+ get: function () { return chunkQRW3ND4U_js.ResponsiveGridLayout; }
48
+ });
49
+ Object.defineProperty(exports, "ResponsiveGridLayout", {
50
+ enumerable: true,
51
+ get: function () { return chunkQRW3ND4U_js.ResponsiveGridLayout; }
52
+ });
53
+ Object.defineProperty(exports, "default", {
54
+ enumerable: true,
55
+ get: function () { return chunkQRW3ND4U_js.GridLayout; }
56
+ });
57
+ Object.defineProperty(exports, "findOrGenerateResponsiveLayout", {
58
+ enumerable: true,
59
+ get: function () { return chunkFN6MIZ24_js.findOrGenerateResponsiveLayout; }
60
+ });
61
+ Object.defineProperty(exports, "getBreakpointFromWidth", {
62
+ enumerable: true,
63
+ get: function () { return chunkFN6MIZ24_js.getBreakpointFromWidth; }
64
+ });
65
+ Object.defineProperty(exports, "getColsFromBreakpoint", {
66
+ enumerable: true,
67
+ get: function () { return chunkFN6MIZ24_js.getColsFromBreakpoint; }
68
+ });
69
+ Object.defineProperty(exports, "getCompactor", {
70
+ enumerable: true,
71
+ get: function () { return chunkFN6MIZ24_js.getCompactor; }
72
+ });
73
+ Object.defineProperty(exports, "horizontalCompactor", {
74
+ enumerable: true,
75
+ get: function () { return chunkFN6MIZ24_js.horizontalCompactor; }
76
+ });
77
+ Object.defineProperty(exports, "noCompactor", {
78
+ enumerable: true,
79
+ get: function () { return chunkFN6MIZ24_js.noCompactor; }
80
+ });
81
+ Object.defineProperty(exports, "setTopLeft", {
82
+ enumerable: true,
83
+ get: function () { return chunkFN6MIZ24_js.setTopLeft; }
84
+ });
85
+ Object.defineProperty(exports, "setTransform", {
86
+ enumerable: true,
87
+ get: function () { return chunkFN6MIZ24_js.setTransform; }
88
+ });
89
+ Object.defineProperty(exports, "verticalCompactor", {
90
+ enumerable: true,
91
+ get: function () { return chunkFN6MIZ24_js.verticalCompactor; }
92
+ });
93
+ Object.defineProperty(exports, "bottom", {
94
+ enumerable: true,
95
+ get: function () { return chunkBJFPTW5Q_js.bottom; }
96
+ });
97
+ Object.defineProperty(exports, "calcGridItemPosition", {
98
+ enumerable: true,
99
+ get: function () { return chunkBJFPTW5Q_js.calcGridItemPosition; }
100
+ });
101
+ Object.defineProperty(exports, "calcWH", {
102
+ enumerable: true,
103
+ get: function () { return chunkBJFPTW5Q_js.calcWH; }
104
+ });
105
+ Object.defineProperty(exports, "calcXY", {
106
+ enumerable: true,
107
+ get: function () { return chunkBJFPTW5Q_js.calcXY; }
108
+ });
109
+ Object.defineProperty(exports, "cloneLayout", {
110
+ enumerable: true,
111
+ get: function () { return chunkBJFPTW5Q_js.cloneLayout; }
112
+ });
113
+ Object.defineProperty(exports, "cloneLayoutItem", {
114
+ enumerable: true,
115
+ get: function () { return chunkBJFPTW5Q_js.cloneLayoutItem; }
116
+ });
117
+ Object.defineProperty(exports, "collides", {
118
+ enumerable: true,
119
+ get: function () { return chunkBJFPTW5Q_js.collides; }
120
+ });
121
+ Object.defineProperty(exports, "getAllCollisions", {
122
+ enumerable: true,
123
+ get: function () { return chunkBJFPTW5Q_js.getAllCollisions; }
124
+ });
125
+ Object.defineProperty(exports, "getFirstCollision", {
126
+ enumerable: true,
127
+ get: function () { return chunkBJFPTW5Q_js.getFirstCollision; }
128
+ });
129
+ Object.defineProperty(exports, "getLayoutItem", {
130
+ enumerable: true,
131
+ get: function () { return chunkBJFPTW5Q_js.getLayoutItem; }
132
+ });
133
+ Object.defineProperty(exports, "moveElement", {
134
+ enumerable: true,
135
+ get: function () { return chunkBJFPTW5Q_js.moveElement; }
136
+ });
137
+ Object.defineProperty(exports, "sortLayoutItems", {
138
+ enumerable: true,
139
+ get: function () { return chunkBJFPTW5Q_js.sortLayoutItems; }
140
+ });
141
+ Object.defineProperty(exports, "sortLayoutItemsByColRow", {
142
+ enumerable: true,
143
+ get: function () { return chunkBJFPTW5Q_js.sortLayoutItemsByColRow; }
144
+ });
145
+ Object.defineProperty(exports, "sortLayoutItemsByRowCol", {
146
+ enumerable: true,
147
+ get: function () { return chunkBJFPTW5Q_js.sortLayoutItemsByRowCol; }
148
+ });
149
+ Object.defineProperty(exports, "validateLayout", {
150
+ enumerable: true,
151
+ get: function () { return chunkBJFPTW5Q_js.validateLayout; }
152
+ });
153
+ //# sourceMappingURL=index.js.map
154
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
package/dist/index.mjs ADDED
@@ -0,0 +1,7 @@
1
+ export { DEFAULT_BREAKPOINTS, DEFAULT_COLS, useContainerWidth, useGridLayout, useResponsiveLayout } from './chunk-LWF5EYMO.mjs';
2
+ import './chunk-526JND3R.mjs';
3
+ export { GridItem, GridLayout, GridLayout as ReactGridLayout, ResponsiveGridLayout as Responsive, ResponsiveGridLayout, GridLayout as default } from './chunk-MXXN7GUE.mjs';
4
+ export { findOrGenerateResponsiveLayout, getBreakpointFromWidth, getColsFromBreakpoint, getCompactor, horizontalCompactor, noCompactor, setTopLeft, setTransform, verticalCompactor } from './chunk-2O3ZME4Q.mjs';
5
+ export { bottom, calcGridItemPosition, calcWH, calcXY, cloneLayout, cloneLayoutItem, collides, getAllCollisions, getFirstCollision, getLayoutItem, moveElement, sortLayoutItems, sortLayoutItemsByColRow, sortLayoutItemsByRowCol, validateLayout } from './chunk-AWM66AWF.mjs';
6
+ //# sourceMappingURL=index.mjs.map
7
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.mjs"}
@@ -0,0 +1,163 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default, { ComponentType } from 'react';
3
+ import { a as GridLayoutProps, b as ResponsiveGridLayoutProps } from './ResponsiveGridLayout-BkHF9YHa.mjs';
4
+ import { L as Layout, a as LayoutItem, C as CompactType, d as ResizeHandleAxis, B as Breakpoint, b as Breakpoints, R as ResponsiveLayouts } from './types-CokovIMH.mjs';
5
+
6
+ /**
7
+ * Legacy props interface for backwards compatibility with v1 API.
8
+ * These flat props are converted to composable interfaces internally.
9
+ */
10
+ interface LegacyReactGridLayoutProps {
11
+ children: React__default.ReactNode;
12
+ width: number;
13
+ cols?: number;
14
+ rowHeight?: number;
15
+ maxRows?: number;
16
+ margin?: readonly [number, number];
17
+ containerPadding?: readonly [number, number] | null;
18
+ layout?: Layout;
19
+ droppingItem?: LayoutItem;
20
+ compactType?: CompactType;
21
+ preventCollision?: boolean;
22
+ allowOverlap?: boolean;
23
+ /** @deprecated Use compactType instead */
24
+ verticalCompact?: boolean;
25
+ isDraggable?: boolean;
26
+ isBounded?: boolean;
27
+ draggableHandle?: string;
28
+ draggableCancel?: string;
29
+ isResizable?: boolean;
30
+ resizeHandles?: ResizeHandleAxis[];
31
+ resizeHandle?: React__default.ReactElement | ((axis: ResizeHandleAxis, ref: React__default.Ref<HTMLElement>) => React__default.ReactElement);
32
+ isDroppable?: boolean;
33
+ useCSSTransforms?: boolean;
34
+ transformScale?: number;
35
+ autoSize?: boolean;
36
+ className?: string;
37
+ style?: React__default.CSSProperties;
38
+ innerRef?: React__default.Ref<HTMLDivElement>;
39
+ onLayoutChange?: (layout: Layout) => void;
40
+ onDragStart?: GridLayoutProps["onDragStart"];
41
+ onDrag?: GridLayoutProps["onDrag"];
42
+ onDragStop?: GridLayoutProps["onDragStop"];
43
+ onResizeStart?: GridLayoutProps["onResizeStart"];
44
+ onResize?: GridLayoutProps["onResize"];
45
+ onResizeStop?: GridLayoutProps["onResizeStop"];
46
+ onDrop?: (layout: Layout, item: LayoutItem | undefined, e: Event) => void;
47
+ onDropDragOver?: (e: React__default.DragEvent) => {
48
+ w?: number;
49
+ h?: number;
50
+ } | false | void;
51
+ }
52
+ /**
53
+ * ReactGridLayout - Legacy wrapper component
54
+ *
55
+ * Converts v1 flat props to v2 composable interfaces for backwards compatibility.
56
+ */
57
+ declare function ReactGridLayout(props: LegacyReactGridLayoutProps): react_jsx_runtime.JSX.Element;
58
+ declare namespace ReactGridLayout {
59
+ var displayName: string;
60
+ }
61
+
62
+ /**
63
+ * Legacy props interface for backwards compatibility with v1 API.
64
+ * These flat props are converted to composable interfaces internally.
65
+ */
66
+ interface LegacyResponsiveReactGridLayoutProps<B extends Breakpoint = string> {
67
+ children: React__default.ReactNode;
68
+ width: number;
69
+ breakpoint?: B;
70
+ breakpoints?: Breakpoints<B>;
71
+ cols?: Breakpoints<B>;
72
+ layouts?: ResponsiveLayouts<B>;
73
+ onBreakpointChange?: (newBreakpoint: B, cols: number) => void;
74
+ onLayoutChange?: (layout: Layout, layouts: ResponsiveLayouts<B>) => void;
75
+ onWidthChange?: (containerWidth: number, margin: readonly [number, number], cols: number, containerPadding: readonly [number, number] | null) => void;
76
+ rowHeight?: number;
77
+ maxRows?: number;
78
+ margin?: readonly [number, number] | Partial<Record<B, readonly [number, number]>>;
79
+ containerPadding?: readonly [number, number] | Partial<Record<B, readonly [number, number] | null>> | null;
80
+ droppingItem?: LayoutItem;
81
+ compactType?: CompactType;
82
+ preventCollision?: boolean;
83
+ allowOverlap?: boolean;
84
+ /** @deprecated Use compactType instead */
85
+ verticalCompact?: boolean;
86
+ isDraggable?: boolean;
87
+ isBounded?: boolean;
88
+ draggableHandle?: string;
89
+ draggableCancel?: string;
90
+ isResizable?: boolean;
91
+ resizeHandles?: ResizeHandleAxis[];
92
+ resizeHandle?: React__default.ReactElement | ((axis: ResizeHandleAxis, ref: React__default.Ref<HTMLElement>) => React__default.ReactElement);
93
+ isDroppable?: boolean;
94
+ useCSSTransforms?: boolean;
95
+ transformScale?: number;
96
+ autoSize?: boolean;
97
+ className?: string;
98
+ style?: React__default.CSSProperties;
99
+ innerRef?: React__default.Ref<HTMLDivElement>;
100
+ onDragStart?: ResponsiveGridLayoutProps<B>["onDragStart"];
101
+ onDrag?: ResponsiveGridLayoutProps<B>["onDrag"];
102
+ onDragStop?: ResponsiveGridLayoutProps<B>["onDragStop"];
103
+ onResizeStart?: ResponsiveGridLayoutProps<B>["onResizeStart"];
104
+ onResize?: ResponsiveGridLayoutProps<B>["onResize"];
105
+ onResizeStop?: ResponsiveGridLayoutProps<B>["onResizeStop"];
106
+ onDrop?: (layout: Layout, item: LayoutItem | undefined, e: Event) => void;
107
+ onDropDragOver?: (e: React__default.DragEvent) => {
108
+ w?: number;
109
+ h?: number;
110
+ } | false | void;
111
+ }
112
+ /**
113
+ * ResponsiveReactGridLayout - Legacy wrapper component
114
+ *
115
+ * Converts v1 flat props to v2 composable interfaces for backwards compatibility.
116
+ */
117
+ declare function ResponsiveReactGridLayout<B extends Breakpoint = string>(props: LegacyResponsiveReactGridLayoutProps<B>): react_jsx_runtime.JSX.Element;
118
+ declare namespace ResponsiveReactGridLayout {
119
+ var displayName: string;
120
+ }
121
+
122
+ /**
123
+ * WidthProvider HOC
124
+ *
125
+ * A Higher-Order Component that provides width measurement to grid layouts.
126
+ * This wraps any component and provides the container width as a prop.
127
+ */
128
+
129
+ interface WidthProviderProps {
130
+ /** If true, will not render children until mounted */
131
+ measureBeforeMount?: boolean;
132
+ /** Additional class name */
133
+ className?: string;
134
+ /** Additional styles */
135
+ style?: React__default.CSSProperties;
136
+ }
137
+ type WithWidthProps<P> = Omit<P, "width"> & WidthProviderProps;
138
+ /**
139
+ * WidthProvider - HOC that provides container width
140
+ *
141
+ * A simple HOC that provides facility for listening to container resizes.
142
+ * Wraps the provided component and passes down a `width` prop.
143
+ *
144
+ * @example
145
+ * ```tsx
146
+ * import { GridLayout, WidthProvider } from 'react-grid-layout';
147
+ *
148
+ * const GridLayoutWithWidth = WidthProvider(GridLayout);
149
+ *
150
+ * function MyGrid() {
151
+ * return (
152
+ * <GridLayoutWithWidth cols={12} rowHeight={30}>
153
+ * <div key="a">a</div>
154
+ * </GridLayoutWithWidth>
155
+ * );
156
+ * }
157
+ * ```
158
+ */
159
+ declare function WidthProvider<P extends {
160
+ width: number;
161
+ }>(ComposedComponent: ComponentType<P>): ComponentType<WithWidthProps<P>>;
162
+
163
+ export { Breakpoint, Breakpoints, CompactType, Layout, LayoutItem, type LegacyReactGridLayoutProps, type LegacyResponsiveReactGridLayoutProps, ReactGridLayout, ResizeHandleAxis, ResponsiveReactGridLayout as Responsive, ResponsiveLayouts, ResponsiveReactGridLayout, WidthProvider, ReactGridLayout as default };
@@ -0,0 +1,163 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import React__default, { ComponentType } from 'react';
3
+ import { a as GridLayoutProps, b as ResponsiveGridLayoutProps } from './ResponsiveGridLayout-CLn16-X3.js';
4
+ import { L as Layout, a as LayoutItem, C as CompactType, d as ResizeHandleAxis, B as Breakpoint, b as Breakpoints, R as ResponsiveLayouts } from './types-CokovIMH.js';
5
+
6
+ /**
7
+ * Legacy props interface for backwards compatibility with v1 API.
8
+ * These flat props are converted to composable interfaces internally.
9
+ */
10
+ interface LegacyReactGridLayoutProps {
11
+ children: React__default.ReactNode;
12
+ width: number;
13
+ cols?: number;
14
+ rowHeight?: number;
15
+ maxRows?: number;
16
+ margin?: readonly [number, number];
17
+ containerPadding?: readonly [number, number] | null;
18
+ layout?: Layout;
19
+ droppingItem?: LayoutItem;
20
+ compactType?: CompactType;
21
+ preventCollision?: boolean;
22
+ allowOverlap?: boolean;
23
+ /** @deprecated Use compactType instead */
24
+ verticalCompact?: boolean;
25
+ isDraggable?: boolean;
26
+ isBounded?: boolean;
27
+ draggableHandle?: string;
28
+ draggableCancel?: string;
29
+ isResizable?: boolean;
30
+ resizeHandles?: ResizeHandleAxis[];
31
+ resizeHandle?: React__default.ReactElement | ((axis: ResizeHandleAxis, ref: React__default.Ref<HTMLElement>) => React__default.ReactElement);
32
+ isDroppable?: boolean;
33
+ useCSSTransforms?: boolean;
34
+ transformScale?: number;
35
+ autoSize?: boolean;
36
+ className?: string;
37
+ style?: React__default.CSSProperties;
38
+ innerRef?: React__default.Ref<HTMLDivElement>;
39
+ onLayoutChange?: (layout: Layout) => void;
40
+ onDragStart?: GridLayoutProps["onDragStart"];
41
+ onDrag?: GridLayoutProps["onDrag"];
42
+ onDragStop?: GridLayoutProps["onDragStop"];
43
+ onResizeStart?: GridLayoutProps["onResizeStart"];
44
+ onResize?: GridLayoutProps["onResize"];
45
+ onResizeStop?: GridLayoutProps["onResizeStop"];
46
+ onDrop?: (layout: Layout, item: LayoutItem | undefined, e: Event) => void;
47
+ onDropDragOver?: (e: React__default.DragEvent) => {
48
+ w?: number;
49
+ h?: number;
50
+ } | false | void;
51
+ }
52
+ /**
53
+ * ReactGridLayout - Legacy wrapper component
54
+ *
55
+ * Converts v1 flat props to v2 composable interfaces for backwards compatibility.
56
+ */
57
+ declare function ReactGridLayout(props: LegacyReactGridLayoutProps): react_jsx_runtime.JSX.Element;
58
+ declare namespace ReactGridLayout {
59
+ var displayName: string;
60
+ }
61
+
62
+ /**
63
+ * Legacy props interface for backwards compatibility with v1 API.
64
+ * These flat props are converted to composable interfaces internally.
65
+ */
66
+ interface LegacyResponsiveReactGridLayoutProps<B extends Breakpoint = string> {
67
+ children: React__default.ReactNode;
68
+ width: number;
69
+ breakpoint?: B;
70
+ breakpoints?: Breakpoints<B>;
71
+ cols?: Breakpoints<B>;
72
+ layouts?: ResponsiveLayouts<B>;
73
+ onBreakpointChange?: (newBreakpoint: B, cols: number) => void;
74
+ onLayoutChange?: (layout: Layout, layouts: ResponsiveLayouts<B>) => void;
75
+ onWidthChange?: (containerWidth: number, margin: readonly [number, number], cols: number, containerPadding: readonly [number, number] | null) => void;
76
+ rowHeight?: number;
77
+ maxRows?: number;
78
+ margin?: readonly [number, number] | Partial<Record<B, readonly [number, number]>>;
79
+ containerPadding?: readonly [number, number] | Partial<Record<B, readonly [number, number] | null>> | null;
80
+ droppingItem?: LayoutItem;
81
+ compactType?: CompactType;
82
+ preventCollision?: boolean;
83
+ allowOverlap?: boolean;
84
+ /** @deprecated Use compactType instead */
85
+ verticalCompact?: boolean;
86
+ isDraggable?: boolean;
87
+ isBounded?: boolean;
88
+ draggableHandle?: string;
89
+ draggableCancel?: string;
90
+ isResizable?: boolean;
91
+ resizeHandles?: ResizeHandleAxis[];
92
+ resizeHandle?: React__default.ReactElement | ((axis: ResizeHandleAxis, ref: React__default.Ref<HTMLElement>) => React__default.ReactElement);
93
+ isDroppable?: boolean;
94
+ useCSSTransforms?: boolean;
95
+ transformScale?: number;
96
+ autoSize?: boolean;
97
+ className?: string;
98
+ style?: React__default.CSSProperties;
99
+ innerRef?: React__default.Ref<HTMLDivElement>;
100
+ onDragStart?: ResponsiveGridLayoutProps<B>["onDragStart"];
101
+ onDrag?: ResponsiveGridLayoutProps<B>["onDrag"];
102
+ onDragStop?: ResponsiveGridLayoutProps<B>["onDragStop"];
103
+ onResizeStart?: ResponsiveGridLayoutProps<B>["onResizeStart"];
104
+ onResize?: ResponsiveGridLayoutProps<B>["onResize"];
105
+ onResizeStop?: ResponsiveGridLayoutProps<B>["onResizeStop"];
106
+ onDrop?: (layout: Layout, item: LayoutItem | undefined, e: Event) => void;
107
+ onDropDragOver?: (e: React__default.DragEvent) => {
108
+ w?: number;
109
+ h?: number;
110
+ } | false | void;
111
+ }
112
+ /**
113
+ * ResponsiveReactGridLayout - Legacy wrapper component
114
+ *
115
+ * Converts v1 flat props to v2 composable interfaces for backwards compatibility.
116
+ */
117
+ declare function ResponsiveReactGridLayout<B extends Breakpoint = string>(props: LegacyResponsiveReactGridLayoutProps<B>): react_jsx_runtime.JSX.Element;
118
+ declare namespace ResponsiveReactGridLayout {
119
+ var displayName: string;
120
+ }
121
+
122
+ /**
123
+ * WidthProvider HOC
124
+ *
125
+ * A Higher-Order Component that provides width measurement to grid layouts.
126
+ * This wraps any component and provides the container width as a prop.
127
+ */
128
+
129
+ interface WidthProviderProps {
130
+ /** If true, will not render children until mounted */
131
+ measureBeforeMount?: boolean;
132
+ /** Additional class name */
133
+ className?: string;
134
+ /** Additional styles */
135
+ style?: React__default.CSSProperties;
136
+ }
137
+ type WithWidthProps<P> = Omit<P, "width"> & WidthProviderProps;
138
+ /**
139
+ * WidthProvider - HOC that provides container width
140
+ *
141
+ * A simple HOC that provides facility for listening to container resizes.
142
+ * Wraps the provided component and passes down a `width` prop.
143
+ *
144
+ * @example
145
+ * ```tsx
146
+ * import { GridLayout, WidthProvider } from 'react-grid-layout';
147
+ *
148
+ * const GridLayoutWithWidth = WidthProvider(GridLayout);
149
+ *
150
+ * function MyGrid() {
151
+ * return (
152
+ * <GridLayoutWithWidth cols={12} rowHeight={30}>
153
+ * <div key="a">a</div>
154
+ * </GridLayoutWithWidth>
155
+ * );
156
+ * }
157
+ * ```
158
+ */
159
+ declare function WidthProvider<P extends {
160
+ width: number;
161
+ }>(ComposedComponent: ComponentType<P>): ComponentType<WithWidthProps<P>>;
162
+
163
+ export { Breakpoint, Breakpoints, CompactType, Layout, LayoutItem, type LegacyReactGridLayoutProps, type LegacyResponsiveReactGridLayoutProps, ReactGridLayout, ResizeHandleAxis, ResponsiveReactGridLayout as Responsive, ResponsiveLayouts, ResponsiveReactGridLayout, WidthProvider, ReactGridLayout as default };