Collapsible list: unlabeled accessible button, decorative image

Open Beginner friendly
#2,811 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
68/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Quiet
Tech stack
react, typescript

Research direction

Start at the collapsible list button used in Docs and inspect its current accessibility behavior with a screen reader. Give the button an action-specific accessible name such as “Collapse list” or “Expand list,” hide its decorative image from assistive technologies, and verify both collapsed and expanded states.

Written by the indexing model from the issue text.

Description

a11y
What’s broken?

The button used to collapse/expand a collapsible list does not have an accessible name. The image it contains is not hidden from assistive technologies. As a result, the component is not vocalized and the user cannot identify the presence of a collapsible list in the document.

Impact

A blind user navigating with a screen reader cannot identify the collapsible list button. The component is unreachable: the user does not know that a collapsible list exists in the document and cannot interact with it.

What did you expect to happen?

The button must have an accessible name describing its action (for example "Collapse list" / "Expand list"). The decorative image contained in the button must be hidden from screen readers.

Steps to reproduce

Open a document containing a collapsible list in Docs.
Navigate with a screen reader.
Observe that the collapsible list button is not vocalized.

BlockNote version

0.51.1

Environment

No response

Additional context

No response

Contribution
  • I'd be interested in contributing a fix for this issue
Sponsor
  • I'm a sponsor and would appreciate if you could look into this sooner than later 💖
Dominant language
TypeScript
Stars
10.2k
Forks
772
Avg merge
3d 11h
Merged PRs (30d)
17

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from TypeCellOS/BlockNote

All issues in TypeCellOS/BlockNote

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.