PageHtmlContainer.jsx 1.7KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import React from 'react'
  2. import { connect } from 'react-redux'
  3. import PopinFixed from '../../../component/common/PopinFixed/PopinFixed.jsx'
  4. import PopinFixedHeader from '../../../component/common/PopinFixed/PopinFixedHeader.jsx'
  5. import PopinFixedOption from '../../../component/common/PopinFixed/PopinFixedOption.jsx'
  6. import PopinFixedContent from '../../../component/common/PopinFixed/PopinFixedContent.jsx'
  7. import PageHtmlComponent from './PageHtmlComponent.jsx'
  8. import Timeline from '../../../component/Timeline.jsx'
  9. import { hideActiveFileContent } from '../../../action-creator.sync.js'
  10. require('./PageHtml.styl')
  11. class PageHtmlContainer extends React.Component {
  12. handleClickBtnClose = () => this.props.dispatch(hideActiveFileContent())
  13. render () {
  14. const { activeFileContent, plugin: { PageHtml } } = this.props
  15. return (
  16. <PopinFixed customClass={`${PageHtml.customClass}`}>
  17. <PopinFixedHeader
  18. customClass={`${PageHtml.customClass}`}
  19. icon={PageHtml.icon}
  20. name={activeFileContent.title}
  21. onClickCloseBtn={this.handleClickBtnClose}
  22. />
  23. <PopinFixedOption customClass={`${PageHtml.customClass}`} />
  24. <PopinFixedContent customClass={`${PageHtml.customClass}__contentpage`}>
  25. <PageHtmlComponent
  26. version={activeFileContent.version}
  27. text={activeFileContent.text}
  28. key={'PageHtml'}
  29. />
  30. <Timeline
  31. customClass={`${PageHtml.customClass}__contentpage`}
  32. key={'pageHtml__timeline'}
  33. />
  34. </PopinFixedContent>
  35. </PopinFixed>
  36. )
  37. }
  38. }
  39. const mapStateToProps = ({ activeFileContent, plugin }) => ({ activeFileContent, plugin })
  40. export default connect(mapStateToProps)(PageHtmlContainer)