ai / keyux

JS library to improve keyboard UI of web apps
https://ai.github.io/keyux/
MIT License
391 stars 18 forks source link

`menu` → `focus-group` refactoring #9

Closed ai closed 1 month ago

ai commented 6 months ago
dmitry-kurmanov commented 6 months ago

@ai could you please clarify how to run tests in the project?

If I understand it correctly the test command from package.json runs:

But what about the tests themselves?

image

ai commented 6 months ago

test:coverage script is a script of unit tests. It runs better-node-test, which is a wrapper around node --test.

You need to update Node.js (I recommend latest 20.x).

dmitry-kurmanov commented 6 months ago

I think that the issue might be more complex because of various possible item roles:

  1. menu and menubar require menuitem item role - see the w3c example
  2. listbox requires option item role - the w3c example
  3. tablist require tab item role - example

As for toolbar it might be a problem because it can contains different types of items e.g. button, spinbutton, checkbox, radio etc - the toolbar example

I propose to support menubar, listbox, and tablist within this issue and create a separate one for toolbar.

@ai what do you think?

ai commented 6 months ago

Yes, we can do toolbox in a separated PR

dmitry-kurmanov commented 6 months ago

@ai here is my draft PR https://github.com/ai/keyux/pull/16 (without toolbox). Can you please look at it?

I have not added new groups to the doc yet. I need some clarifications. Do we want to add all new supported focus group types to the doc?

upd I found the explanation:

Update docs to explain listbox and tablist support

I will update the PR tomorrow

ai commented 1 month ago

Forgot to close