Merge branch 'profile-media-panel-improvments' into 'develop'

Profile media panel improvements, Fixes #318

Closes #318

See merge request soapbox-pub/soapbox-fe!168
This commit is contained in:
Alex Gleason 2020-08-16 17:24:52 +00:00
commit b3a05c75ff

View file

@ -35,13 +35,16 @@ class ProfileMediaPanel extends ImmutablePureComponent {
this.props.dispatch(expandAccountMediaTimeline(accountId)); this.props.dispatch(expandAccountMediaTimeline(accountId));
} }
render() { componentDidUpdate() {
const { attachments } = this.props; const { account } = this.props;
const nineAttachments = attachments.slice(0, 9); const accountId = account.get('id');
this.props.dispatch(expandAccountMediaTimeline(accountId));
}
if (attachments.isEmpty()) { render() {
return null; const { attachments, account } = this.props;
} const publicAttachments = attachments.filter(attachment => attachment.getIn(['status', 'visibility']) === 'public');
const nineAttachments = publicAttachments.slice(0, 9);
return ( return (
<div className='media-panel'> <div className='media-panel'>
@ -51,18 +54,20 @@ class ProfileMediaPanel extends ImmutablePureComponent {
<FormattedMessage id='media_panel.title' defaultMessage='Media' /> <FormattedMessage id='media_panel.title' defaultMessage='Media' />
</span> </span>
</div> </div>
<div className='media-panel__content'> {account &&
<div className='media-panel__list'> <div className='media-panel__content'>
{nineAttachments.map((attachment, index) => ( <div className='media-panel__list'>
<MediaItem {!nineAttachments.isEmpty() && nineAttachments.map((attachment, index) => (
key={`${attachment.getIn(['status', 'id'])}+${attachment.get('id')}`} <MediaItem
attachment={attachment} key={`${attachment.getIn(['status', 'id'])}+${attachment.get('id')}`}
displayWidth={255} attachment={attachment}
onOpenMedia={this.handleOpenMedia} displayWidth={255}
/> onOpenMedia={this.handleOpenMedia}
))} />
))}
</div>
</div> </div>
</div> }
</div> </div>
); );
}; };