Skip to content

Add client-side options support #52

@inkblotty

Description

@inkblotty

Problem

If there are static options passed into the element, the options are deleted on request for filtered options.

Request

Client-side options should be supported and have filtering available. TBD: Do we allow both client-side (such as default options) and server-side options?

Implementation concerns

Accessibility

Ensure that any default / client-side options are announced when the input is focused. screen-reader-announcements.ts can assist with this.

When the options list isn't visible, an aria-describedby should be added to the input pointing to the feedback element. This should only be if the element has client-side options. Remove this aria-describedby when the user interacts with any key, and add it back in when the auto-complete-element is blurred. cc @github/accessibility and @jscholes for reference. "aria-live won't cut it" for this scenario

Developer Notes

There is some initial setup done in autocomplete.ts to detect client-side options, but all of this can be removed / reworked, as long as accessibility considerations are met.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions