npm.io
0.1.0 • Published 3 years ago

@urban-ui/slider

Licence
MIT
Version
0.1.0
Deps
2
Size
58 kB
Vulns
0
Weekly
0

@urban-ui/slider

control | slider

npm minzip size License

Styled version of radix-ui/slider

Getting started

pnpm add -S @urban-ui/slider
import * as Slider from '@urban-ui/slider'

export function MyComponent() {
  return (
    <Slider.Root defaultValue={[50]} max={100} step={1} aria-label='Volume'>
      <Slider.Track>
        <Slider.Range />
      </Slider.Track>
      <Slider.Thumb />
    </Slider.Root>
  )
}

Details

Styled wrapper around radix-ui/slider. Components are named the same and will accept the same props.

API

Slider.Root
Prop Type Description
size 'sm' | 'md' | 'lg' Applies the control field token scale. Determines the interactive zone.
width 'normal' | 'full' Defaults to normal
Slider.Track

Size xs is the default and is smaller than the thumb. The other sizes match the control field token scale and will match the thumb size.

Prop Type Description
tone 'primary' | 'critical' | 'neutral' | 'highlight' Defaults to neutral
size 'xs' | 'sm' | 'md' | 'lg' Height of the track. Defaults to xs.
Slider.Range

The range denotes the ranged part of the track, this is usually left-to-right and so the range will typically be on the left.

Defaults to no tone at all.

Prop Type Description
tone 'primary' | 'critical' | 'neutral' | 'highlight' Defaults to neutral
Slider.Thumb

The space prop adds a small external border to the thumb, this will be the current colour and defaults to white. This provides visual separation from the track. If your background is a different colour then use the css prop to define a new colour. Be wary of gradient backgrounds.

Disabled state also applies the same coloured external border.

Prop Type Description
tone 'primary' | 'critical' | 'neutral' | 'highlight' Defaults to neutral
size 'xs' | 'sm' | 'md' | 'lg' Height of the track. Defaults to xs.
type 'clear' Clears styling, useful for icons.
space boolean Defaults to false

Keywords