Resizable dockable react component
npm install react-dockResizable dockable react component.
#### Demo
http://alexkuz.github.io/react-dock/demo/
#### Install
```
$ npm i -S react-dock
#### Example
`jsx`
render() {
return (
{/ you can pass a function as a child here /}
this.setState({ isVisible: !this.state.isVisible })}>X
);
}
#### Dock Props
| Prop Name | Description |
| --------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| position | Side to dock (left, right, top or bottom). Default is left. |true
| fluid | If , resize dock proportionally on window resize. |position
| size | Size of dock panel (width or height, depending on ). If this prop is set, Dock is considered as a controlled component, so you need to use onSizeChange to track dock resizing. Value is a fraction of window width/height, if fluid is true, or pixels otherwise |Dock
| defaultSize | Default size of dock panel (used for uncontrolled component) |true
| isVisible | If , dock is visible |none
| dimMode | If - content is not dimmed, if transparent - pointer events are disabled (so you can click through it), if opaque - click on dim area closes the dock. Default is opaque |Dock
| duration | Animation duration. Should be synced with transition animation in style properties |
| dimStyle | Style for dim area |
| dockStyle | Style for dock |
| zIndex | Z-index for wrapper |
| onVisibleChange | Fires when wants to change isVisible (when opaque dim is clicked, in particular) |Dock
| onSizeChange | Fires when wants to change size |{ position, isResizing, size, isVisible }` |
| children | Dock content - react elements or function that returns an element. Function receives an object with these state values: