diff --git a/app/javascript/gabsocial/components/sidebar_menu.js b/app/javascript/gabsocial/components/sidebar_menu.js index 370c85c4..d280164e 100644 --- a/app/javascript/gabsocial/components/sidebar_menu.js +++ b/app/javascript/gabsocial/components/sidebar_menu.js @@ -29,6 +29,9 @@ const messages = defineMessages({ lists: { id: 'column.lists', defaultMessage: 'Lists', }, apps: { id: 'tabs_bar.apps', defaultMessage: 'Apps' }, news: { id: 'tabs_bar.news', defaultMessage: 'News' }, + more: { id: 'sidebar.more', defaultMessage: 'More' }, + partners: { id: 'promo.partners', defaultMessage: 'Affiliate Partners' }, + store: { id: 'promo.store', defaultMessage: 'Store' }, }) const mapStateToProps = state => { @@ -57,6 +60,10 @@ class SidebarMenu extends ImmutablePureComponent { onClose: PropTypes.func.isRequired, }; + state = { + moreOpen: false, + } + componentDidUpdate () { if (!me) return; @@ -67,8 +74,22 @@ class SidebarMenu extends ImmutablePureComponent { } } + toggleMore = () => { + this.setState({ + moreOpen: !this.state.moreOpen + }); + } + + handleSidebarClose = () => { + this.props.onClose(); + this.setState({ + moreOpen: false, + }); + } + render () { - const { sidebarOpen, onClose, intl, account } = this.props; + const { sidebarOpen, intl, account } = this.props; + const { moreOpen } = this.state; if (!me || !account) return null; @@ -78,21 +99,24 @@ class SidebarMenu extends ImmutablePureComponent { 'sidebar-menu__root--visible': sidebarOpen, }); + const moreIcon = moreOpen ? 'minus' : 'plus'; + const moreContainerStyle = { display: moreOpen ? 'block' : 'none' }; + return (