Skip to content

Commit 5edf2f2

Browse files
authored
🤖 Merge PR DefinitelyTyped#73987 fix(react-grid-layout): resizeHandle type definition by @csamuel
1 parent 1f980d0 commit 5edf2f2

File tree

2 files changed

+36
-1
lines changed

2 files changed

+36
-1
lines changed

‎types/react-grid-layout/index.d.ts‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,10 @@ declare namespace ReactGridLayout {
247247
/**
248248
* Defines custom component for resize handle
249249
*/
250-
resizeHandle?: React.ReactNode | ((resizeHandle: ResizeHandle) => React.ReactNode) | undefined;
250+
resizeHandle?:
251+
| React.ReactNode
252+
| ((resizeHandleAxis: ResizeHandle, ref: React.Ref<HTMLElement>) => React.ReactNode)
253+
| undefined;
251254

252255
/**
253256
* Calls when drag starts.

‎types/react-grid-layout/react-grid-layout-tests.tsx‎

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -106,3 +106,35 @@ class InnerRefCallbackTest extends React.Component {
106106
return <ReactGridLayout innerRef={(_: HTMLDivElement | null) => {}} />;
107107
}
108108
}
109+
110+
class ResizeHandleFunctionTest extends React.Component {
111+
render() {
112+
return (
113+
<ReactGridLayout
114+
resizeHandle={(resizeHandleAxis, ref) => (
115+
<div ref={ref as React.Ref<HTMLDivElement>} className={`custom-handle-${resizeHandleAxis}`}>
116+
{resizeHandleAxis}
117+
</div>
118+
)}
119+
/>
120+
);
121+
}
122+
}
123+
124+
class ResizeHandleElementTest extends React.Component {
125+
render() {
126+
return <ReactGridLayout resizeHandle={<div className="custom-handle" />} />;
127+
}
128+
}
129+
130+
class ResizeHandleResponsiveTest extends React.Component {
131+
render() {
132+
return (
133+
<Responsive
134+
resizeHandle={(axis, ref) => {
135+
return <span ref={ref} data-axis={axis} />;
136+
}}
137+
/>
138+
);
139+
}
140+
}

0 commit comments

Comments
 (0)