Skip to content

Input.ChoiceSet search/filtering UX (static list of choices) #4713

@productboard-ac

Description

@productboard-ac

Description

image

Schema/Spec

Requirements

  1. Refer to the Fluent UI search control for UX requirements

Open issues

  • Do we support isMultiSelect true? Not for this release, possibly for people picker in the future (see Input.ChoiceSet people style #5525)

  • Decide what the filtering logic is: start of string, anywhere, etc: Match anywhere in the string, matching fluent northstar behavior.

  • Should we just make this the default experience if "style": "compact" and "isMultiSelect": false? No, filtered will be an explicit value for choice set style.

  • Do we want the equivalent of Fluent's Freeform? We want to allow typing of anything (unless we're using an existing control that doesn't support it), but not to return a freeform value. If the value in the control is not one of the choices in the choice set on submit, that will trigger input validation.

  • Do we really mean auto-complete? No, we want fluent northstar search behavior

  • Do we need an error message for no matches? What about localization? No error message for now to avoid solving localization

  • Do we open the drop down autocomplete options on first character? On focus? Try to use first character typed if easily configurable, if not then stick with platform defaults

  • Should validation be case sensitive? No

Examples

{
   "type": "Input.ChoiceSet",
   "label": "Select a user",
   "isMultiSelect": false,
   "choices":  [
      { "title": "User 1", "value": "User1" },
      { "title": "User 2", "value": "User2" }
    ],
   "style": "filtered"
}

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions