react-rnd
- Version 10.5.2
- Published
- 86.6 kB
- 3 dependencies
- MIT license
Install
npm i react-rndyarn add react-rndpnpm add react-rndOverview
A draggable and resizable React Component
Index
Classes
- Rnd- componentDidMount()
- defaultProps
- draggable
- getDraggablePosition()
- getMaxSizesFromProps()
- getOffsetHeight()
- getOffsetWidth()
- getParent()
- getParentSize()
- getSelfElement()
- offsetFromParent
- onDrag()
- onDragStart()
- onDragStop()
- onResize()
- onResizeStart()
- onResizeStop()
- originalPosition
- render()
- resizable
- resizableElement
- resizingPosition
- updateOffsetFromParent()
- updatePosition()
- updateSize()
 
Interfaces
- Props- allowAnyClick
- bounds
- cancel
- children
- className
- default
- disableDragging
- dragAxis
- dragGrid
- dragHandleClassName
- dragPositionOffset
- enableResizing
- enableUserSelectHack
- lockAspectRatio
- lockAspectRatioExtraHeight
- lockAspectRatioExtraWidth
- maxHeight
- maxWidth
- minHeight
- minWidth
- onDrag
- onDragStart
- onDragStop
- onMouseDown
- onMouseUp
- onResize
- onResizeStart
- onResizeStop
- position
- resizeGrid
- resizeHandleClasses
- resizeHandleComponent
- resizeHandleStyles
- resizeHandleWrapperClass
- resizeHandleWrapperStyle
- scale
- size
- style
 
Type Aliases
Classes
class Rnd
class Rnd extends React.PureComponent<Props, State> {}constructor
constructor(props: Props);property defaultProps
static defaultProps: DefaultProps;property draggable
draggable: Draggable;property offsetFromParent
offsetFromParent: { left: number; top: number };property originalPosition
originalPosition: { x: number; y: number };property resizable
resizable: Resizable;property resizableElement
resizableElement: { current: HTMLElement | null };property resizingPosition
resizingPosition: { x: number; y: number };method componentDidMount
componentDidMount: () => void;method getDraggablePosition
getDraggablePosition: () => { x: number; y: number };method getMaxSizesFromProps
getMaxSizesFromProps: () => MaxSize;method getOffsetHeight
getOffsetHeight: (boundary: HTMLElement) => number;method getOffsetWidth
getOffsetWidth: (boundary: HTMLElement) => number;method getParent
getParent: () => any;method getParentSize
getParentSize: () => { width: number; height: number };method getSelfElement
getSelfElement: () => HTMLElement | null;method onDrag
onDrag: (e: RndDragEvent, data: DraggableData) => false | void;method onDragStart
onDragStart: (e: RndDragEvent, data: DraggableData) => void;method onDragStop
onDragStop: (e: RndDragEvent, data: DraggableData) => false | void;method onResize
onResize: (    e: MouseEvent | TouchEvent,    direction: ResizeDirection,    elementRef: HTMLElement,    delta: { height: number; width: number }) => void;method onResizeStart
onResizeStart: (    e: React.MouseEvent<HTMLElement> | React.TouchEvent<HTMLElement>,    dir: ResizeDirection,    elementRef: HTMLElement) => void;method onResizeStop
onResizeStop: (    e: MouseEvent | TouchEvent,    direction: ResizeDirection,    elementRef: HTMLElement,    delta: { height: number; width: number }) => void;method render
render: () => React.JSX.Element;method updateOffsetFromParent
updateOffsetFromParent: () => { top: number; left: number } | undefined;method updatePosition
updatePosition: (position: Position) => void;method updateSize
updateSize: (size: { width: number | string; height: number | string }) => void;Interfaces
interface Props
interface Props {}property allowAnyClick
allowAnyClick?: boolean;property bounds
bounds?: string | Element;property cancel
cancel?: string;property children
children?: React.ReactNode;property className
className?: string;property default
default?: {    x: number;    y: number;} & Size;property disableDragging
disableDragging?: boolean;property dragAxis
dragAxis?: 'x' | 'y' | 'both' | 'none';property dragGrid
dragGrid?: Grid;property dragHandleClassName
dragHandleClassName?: string;property dragPositionOffset
dragPositionOffset?: DraggableProps['positionOffset'];property enableResizing
enableResizing?: ResizeEnable;property enableUserSelectHack
enableUserSelectHack?: boolean;property lockAspectRatio
lockAspectRatio?: boolean | number;property lockAspectRatioExtraHeight
lockAspectRatioExtraHeight?: number;property lockAspectRatioExtraWidth
lockAspectRatioExtraWidth?: number;property maxHeight
maxHeight?: number | string;property maxWidth
maxWidth?: number | string;property minHeight
minHeight?: number | string;property minWidth
minWidth?: number | string;property onDrag
onDrag?: RndDragCallback;property onDragStart
onDragStart?: RndDragCallback;property onDragStop
onDragStop?: RndDragCallback;property onMouseDown
onMouseDown?: (e: MouseEvent) => void;property onMouseUp
onMouseUp?: (e: MouseEvent) => void;property onResize
onResize?: RndResizeCallback;property onResizeStart
onResizeStart?: RndResizeStartCallback;property onResizeStop
onResizeStop?: RndResizeCallback;property position
position?: {    x: number;    y: number;};property resizeGrid
resizeGrid?: Grid;property resizeHandleClasses
resizeHandleClasses?: HandleClasses;property resizeHandleComponent
resizeHandleComponent?: HandleComponent;property resizeHandleStyles
resizeHandleStyles?: HandleStyles;property resizeHandleWrapperClass
resizeHandleWrapperClass?: string;property resizeHandleWrapperStyle
resizeHandleWrapperStyle?: React.CSSProperties;property scale
scale?: number;property size
size?: Size;property style
style?: React.CSSProperties;index signature
[key: string]: any;Type Aliases
type DraggableData
type DraggableData = {    node: HTMLElement;    deltaX: number;    deltaY: number;    lastX: number;    lastY: number;} & Position;type Grid
type Grid = [number, number];type HandleClasses
type HandleClasses = {    bottom?: string;    bottomLeft?: string;    bottomRight?: string;    left?: string;    right?: string;    top?: string;    topLeft?: string;    topRight?: string;};type HandleComponent
type HandleComponent = {    top?: React.ReactElement<any>;    right?: React.ReactElement<any>;    bottom?: React.ReactElement<any>;    left?: React.ReactElement<any>;    topRight?: React.ReactElement<any>;    bottomRight?: React.ReactElement<any>;    bottomLeft?: React.ReactElement<any>;    topLeft?: React.ReactElement<any>;};type HandleStyles
type HandleStyles = {    bottom?: React.CSSProperties;    bottomLeft?: React.CSSProperties;    bottomRight?: React.CSSProperties;    left?: React.CSSProperties;    right?: React.CSSProperties;    top?: React.CSSProperties;    topLeft?: React.CSSProperties;    topRight?: React.CSSProperties;};type Position
type Position = {    x: number;    y: number;};type ResizableDelta
type ResizableDelta = {    width: number;    height: number;};type ResizeEnable
type ResizeEnable =    | {          bottom?: boolean;          bottomLeft?: boolean;          bottomRight?: boolean;          left?: boolean;          right?: boolean;          top?: boolean;          topLeft?: boolean;          topRight?: boolean;      }    | boolean;type RndDragCallback
type RndDragCallback = DraggableEventHandler;type RndDragEvent
type RndDragEvent =    | React.MouseEvent<HTMLElement | SVGElement>    | React.TouchEvent<HTMLElement | SVGElement>    | MouseEvent    | TouchEvent;type RndResizeCallback
type RndResizeCallback = (    e: MouseEvent | TouchEvent,    dir: ResizeDirection,    elementRef: HTMLElement,    delta: ResizableDelta,    position: Position) => void;type RndResizeStartCallback
type RndResizeStartCallback = (    e: React.MouseEvent<HTMLElement> | React.TouchEvent<HTMLElement>,    dir: ResizeDirection,    elementRef: HTMLElement) => void | boolean;Package Files (1)
Dependencies (3)
Dev Dependencies (50)
- @babel/cli
- @babel/core
- @babel/plugin-proposal-class-properties
- @babel/plugin-transform-modules-commonjs
- @babel/preset-react
- @babel/preset-typescript
- @babel/traverse
- @babel/types
- @emotion/core
- @rollup/plugin-babel
- @rollup/plugin-node-resolve
- @storybook/addon-actions
- @storybook/addon-info
- @storybook/addon-links
- @storybook/addon-options
- @storybook/react
- @types/enzyme
- @types/enzyme-adapter-react-16
- @types/node
- @types/react
- @types/react-dom
- @types/sinon
- @types/storybook__addon-actions
- @types/storybook__react
- babel-core
- babel-eslint
- babel-loader
- cpy-cli
- cross-env
- enzyme
- enzyme-adapter-react-16
- gh-pages
- light-ts-loader
- npm-run-all2
- prettier
- react
- react-dom
- react-test-renderer
- rollup
- rollup-plugin-commonjs
- rollup-plugin-node-globals
- rollup-plugin-replace
- rollup-plugin-typescript2
- rollup-watch
- sinon
- tslint
- tslint-eslint-rules
- tslint-plugin-prettier
- tslint-react
- typescript
Peer Dependencies (2)
Badge
To add a badge like this oneto your package's README, use the codes available below.
You may also use Shields.io to create a custom badge linking to https://www.jsdocs.io/package/react-rnd.
- Markdown[](https://www.jsdocs.io/package/react-rnd)
- HTML<a href="https://www.jsdocs.io/package/react-rnd"><img src="https://img.shields.io/badge/jsDocs.io-reference-blue" alt="jsDocs.io"></a>
- Updated .
 Package analyzed in 3134 ms.
- Missing or incorrect documentation? Open an issue for this package.
