createSlider

function

createSlider(props?): SliderWidget

Create a Slider with given config props

Parameters

props?: PropsConfig<SliderProps>

Returns

SliderWidget

a SliderWidget


DefaultSlotHandle

function

DefaultSlotHandle(slotContext): Element

Parameters

slotContext: SliderSlotHandleContext

Returns

Element


DefaultSlotStructure

function

DefaultSlotStructure(slotContext): Element

Parameters

slotContext: SliderContext

Returns

Element


getSliderDefaultConfig

function

getSliderDefaultConfig(): SliderProps

Retrieve a shallow copy of the default Slider config

Returns

SliderProps

the default Slider config


HandleDisplayOptions

interface
Properties
left

left: null | number

Left offset of the handle in %


top

top: null | number

Top offset of the handle in %


ProgressDisplayOptions

interface
Properties
bottom

bottom: null | number

Bottom offset of the progress in %


height

height: number

Height of hte progress in %


left

left: null | number

Right offset of the progress in %


right

right: null | number

Left offset of the progress in %


top

top: null | number

Top offset of the progress in %


width

width: number

Width of the progress in %


Slider

function

Slider(props): Element

Parameters

props: PropsWithChildren<Partial<SliderProps>>

Returns

Element


SliderActions

interface
Methods
click

click(event): void

Method to handle click on the slider

Parameters

event: MouseEvent

mouse event

Returns

void


keydown

keydown(event, handleNumber): void

Method to process the keyboard event

Parameters

event: KeyboardEvent

keyboard event object

handleNumber: number

id of the modified handle

Returns

void


mouseDown

mouseDown(event, handleId): void

Method describing the behavior of the slider handle on mouse down event

Parameters

event: MouseEvent

mouse event

handleId: number

numeric id of the handle

Returns

void


touchStart

touchStart(event, handleId): void

Method describing the behavior of the slider handle on touch start event

Parameters

event: TouchEvent

touch event

handleId: number

number id of the handle

Returns

void


SliderApi

interface

SliderContext

type alias

SliderContext: WidgetSlotContext<SliderWidget>


SliderDirectives

interface
Properties
clickableAreaDirective

clickableAreaDirective: Directive

Directive to apply to the slider clickable area, to directly move the handle to a given specific position


combinedHandleLabelDisplayDirective

combinedHandleLabelDisplayDirective: Directive

Directive to apply to the handle when combined label display is active


handleDirective

handleDirective: Directive<object>

Directive to apply to the slider handle if any

Type declaration
item

item: SliderHandle


handleLabelDisplayDirective

handleLabelDisplayDirective: Directive<object>

Directive to apply to the handle when combined label display is not active

Type declaration
index

index: number


maxLabelDirective

maxLabelDirective: Directive

Directive to get the maxLabel elementRef


minLabelDirective

minLabelDirective: Directive

Directive to get the minLabel elementRef


progressDisplayDirective

progressDisplayDirective: Directive<object>

Directive used to style the progress display for each handle

Type declaration
option

option: ProgressDisplayOptions


sliderDirective

sliderDirective: Directive

Directive to get the slider component elementRef


SliderHandle

interface
Properties
ariaLabel

ariaLabel: string

ariaLabel of the handle


ariaValueText

ariaValueText: string

ariaValueText of the handle


id

id: number

Handle id


value

value: number

Value of the handle


SliderProps

interface
Properties
ariaLabelHandle

ariaLabelHandle: (value, sortedIndex, index) => string

Return the value for the 'aria-label' attribute for the handle

Parameters

value: number

value of the handle

sortedIndex: number

index of the handle in the sorted list

index: number

index of the handle in the original list

Returns

string

Default Value
(value: number) => '' + value

ariaValueText

ariaValueText: (value, sortedIndex, index) => string

Return the value for the 'aria-valuetext' attribute for the handle

Parameters

value: number

value of the handle

sortedIndex: number

index of the handle in the sorted list

index: number

index of the handle in the original list

Returns

string

Default Value
(value: number) => '' + value

className

className: string

CSS classes to be applied on the widget main container

Default Value

''


disabled

disabled: boolean

If true slider value cannot be changed and the slider cannot be focused

Default Value

false


handle

handle: SlotContent<SliderSlotHandleContext>

Slot to change the handlers


label

label: SlotContent<SliderSlotLabelContext>

Slot to change the default labels of the slider

Default Value
({value}: SliderSlotLabelContext) => '' + value

max

max: number

Maximum value that can be assigned to the slider

Default Value

100


min

min: number

Minimum value that can be assigned to the slider

Default Value

0


onValuesChange

onValuesChange: (values) => void

An event emitted when slider values are changed

Event payload equals to the updated slider values

Parameters

values: number[]

Returns

void

Default Value
() => {}

readonly

readonly: boolean

If true slider value cannot be changed but the slider is still focusable

Default Value

false


rtl

rtl: boolean

It true slider display is inversed

Default Value

false


showMinMaxLabels

showMinMaxLabels: boolean

If true the min and max labels are displayed on the slider

Default Value

true


showValueLabels

showValueLabels: boolean

If true the value labels are displayed on the slider

Default Value

true


stepSize

stepSize: number

Unit value between slider steps

Default Value

1


structure

structure: SlotContent<SliderContext>

Slot to change the default display of the slider


values

values: number[]

Current slider values

Default Value

[0]


vertical

vertical: boolean

If true is vertically positioned otherwise it is horizontal

Default Value

false


SliderSlotHandleContext

type alias

SliderSlotHandleContext: SliderContext & object

Type declaration
item

item: SliderHandle


SliderSlotLabelContext

type alias

SliderSlotLabelContext: SliderContext & object

Type declaration
value

value: number


SliderState

interface
Properties
className

className: string

CSS classes to be applied on the widget main container

Default Value

''


combinedLabelDisplay

combinedLabelDisplay: boolean

If true, the label when the handles are close is visible


combinedLabelPositionLeft

combinedLabelPositionLeft: number

Combined label left offset in %


combinedLabelPositionTop

combinedLabelPositionTop: number

Combined label top offset in %


disabled

disabled: boolean

If true slider value cannot be changed and the slider cannot be focused

Default Value

false


handle

handle: SlotContent<SliderSlotHandleContext>

Slot to change the handlers


handleDisplayOptions

handleDisplayOptions: HandleDisplayOptions[]

Array of objects representing handle display options


interactive

interactive: boolean

Check if the slider is interactive, meaning it is not disabled or readonly


label

label: SlotContent<SliderSlotLabelContext>

Slot to change the default labels of the slider

Default Value
({value}: SliderSlotLabelContext) => '' + value

max

max: number

Maximum value that can be assigned to the slider

Default Value

100


maxValueLabelDisplay

maxValueLabelDisplay: boolean

If true, the maximum label will be visible


min

min: number

Minimum value that can be assigned to the slider

Default Value

0


minValueLabelDisplay

minValueLabelDisplay: boolean

If true, the minimum label will be visible


progressDisplayOptions

progressDisplayOptions: ProgressDisplayOptions[]

Array of objects representing progress display options


readonly

readonly: boolean

If true slider value cannot be changed but the slider is still focusable

Default Value

false


rtl

rtl: boolean

It true slider display is inversed

Default Value

false


showMinMaxLabels

showMinMaxLabels: boolean

If true the min and max labels are displayed on the slider

Default Value

true


showValueLabels

showValueLabels: boolean

If true the value labels are displayed on the slider

Default Value

true


sortedHandles

sortedHandles: SliderHandle[]

Array of the sorted handles to display


sortedValues

sortedValues: number[]

Sorted slider values


stepSize

stepSize: number

Unit value between slider steps

Default Value

1


structure

structure: SlotContent<SliderContext>

Slot to change the default display of the slider


values

values: number[]

Current slider values

Default Value

[0]


vertical

vertical: boolean

If true is vertically positioned otherwise it is horizontal

Default Value

false


SliderWidget

type alias

SliderWidget: Widget<SliderProps, SliderState, SliderApi, SliderActions, SliderDirectives>