iTwin / appui

Monorepo for iTwin.js AppUi
MIT License
8 stars 2 forks source link

Add classname to Timeline component's track container #947

Closed Modeeeeeee closed 1 month ago

Modeeeeeee commented 1 month ago

Is your feature request related to a problem? Please describe.

We are working with the TimelineComponent provided by AppUi which uses the iTwinUi Slider component. The track with it's touch area is in a container that changes it's name based on the iTwinUi version used. Each time we update the version of iTwinUi, the className of that track container changes and we usually are introduced with a regression because the css selector used to be something like _iui3-slider instead of _iui3131-slider

Describe the Solution you'd like

The best solution would be simply to add classname to that container in the Scrubber.tsx class, simply passing trackContainerProps : {className : "slider-container"} or any other name

Describe alternatives you've considered

Only other alternative I considered was to request iTwinUi for this change, but as it is a component library that let's you to modify it's behaviour I thought that contacting AppUi was the best bet

Additional context

No response

ignas-k commented 1 month ago

You should never target classNames of other packages because as evident here they can always change and you can't really keep track of it. We will add a new prop to TimelineComponent so you can pass your own trackContainerProps.

ignas-k commented 1 month ago

I added a trackContainerProps property to the TimelineComponent. It is passed to iTwinUI Slider so you should define your own className and pass it with that property.

Will be released in AppUI 4.16.0.

Modeeeeeee commented 1 month ago

@ignas-k Thank you really much. When is the estimated release date of 4.16.0 ?

ignas-k commented 1 month ago

We are planning on releasing this week.