github / github/auto-complete-element
Add client-side options support
- Ngôn ngữ chính
- JavaScript
- Star
- 407
- Fork
- 57
- Merge trung bình
- 1 ngày 7 giờ
- Pull request đã merge (30 ngày)
- 5
Mô tả
# 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.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu trong autocomplete.ts để xem lại cơ chế phát hiện tùy chọn hiện có ở phía client, sau đó đọc screen-reader-announcements.ts để xem hành vi trợ năng. Theo dõi cách các tùy chọn bị xóa trong các request được lọc và xác định tương tác được hỗ trợ giữa các tùy chọn phía client và phía server. Được xem là hoàn tất khi các tùy chọn phía client vẫn khả dụng, việc lọc hoạt động và hành vi được mô tả đối với focus, bàn phím, blur và aria-describedby được bao quát.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- typescript
- Lĩnh vực
- accessibility, frontend, web-dev
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100