Package Exports
- @spectrum-web-components/slider
- @spectrum-web-components/slider/custom-elements.json
- @spectrum-web-components/slider/package.json
- @spectrum-web-components/slider/sp-slider
- @spectrum-web-components/slider/sp-slider.js
- @spectrum-web-components/slider/src/Slider.d.ts
- @spectrum-web-components/slider/src/Slider.js
- @spectrum-web-components/slider/src/Slider.js.map
- @spectrum-web-components/slider/src/Slider.ts
- @spectrum-web-components/slider/src/index.d.ts
- @spectrum-web-components/slider/src/index.js
- @spectrum-web-components/slider/src/index.js.map
- @spectrum-web-components/slider/src/index.ts
- @spectrum-web-components/slider/src/slider.css
- @spectrum-web-components/slider/src/slider.css.d.ts
- @spectrum-web-components/slider/src/slider.css.js
- @spectrum-web-components/slider/src/slider.css.js.map
- @spectrum-web-components/slider/src/slider.css.ts
- @spectrum-web-components/slider/src/spectrum-config.js
- @spectrum-web-components/slider/src/spectrum-slider.css
- @spectrum-web-components/slider/src/spectrum-slider.css.d.ts
- @spectrum-web-components/slider/src/spectrum-slider.css.js
- @spectrum-web-components/slider/src/spectrum-slider.css.js.map
- @spectrum-web-components/slider/src/spectrum-slider.css.ts
- @spectrum-web-components/slider/src/spectrum-vars.json
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@spectrum-web-components/slider) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Description
<sp-slider> allows users to quickly select a value within a range. They should be used when the upper and lower bounds to the range are invariable.
Usage
yarn add @spectrum-web-components/sliderImport the side effectful registration of <sp-slider> via:
import '@spectrum-web-components/slider/sp-slider.js';When looking to leverage the Slider base class as a type and/or for extension purposes, do so via:
import { Slider } from '@spectrum-web-components/slider';Variants
Standard
<sp-slider label="Slider Label"></sp-slider>
<sp-slider label="Slider Label - Disabled" disabled></sp-slider>Filled
<sp-slider label="Slider Label" variant="filled"></sp-slider>
<sp-slider
label="Slider Label - Disabled"
variant="filled"
disabled
></sp-slider>Tick
<sp-slider label="Slider Label" variant="tick" tick-step="5"></sp-slider>
<sp-slider
label="Slider Label - Disabled"
variant="tick"
tick-step="5"
disabled
></sp-slider>Tick with Labels
<sp-slider
label="Slider Label"
variant="tick"
tick-step="5"
tick-labels
></sp-slider>
<sp-slider
label="Slider Label - Disabled"
variant="tick"
tick-step="5"
tick-labels
disabled
></sp-slider>Ramp
<sp-slider label="Slider Label" variant="ramp"></sp-slider>
<sp-slider label="Slider Label - Disabled" variant="ramp" disabled></sp-slider>Events
Like the <input type="range"> element after which the <sp-slider> is fashioned it will dispatch input events in a stream culminating with a change event (representing the final comit of the value to the element) once the user has discontinued with the element. Both other these events can access the value of their dispatching target via event.target.value. In this way a steaming listener patters similar to the following can prove useful:
const slider = document.querySelector('sp-slider');
const endListener = ({ target }) => {
target.addEventListener('input', startListener);
target.removeEventListener('input', streamListener);
target.removeEventListener('change', endListener);
console.log(target.value);
};
const streamListener = ({ target }) => {
console.log(target.value);
};
const startListener = ({ target }) => {
target.removeEventListener('input', startListener);
target.addEventListener('input', streamListener);
target.addEventListener('change', endListener);
console.log(target.value);
};
slider.addEventListener('input', startListener);