_ = require 'underscore' React = require 'react' {OutlineView, ScrollRegion, Flexbox} = require 'nylas-component-kit' AccountSwitcher = require './account-switcher' SidebarStore = require '../sidebar-store' class AccountSidebar extends React.Component @displayName: 'AccountSidebar' @containerRequired: false @containerStyles: minWidth: 165 maxWidth: 210 constructor: (@props) -> @state = @_getStateFromStores() componentDidMount: => @unsubscribers = [] @unsubscribers.push SidebarStore.listen @_onStoreChange componentWillUnmount: => unsubscribe() for unsubscribe in @unsubscribers _onStoreChange: => @setState @_getStateFromStores() _getStateFromStores: => accounts: SidebarStore.accounts() focusedAccounts: SidebarStore.focusedAccounts() userSections: SidebarStore.userSections() standardSection: SidebarStore.standardSection() _renderUserSections: (sections) => sections.map (section) => render: => {accounts, focusedAccounts, userSections, standardSection} = @state
{@_renderUserSections(userSections)}
module.exports = AccountSidebar