The example below loads live from Storybook; open it there to use the controls.
Default
Section titled “Default”The value shows next to the label; the bubble above the thumb appears while dragging and on keyboard focus.
import { Provider, Slider } from '@bigbang/ui';
export default function Default() { return ( <Provider locale="en-GB"> <Slider label="Level" defaultValue={40} description="Drag, or use the arrow keys." className="max-w-sm" /> </Provider> );}A [low, high] value draws two thumbs; minStepsBetweenValues is the smallest gap between them.
import { Provider, Slider } from '@bigbang/ui';
export default function Range() { return ( <Provider locale="en-GB"> <Slider label="Range" defaultValue={[20, 60]} minStepsBetweenValues={5} className="max-w-sm" /> </Provider> );}Format
Section titled “Format”format takes Intl.NumberFormat options; the value is written and read in the Provider language.
import { Provider, Slider } from '@bigbang/ui';
export default function Formatted() { return ( <Provider locale="en-GB"> <div className="flex max-w-sm flex-col gap-xl"> <Slider label="Level" defaultValue={0.25} min={0} max={1} step={0.05} format={{ style: 'percent' }} /> <Slider label="Duration" defaultValue={12} min={0} max={30} format={{ style: 'unit', unit: 'day', unitDisplay: 'long' }} /> </div> </Provider> );}marks puts ticks and labels under the track; they are not read by screen readers.
import { Provider, Slider } from '@bigbang/ui';
export default function Marks() { return ( <Provider locale="en-GB"> <Slider label="Level" defaultValue={50} step={25} marks={[{ value: 0, label: 'Low' }, { value: 25 }, { value: 50, label: 'Medium' }, { value: 75 }, { value: 100, label: 'High' }]} className="max-w-sm" /> </Provider> );}Disabled
Section titled “Disabled”The thumb and track fade.
import { Provider, Slider } from '@bigbang/ui';
export default function Disabled() { return ( <Provider locale="en-GB"> <Slider label="Level" defaultValue={40} disabled className="max-w-sm" /> </Provider> );}Light and dark mode
Section titled “Light and dark mode”The filled track takes the primary action colour.
import { Provider, Slider } from '@bigbang/ui';
export default function Range() { return ( <Provider locale="en-GB"> <Slider label="Range" defaultValue={[20, 60]} minStepsBetweenValues={5} className="max-w-sm" /> </Provider> );}