0.4.1 • Published 9 years ago

wsdm-range-slider v0.4.1

Weekly downloads
1
License
BSD-3-Clause
Repository
gitlab
Last release
9 years ago

wsdm-range-slider

NOTE: In active development

Responsive range slider component for d3 charts, based on d3 brush. Has very simple usage, as demonstrated in the example.

Methods

Slider exposes 3 methods:

MethodArgumentsDescription
create(holder::DOMNode, config::Object)holder is required, inside it the slider is created with the optional config
update(config::Object)Updates the slider with the new config
destroy()Destroys the slider, cleans up the DOM and removes the resize even handler

As you can see these 3 methods match nicely lifecycle methods from React, which makes it easy to integrate it into a React component:

  • componentDidMount => slider.create
  • componentDidUpdate => slider.update
  • componentWillUnmount => slider.destroy

Options

PropertyTypeDefaultDescription
domainarray[ 0, 1 ]The whole spectrum from which user can create the range selection
rangearrayundefinedThe range to which the slider should be set
marginobject{ top: 0, right: 5, bottom: 0, left: 5 }Spacing around the slider. Default setting gives just enough space to render the handles and outside ticks.
showTipsbooleanfalseSet to true if you want tiny tooltips with the values that follow the handles
tipsPositionstring"bottom"Determines where the tooltips are placed relative to the handles, if shown. Two options are
possible "top" and "bottom"
onChangefunctionundefinedCallback firing when user is interacting with the slider, has the current range array as the parameter.
valueFormatfunctionv => vBy default no formatting is applied to the values produced by the slider. Use it for example if you want to have nicely rounded values, e.g. by passing Math.round to it.
tipsFormatfunctionv => niceNum(v)Used to display format the values displayed in the tooltips, if shown. By default it will use internal method to produce nicely formatted numbers (1000000 => 1m)
tickFormatfunctionv => niceNum(v)Passed to d3 axis tick formatting. By default it will use internal method to produce nicely formatted numbers (1000000 => 1m). Simple trick to remove the ticks completely () => ""

Run development server with:

$ npm i
$ npm start

Run tests with:

$ npm test

Build with:

$ npm run build

Example styling is included in example/slider.css

Lapidus Interactive

0.4.1

9 years ago

0.4.0

9 years ago

0.3.0

9 years ago

0.2.1

9 years ago

0.2.0

9 years ago

0.1.0

9 years ago

0.0.1

9 years ago