UNPKG

wix-style-react

Version:
39 lines (36 loc) 1.11 kB
import React, { PureComponent } from 'react'; import { SidebarContext, SidebarItemContext } from '../SidebarAPI'; export class SidebarItem extends PureComponent { displayName = 'SidebarItem'; render() { const { dataHook } = this.props; return ( <SidebarContext.Consumer> {context => ( <div data-hook={dataHook} onClick={e => { if (!this.props.disable) { if (this.props.onClick) { this.props.onClick(this.props.itemKey, e); } if (!e.defaultPrevented) { context.itemClicked(this.props.itemKey); } } }} > <SidebarItemContext.Provider value={{ selected: () => context.getSelectedKey() === this.props.itemKey, getIsMenuExpanded: () => context.getIsMenuExpanded(), }} > {this.props.children} </SidebarItemContext.Provider> </div> )} </SidebarContext.Consumer> ); } }