Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Range slider component #220

Closed
1 of 9 tasks
ghost opened this issue Aug 15, 2019 · 3 comments
Closed
1 of 9 tasks

Range slider component #220

ghost opened this issue Aug 15, 2019 · 3 comments
Assignees
Labels
Type: Enhancement New feature or request

Comments

@ghost
Copy link

ghost commented Aug 15, 2019

Description

A range slider is an interactive component that allows the user to move a 'handle' to select a single value or range.

Component classification

Is this component an atom, molecule or organism?

  • Atom
  • Molecule
  • Organism

Details / user needs

Range selectors are a highly visual way for users to make a selection from a small number of options.

The ranger slider should have the ability to add a descriptive label and a value label, where the value is the current position of the slider handle.

Range selectors are not suitable for large numbers of options. This should be clearly documented.

Variations

  • Vertical and horizontal orientations.
  • Single value. This has one handle that the user can move.
  • Range. This has two handles that the user can move to select a range.

Definition of done

  • The Sketch file is updated with the component
  • There are screenshots of all component variations in this ticket
  • All states are included if applicable (default, hover, active, focus)
  • A design documentation PR is linked from this ticket
  • All questions laid out in this ticket have been resolved
  • A pull request for a component must contain a fully tested, documented and finished component in a state it can be shared with partner developers
@hxltrhuxze
Copy link
Contributor

hxltrhuxze commented Sep 23, 2019

Range Slider

The Range Slider allows the user to pick a value from a predefined range. It comes in 4 distinct forms:

  1. Single Handle
    The Single Handle is a slider that can be moved to any value in a range.

  2. Dual Handle
    The Dual Handle allows the user to set a min and max value for a range.

  3. Single Stepped
    The Single Stepped slider sets predetermined values that the user can set. When moving the handles, they will snap to each point.

  4. Dual Stepped
    The Dual stepped works like the Dual Handle, except it can only be moved to predetermined values.

Screenshot 2019-09-23 at 13 26 23

The Slider can accept an icon either side of it to give content to the value being changed.

States

The Range Slider Handles have two states - default and active. When being dragged, the Handle has a light blue border that expands out behind it. The current value of the slider is also displayed above the handle whilst active.

Abstract Link

https://share.goabstract.com/5f8a9ab2-04c2-4c67-b3f1-213d71dab6ab?sha=74525fb118324de4b30f5fb0cbeb3b2b11476ced

Comments

  • Can I have a use case for a vertical slider? I can't think of a use case where this would be appropriate. The only one that comes to mind is a vertical zoom slider, like the ones that appear on maps. However this would be a separate component specifically for maps as we a) don't know what the mapping software we're going to use supplies out of the box, and b) these components aren't suited for backgrounds that aren't a flat white colour. We'll have to rethink the design for maps.

@xdobtqletrmn
Copy link

  • In the original issue, we mention the types of labels it should have (descriptive and value(s)). Where would the descriptive label appear? Or can it be in a number of different positions (below || above || left || right of the component)? When it comes to the docs and sketch/abstract, that'd be useful to show. Assuming I've understood what you mean by 'descriptive' label.

  • Should we also acknowledge the min and max labels for the slider? You've used dark and light icons in your example? I assume they are things we're expecting the user (dev/designer) to specify. Do they always need to be icons or can they be text too?

Your Q about vertical: we should include vertical in the designs (i.e. not rule it out), even if we can't think of any specific examples. It'd be good to get some user feedback on vertical and horizontal - it might be that RN users prefer one due to how something else is presented to them (either in existing apps or commonly used hardware)?

@ghost ghost added the Ex:FB label Oct 18, 2019
@xdobtqletrmn xdobtqletrmn moved this from To Do to Sprint Backlog in Design System Tactical Board Oct 23, 2019
@m7kvqbe1 m7kvqbe1 moved this from Sprint Backlog to Doing in Design System Tactical Board Oct 26, 2019
@m7kvqbe1 m7kvqbe1 changed the title Range selector component Range slider component Oct 29, 2019
@m7kvqbe1 m7kvqbe1 mentioned this issue Oct 30, 2019
9 tasks
@m7kvqbe1 m7kvqbe1 moved this from Doing to Needs Review in Design System Tactical Board Nov 6, 2019
@m7kvqbe1
Copy link
Member

m7kvqbe1 commented Nov 7, 2019

This is now just awaiting design documentation.

@m7kvqbe1 m7kvqbe1 moved this from Needs Review to Done in Design System Tactical Board Nov 13, 2019
@xdobtqletrmn xdobtqletrmn moved this from Done to Doing in Design System Tactical Board Nov 19, 2019
@m7kvqbe1 m7kvqbe1 moved this from Doing to Done in Design System Tactical Board Nov 19, 2019
@elglup elglup added the Type: Enhancement New feature or request label Mar 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

4 participants