Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multi Select cell support for Data Grid #11257

Closed
martinjlowm opened this issue Nov 30, 2023 · 4 comments
Closed

Multi Select cell support for Data Grid #11257

martinjlowm opened this issue Nov 30, 2023 · 4 comments
Labels
component: data grid This is the name of the generic UI component, not the React module! new feature New feature or request status: waiting for author Issue with insufficient information

Comments

@martinjlowm
Copy link

martinjlowm commented Nov 30, 2023

Summary 💡

Grids/sheets are usually considered two dimensional, but some types of data may have nested structures. Has any thought gone into supporting multi select in the past?

There are some complexity concerns, namely,

  1. Multi select adds a third (nested) dimension
  2. A third dimension requires its own (de-)serialization step not to interfere with the two dimensions of the grid
  3. Value representation. If the table is exported as comma separated data, the selected options cannot be encoded with comma separation

Examples 🌈

Screen.Recording.2023-11-30.at.16.22.46.mov

Motivation 🔦

We recently started the migration of our existing tables from a mix of different frameworks to Data Grid. One cell component we felt was missing was a multi select component to select a number of options. I'm no Excel guru, but it seems Excel does offer multi select with comma separation: https://www.ablebits.com/office-addins-blog/create-multi-select-dropdown-excel/

We're happy to contribute the implementation we have so far (the Storybook recording above). It's mostly inspired by the single select cell.

Search keywords: datagrid cell component multi select

@martinjlowm martinjlowm added the status: waiting for maintainer These issues haven't been looked at yet by a maintainer label Nov 30, 2023
@michelengelen
Copy link
Member

Hi @martinjlowm ... IMO the solution you have there is looking great. Nice work!

@cherniavskii should we use this as inspiration for a new recipe, or should we provide a built-in solution? (it seems @martinjlowm has a working solution and offered to contribute this, right?)

@michelengelen michelengelen added component: data grid This is the name of the generic UI component, not the React module! new feature New feature or request labels Dec 4, 2023
@cherniavskii
Copy link
Member

There's an issue for it already: #4410
There was also a PR #8099. Unfortunately, we didn't manage to merge it.
Would you like to pick it up?

@cherniavskii cherniavskii added status: waiting for author Issue with insufficient information and removed status: waiting for maintainer These issues haven't been looked at yet by a maintainer labels Dec 4, 2023
@martinjlowm
Copy link
Author

Interesting! Sure. Strangely enough I didn't find any of those two by searching for just "multi" 😅. I can try to merge what I have against that PR and see where that brings me.

@github-actions github-actions bot added status: waiting for maintainer These issues haven't been looked at yet by a maintainer and removed status: waiting for author Issue with insufficient information labels Dec 4, 2023
@michelengelen michelengelen added status: waiting for author Issue with insufficient information and removed status: waiting for maintainer These issues haven't been looked at yet by a maintainer labels Dec 6, 2023
Copy link

The issue has been inactive for 7 days and has been automatically closed. If you think that it has been incorrectly closed, please reopen it and provide missing information (if any) or continue the last discussion.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
component: data grid This is the name of the generic UI component, not the React module! new feature New feature or request status: waiting for author Issue with insufficient information
Projects
None yet
Development

No branches or pull requests

3 participants