spectrum-web-components icon indicating copy to clipboard operation
spectrum-web-components copied to clipboard

[Feat]: Table Phase 2

Open Westbrook opened this issue 2 years ago • 3 comments

Code of conduct

  • [X] I agree to follow this project's code of conduct.

Impacted component(s)

Table

Description of the requested feature

  • [x] clarify "Selection" documentation by removing the non-selectable table from that section
  • [ ] add Shift + Click selection to add "many" items at once
    • review the keyboard accessible equivalent to this in Tree View
  • [x] review scroll stopping experienced in https://github.com/adobe/spectrum-web-components/pull/2365#issuecomment-1161836202 likely related to a bug specifically in Chrome 102
  • [x] correct the item shape in the Virtualized demos
  • [ ] review keyboard navigation technique and whether we want to use a Roving Tab index or something else...
  • [x] surface table-elements.js export
  • [ ] document drag and drop options
  • [ ] better support for non-virtual rows across the lifecycle of a Table (adding/removing rows, etc)
  • [ ] better documentation around sorting interface

Mockups or screenshots

No response

Implementation notes or ideas

No response

Westbrook avatar Jul 27 '22 16:07 Westbrook

Looks good! could you tlel me more about the table-elements.js export?

najikahalsema avatar Jul 27 '22 21:07 najikahalsema

Currently to build a table you need to import all of these things:

import '@spectrum-web-components/table/sp-table.js';
import '@spectrum-web-components/table/sp-table-body.js';
import '@spectrum-web-components/table/sp-table-cell.js';
import '@spectrum-web-components/table/sp-table-checkbox-cell.js';
import '@spectrum-web-components/table/sp-table-head.js';
import '@spectrum-web-components/table/sp-table-head-cell.js';
import '@spectrum-web-components/table/sp-table-row.js';

So many imports are easy to mess up. I think we should export a helper file that registers all of those to simplify consumption by client developers.

import '@spectrum-web-components/table/table-elements.js';

Westbrook avatar Jul 27 '22 21:07 Westbrook

Also add the @spectrum-web-components/table to the index.d.ts?

SavoInfostream avatar Feb 13 '23 17:02 SavoInfostream