-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
[DataGrid] Implement multi-column filter #201
Comments
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This issue includes 3 aspects:
For 3., I would vote for going with Airtable's approach. From my perspective, it's the best one seen so far. The filtering UX of https://airtable.com/ The filtering UX of https://stripe.com/ |
+1 for AirTable UX |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I have updated the issue's description with a plan of action. The UX of Retool: |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This is our latest progress on the feature: https://codesandbox.io/s/material-demo-forked-8tryv?file=/index.js. Any early feedback would be appreciated. You can find the underlying pull request at #411 :D |
Really looking forward to this. 🚀 . The current demo looks awesome. Are there any plans to add support for server-side filtering or in other words to expose the selected column filters in a public developer API? I am not sure if that is what you guys mentioned in the issue description with
|
@angelsvirkov I hear two different use cases in your message:
|
If you would like to have a powerful Filter feature stick to what @paillave said. I was about to write in the same idea. |
FWIW I think the global sorting/filtering UI from Airtable/Notion is definitely the right way to go. Super glad to see you are working on it and cannot wait to integrate it in our current product. :) |
@timonbimon this feature is indeed necessary for the grid to be complete. But still, it is according to me unacceptable to show such a complex screen to make a quick filter. I don't see myself selling such a "quick filtering" feature to my clients who are so used to the quick and straightforward excel filtering system. Once again, make common use cases very simple, and leave advanced ones complex. Making a complex screen to ensure that is covers as well what is needed only 5% of time is a big mistake. End users choose a product based on its productivity. It is ludicrous that users spend 95% of their time doing like they need a advanced filter. And still once again, users (and myself) believe that Excel just made it perfect! I would be a pity to change something that already has the approval of (nearly) the entire planet whereas it took 30 years to Excel to reach this level of ergonomic. |
@oliviertassinari the quick filter in #202 has a wide scope and the one in Airtable is just complex from beginning and requires much more clicks and thinking.. Excel like filter is the best sitting in the exact middle. |
maybe one thing to add @HichemDax : in the sandbox linked above you currently open the Airtable-like filtering from the dropdown menu of a single column (but you can then filter on all columns), which definitely seems a little awkward and complex. If I understand step 3 in @oliviertassinari plan of action correctly, the idea is to move that to a global popup (just like it is in Airtable and Notion) which I find very intuitive to use (if you ever used Airtable or Notion before, I would guess you would agree? 😬 maybe not though if you're an avid Excel user 🤷♂️) |
Obviously, guys, we can't satisfy everyone in the approach we take. But we can provide enough flexibility for you to tweak things around and make it the way you like. We are aiming for a plugin-based architecture, easily customizable. ATM, we have a column menu that will be overridable soon, thus, you could provide your own menu and just provide excel-like filters if needed... IMHO, checkboxes are good when there are a limited number of values within a column, an autocomplete text field might be easier for a large set of values, and much faster for processing. With checkboxes, we have to extract all distinct values of each row on a column before rendering the list of values in the filter popup. Thus for 100000 rows, on some old machine, it might not be ideal to run that process on the client... That being said, I'm not against providing an excel-like type of filter, that could be attached to certain columns. |
@dtassone ok, I will. |
The demos look awesome, good work! Will it be possible to add a locale file to translate those filters? I just purchased a license, would need to translate it to portuguese tho. Thank you. |
@AleKrabbe We plan to solve this problem in #196 during the current sprint. Would the proposed solution cover your use case? |
Yes, that would solve the problem, thank you. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This adds the specific column from which the filter is opened to the filter list. It's a shortcut of sorts, over the alternative of having a single filter option on the table, and then selecting the column to apply the filter to. One alternative would be to scope filters selected at the column to that column (how Excel works). The disadvantage of this approach is that with large numbers of columns, it can be difficult to see which columns have filters applied, and these have to be added / cleared one-at-a-time. The current approach is the best of both, albeit with a UX trade-off caused by the slight cognitive dissonance of a multi-column filter apparently being attached to individual columns. |
Here's Excel for Mac, which has a slightly simpler UI than the one in @paillave's screenshot, (note the search box for filtering the values): As you suggest, a multi-select autocomplete with the condition (currently labelled "operator") being "One of" would be perfect. Incidentally, I just tried it in Excel with a spreadsheet containing ~50K rows, and 32 columns, and displaying the filter was instant, on a 6 year old laptop. (Yes, in memory, with compiled code, but just for reference.) |
Yes, I think once there is a UI element for the entire filter list (independent of the column) then that shortcut makes perfect sense and creates no cognitive dissonance! 🤗 Btw here is the link to a live Airtable example I have looked at multiple times while trying to shape a search/sort/filter-feature in the last weeks (we ended up deciding to wait until you guys release this and then build on top of DataGrid 🙌). |
Oh, interesting: the name of the column menu option "Add filter" (rather than "Filter"), combined with the presence of the table-level filter icon, makes all the difference. cc @dtassone |
@oliviertassinari is this enhancement released? |
@oliviertassinari I see so this is only available in |
Plan of action
Benchmark
Screenshots
The text was updated successfully, but these errors were encountered: