import React from 'react'; import { connect } from 'react-redux'; import Tabs, { TabPane } from 'rc-tabs'; import TabContent from 'rc-tabs/lib/TabContent'; import ScrollableInkTabBar from 'rc-tabs/lib/ScrollableInkTabBar'; import i18n from 'vj/utils/i18n'; import Icon from 'vj/components/react/IconComponent'; import Panel from './PanelComponent'; import PanelButton from './PanelButtonComponent'; import ScratchpadPretestTabPane from './ScratchpadPretestTabPaneContainer'; const mapStateToProps = (state) => ({ current: state.pretest.current, tabs: state.pretest.tabs, meta: state.pretest.meta, }); const mapDispatchToProps = (dispatch) => ({ handleClickAdd() { dispatch({ type: 'SCRATCHPAD_PRETEST_ADD_DATA', }); }, handleClickRemove() { dispatch({ type: 'SCRATCHPAD_PRETEST_REMOVE_DATA', }); }, handleSwitchData(id) { dispatch({ type: 'SCRATCHPAD_PRETEST_SWITCH_TO_DATA', payload: id, }); }, handleClickClose() { dispatch({ type: 'SCRATCHPAD_UI_SET_VISIBILITY', payload: { uiElement: 'pretest', visibility: false, }, }); }, }); @connect(mapStateToProps, mapDispatchToProps) export default class ScratchpadPretestContainer extends React.PureComponent { render() { return ( {' '} {i18n('Pretest')} )} > this.props.handleSwitchData(tabId)} animation="slide-horizontal" renderTabBar={() => ( this.props.handleClickAdd()} > {i18n('Add')} this.props.handleClickRemove()} > {i18n('Remove')} this.props.handleClickClose()} > )} /> )} renderTabContent={() => } > {this.props.tabs.map((tabId) => ( ))} ); } }