import React from 'react'; import PropTypes from 'prop-types'; import { injectIntl } from 'react-intl'; import ImmutablePropTypes from 'react-immutable-proptypes'; import ImmutablePureComponent from 'react-immutable-pure-component'; import ReactSwipeableViews from 'react-swipeable-views'; import { links, getIndex, getLink } from './tabs_bar'; import { Link } from 'react-router-dom'; import BundleContainer from '../containers/bundle_container'; import ColumnLoading from './column_loading'; import DrawerLoading from './drawer_loading'; import BundleColumnError from './bundle_column_error'; import { Compose, Notifications, HomeTimeline, CommunityTimeline, HashtagTimeline, DirectTimeline, FavouritedStatuses, ListTimeline } from '../../ui/util/async-components'; import Icon from 'gabsocial/components/icon'; export default @(component => injectIntl(component, { withRef: true })) class ColumnsArea extends ImmutablePureComponent { static propTypes = { intl: PropTypes.object.isRequired, columns: ImmutablePropTypes.list.isRequired, children: PropTypes.node, layout: PropTypes.object, }; render () { const { columns, children, intl } = this.props; const layout = this.props.layout || {LEFT:null,RIGHT:null}; return ( <div className='page'> <div className='page__columns'> <div className='columns-area__panels'> <div className='columns-area__panels__pane columns-area__panels__pane--left'> <div className='columns-area__panels__pane__inner'> {layout.LEFT} </div> </div> <div className='columns-area__panels__main'> <div className='columns-area columns-area--mobile'> {children} </div> </div> <div className='columns-area__panels__pane columns-area__panels__pane--right'> <div className='columns-area__panels__pane__inner'> {layout.RIGHT} </div> </div> </div> </div> </div> ) } }