carbon-design-system / ibm-products

A Carbon-powered React component library for IBM Products
https://ibm-products.carbondesignsystem.com
Apache License 2.0
98 stars 138 forks source link

Add custom view all behavior in Datagrid filter panel #4675

Closed Laura-Marshall closed 2 days ago

Laura-Marshall commented 7 months ago

What will this achieve?

Enhancement, based on existing design guidance.

How will success be measured?

Ability for teams to customise the behaviour of view all links, specifically to allow for tearsheet support as per guidance. Guidance specifies Add and Select but I think it should support a range of behaviours. (We have a product example where it launches a narrow tearsheet as Add and select felt a bit too heavy weight for our use case).

My dev also mentioned the filter tag was not achievable in the current implementation.

Additional information

Supporting view all links, as per 9.

image

Filter tag example.

image

Tearsheet support. It does specify following add and select, but I think that should be up to the design team.

image

The design proposed for our product (App Connect SaaS) as runtime number will be determined by the user, but we don't expect a super high number such as 200+ as shown in the add and select example.

image
aubrey-oneal commented 5 months ago

Storybook link for this component

@Laura-Marshall is it fair to say that your request for a search option in a narrow tear sheet?

Next steps:

matthewgallo commented 5 months ago

We understand your request @Laura-Marshall, until we can have more design review on this we'll keep this in our icebox. Thanks!

ljcarot commented 2 days ago

We've been investigating TanStack Table, a third-party, open-source offering, which provides extensive data table capabilities surpassing what our Carbon Datagrid offers. It provides much more flexibility and customization. TanStack Table is headless which means it can easily be added alongside Datagrid component in your product or application. The benefits of more flexibility for product teams and less maintenance for Carbon makes it a win win. Lastly, it is available in multiple frameworks including React and Web Component so it provides an option to non-React product teams.

For these reasons, we have decided to transition from building our own custom table component to using an example-based approach with TanStack Table. Datagrid will still exist in our library for existing teams but we are announcing the deprecation* of the Datagrid component in v2.54.0 release so teams can begin to work through the transition. Details about how to use both Datagrid and TanStack together can be found here.

*Deprecation means that no new features will be added however sev 1 and sev 2 bugs will be supported.