Use a consumer for identity
This commit is contained in:
parent
9b54b27bf7
commit
11900689bf
2 changed files with 29 additions and 8 deletions
|
@ -20,6 +20,7 @@ import Card from '../features/status/components/card';
|
||||||
// to use the progress bar to show download progress
|
// to use the progress bar to show download progress
|
||||||
import Bundle from '../features/ui/components/bundle';
|
import Bundle from '../features/ui/components/bundle';
|
||||||
import { MediaGallery, Video, Audio } from '../features/ui/util/async-components';
|
import { MediaGallery, Video, Audio } from '../features/ui/util/async-components';
|
||||||
|
import { IdentityConsumer } from '../features/ui/util/identity_consumer';
|
||||||
import { SensitiveMediaContext } from '../features/ui/util/sensitive_media_context';
|
import { SensitiveMediaContext } from '../features/ui/util/sensitive_media_context';
|
||||||
import { displayMedia, visibleReactions } from '../initial_state';
|
import { displayMedia, visibleReactions } from '../initial_state';
|
||||||
|
|
||||||
|
@ -845,14 +846,18 @@ class Status extends ImmutablePureComponent {
|
||||||
{...statusContentProps}
|
{...statusContentProps}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<StatusReactions
|
<IdentityConsumer>
|
||||||
statusId={status.get('id')}
|
{identity => (
|
||||||
reactions={status.get('reactions')}
|
<StatusReactions
|
||||||
numVisible={visibleReactions}
|
statusId={status.get('id')}
|
||||||
addReaction={this.props.onReactionAdd}
|
reactions={status.get('reactions')}
|
||||||
removeReaction={this.props.onReactionRemove}
|
numVisible={visibleReactions}
|
||||||
canReact={this.context.identity.signedIn}
|
addReaction={this.props.onReactionAdd}
|
||||||
/>
|
removeReaction={this.props.onReactionRemove}
|
||||||
|
canReact={identity.signedIn}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
</IdentityConsumer>
|
||||||
|
|
||||||
{(!isCollapsed || !(muted || !settings.getIn(['collapsed', 'show_action_bar']))) && (
|
{(!isCollapsed || !(muted || !settings.getIn(['collapsed', 'show_action_bar']))) && (
|
||||||
<StatusActionBar
|
<StatusActionBar
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
import PropTypes from 'prop-types';
|
||||||
|
import { PureComponent } from 'react';
|
||||||
|
|
||||||
|
export class IdentityConsumer extends PureComponent {
|
||||||
|
static contextTypes = {
|
||||||
|
identity: PropTypes.object
|
||||||
|
};
|
||||||
|
|
||||||
|
static propTypes = {
|
||||||
|
children: PropTypes.func.isRequired
|
||||||
|
};
|
||||||
|
|
||||||
|
render() {
|
||||||
|
return this.props.children(this.context.identity);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue