import ImmutablePropTypes from 'react-immutable-proptypes'; import PureRenderMixin from 'react-addons-pure-render-mixin'; const MediaGallery = React.createClass({ propTypes: { media: ImmutablePropTypes.list.isRequired, height: React.PropTypes.number.isRequired }, mixins: [PureRenderMixin], render () { var children = this.props.media.take(4); var size = children.size; children = children.map((attachment, i) => { let width = 50; let height = 100; let top = 'auto'; let left = 'auto'; let bottom = 'auto'; let right = 'auto'; if (size === 4 || (size === 3 && i > 0)) { height = 50; } if (size === 2) { if (i === 0) { right = '2px'; } else { left = '2px'; } } else if (size === 3) { if (i === 0) { right = '2px'; } else if (i > 0) { left = '2px'; } if (i === 1) { bottom = '2px'; } else if (i > 1) { top = '2px'; } } else if (size === 4) { if (i === 0 || i === 2) { right = '2px'; } if (i === 1 || i === 3) { left = '2px'; } if (i < 2) { bottom = '2px'; } else { top = '2px'; } } return ; }); return (
{children}
); } }); export default MediaGallery;