React Slidify is a component that transmits position coordinates with callbacks at each step of an object that you can advance by dragging within a field. The component can be use as volume control, music player timeline etc.
Use the package manager yarn or npm to install react-slidify
.
npm i @atayahmet/react-slidify --save
yarn add @atayahmet/react-slidify
import Slidify from '@atayahmet/react-slidify';
<Slidify
width="250px"
height="250px"
points={[
{
x={10}
y={300}
width={20}
height={20}
}
]}
axis="xy"
onSlide={callback}
/>
name | type | default | description |
---|---|---|---|
width | string | 100% | Width of the field. |
height | string | 100% | Height of the field. |
points | IPoint[] | [] | |
multiple | boolean | false | Multiple points. |
movable | boolean | true | The points can move or vice versa. |
axis | string | xy | Available axes. |
defaultBackgroundColorOfPoint | string | red | Default background color of point. |
onStart | onStartHandlerArgs | - | First move event. |
onStop | onStopHandlerArgs | - | Last move event. |
onSlide | onSlideHandlerArgs | - | Active slide event. |
onReach | onReachHandlerArgs | - | Reach point event. |
name | type | default | description |
---|---|---|---|
x | number | - | Left position px value. |
y | number | - | Top position px value. |
width | number | innerWidth | Width of the point in px . |
height | number | innerHeight | Height of the point in px . |
className | string (optional) |
- | Custom class name. |
style | React.CSSProperties (optional) |
- | Css properties. |
children | JSX Element | null | Pass JSX element to points. |
name | type | description |
---|---|---|
x | number | Left position px value. |
y | number | Top position px value. |
width | number | Width of the point in px . |
height | number | Height of the point in px . |
axis | string | Current axis. |
percent | IPercent | X and Y position as percent unit |
name | type | description |
---|---|---|
x | number | Left position percent value. |
y | number | Top position percent value. |
name | arguments | description |
---|---|---|
onStart | onStartHandlerArgs | First move event. |
onStop | onStopHandlerArgs | Last move event. |
onSlide | onSlideHandlerArgs | Active slide event. |
onReach | onReachHandlerArgs | Reach point event. |
(point: IEventPoint, index: number) => any
(point: IEventPoint, index: number) => any
(point: IEventPoint, index: number) => any
(point: IEventPoint, at: ReachPoint, index: number) => any
'start-point' | 'end-point'
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.