Skip to content

Simple Combo

Stefan Ivanov edited this page Oct 26, 2021 · 28 revisions

Simple Combo Specification

Contents

  1. Overview
  2. User Stories
  3. Test Scenarios
  4. Functionality
  5. ARIA support
  6. Assumptions and Limitations
  7. References

Owned by

PwnJS

Boris Penkov

Stefan Ivanov

Requires approval from

  • Nikolay Alipiev | Date:
  • Simeon Simeonov | Date:

Signed off by

  • Konstantin Dinev | Date:
  • Damyam Petev | Date:

Revision History

Version User Date Notes
0.1 Boris Penkov Oct 19, 2021 Initial Draft

Objectives

The igx-simple-combo is a modification of the igx-combo component that allows single selection and has the appropriate UI and behavior for that. It inherits all the igx-combo API.

Dropdown

Check igxCombo spec for behavior and API that will be reused by the igx-simple-combo. This document will only point to the differences in the behavior, UI, and API between the igx-simple-combo and the igx-combo.

Acceptance criteria

Must-have before we can consider the feature a sprint candidate

  1. The simple combo should allow the user to fill a form field by selecting a single value for it.
  2. The simple combo should allow typing in the input to filter the dropdown list.
  3. The simple combo should allow users to add custom values and select them.
  4. The simple combo should support keyboard navigation.
  5. The simple combo should support templating for its input and dropdown items.
  6. The simple combo should support the three display densities.
  7. The simple combo should be themeable.
  8. The simple combo should work with form validation rules.

Developer stories:

  • Story 1: As a developer, I want the combo to filter the list of values according to what the user types in the input out of the box.

  • Story 2: As a developer, I want to combine combos in a cascading scenario, so that I am able to fill the next one values with relevant content to the selection made in the current one e.g. cities only in that particular US state.

  • Story 3: As a developer, I want the combo to style along with the other components so that I can easily change the theme of my whole application.

End-user stories:

  • Story 1: As an end-user, I want to type in the input, so that I can search for the value I want to select (i.e. no disabled input and no second input for search in the dropdown)
  • Story 2: As an end-user, I want to clear the value typed in the input so that I can revert the list of values in the dropdown to show all possible values.
  • Story 3: As an end-user, I want to clear my selection, so that the combo is in an empty/unselected state.
  • Story 4: As an end-user, I want to open the dropdown by clicking the dropdown icon, so that I can select a value.
  • Story 5: As an end-user, I want to open the dropdown by starting to type when the input is focused so that I can select a value.
  • Story 6: As an end-user, I want to use the keyboard to navigate and select values, so that I can save time when filling forms.
  • Story 7: As an end-user, I want to click a value, so that I can select it and close the dropdown to continue with the rest of the form.

The simple combo should look and feel exactly as the igx-combo so that when used together in a form they behave identically. The simple combo uses the value in its input field as the user types to search across all bound values and return matching ones, unless such are not existing when it is possible to add the value in the input as a selectable value in the list of items (when the property allows for this). The dropdown shows just a list of items that is scrollable when items exceed dropdown height and selection is singular i.e. if A is selected and I choose to select B, that also deselects A (there are no checkboxes in the list item template by default).

3.1. End-User Experience ** End-to-end user experience that represents the topic overview sampleprototype

3.2. Developer Experience

3.3. Globalization/Localization

Describe any special localization requirements such as the number of localizable strings, regional formats

3.4. Keyboard Navigation

Keys Description
Enter Selects the focused value and closes the dropdown
Enter While the user is typing in the input selects the first item in the list
Space Selects the focused value in the dropdown without closing it
Clone this wiki locally