Skip to content

Commit 317ffdf

Browse files
ykadoshaarush130
authored andcommitted
feat: support all native div props on Scrollable
Fixes #25 - Spread native div props onto outer div element - Support className prop merged with 'scrollbar' class
2 parents 501313e + e3a4ff1 commit 317ffdf

1 file changed

Lines changed: 9 additions & 9 deletions

File tree

src/components/Scrollable/Scrollable.jsx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -173,21 +173,21 @@ export default class Scrollable extends React.PureComponent {
173173
}
174174

175175
render() {
176-
const {children, style, element} = this.props;
176+
// eslint-disable-next-line no-unused-vars
177+
const {children, style, element, onScroll, onUpdate, scrollOnDOMChange, cssVarsOnTracks, className, ...rest} = this.props;
177178
const vsb = findChildByType(children, VerticalScrollbarPlaceholder);
178179
const hsb = findChildByType(children, HorizontalScrollbarPlaceholder);
179180
const content = React.Children.toArray(children).filter(child => ![VerticalScrollbarPlaceholder, HorizontalScrollbarPlaceholder].includes(child.type));
180181

181182
return (
182-
<ResizeObserver onResize={this.updateScrollbars}>
183-
<div className='scrollbar' style={style} onTransitionEnd={this.handleOnTransitionEnd}>
183+
<Context.Provider value={this.state}>
184+
<div {...rest} className={classNames('scrollbar', className)} style={style} onTransitionEnd={this.handleOnTransitionEnd}>
184185
{React.cloneElement(element, this.getElementProps(), content)}
185-
<Context.Provider value={this.state}>
186-
{vsb ? vsb.props.children : <VerticalScrollbar/>}
187-
{hsb ? hsb.props.children : <HorizontalScrollbar/>}
188-
</Context.Provider>
186+
<ResizeObserver onResize={this.updateScrollbars}/>
187+
{vsb ? vsb.props.children : <VerticalScrollbar/>}
188+
{hsb ? hsb.props.children : <HorizontalScrollbar/>}
189189
</div>
190-
</ResizeObserver>
190+
</Context.Provider>
191191
);
192192
}
193-
}
193+
}

0 commit comments

Comments
 (0)