summaryrefslogtreecommitdiffstats
path: root/webapp/components
diff options
context:
space:
mode:
authorJoram Wilander <jwawilander@gmail.com>2017-08-29 09:54:02 -0400
committerGitHub <noreply@github.com>2017-08-29 09:54:02 -0400
commit257edc9ea3b25328aa44098e963815c3c3d25312 (patch)
treeed72b2f646ea9287fdccb5076b99b01bc8585a1d /webapp/components
parent82a8bd99cc5fe59fe4577c9b0d2c06a82c89e628 (diff)
downloadchat-257edc9ea3b25328aa44098e963815c3c3d25312.tar.gz
chat-257edc9ea3b25328aa44098e963815c3c3d25312.tar.bz2
chat-257edc9ea3b25328aa44098e963815c3c3d25312.zip
Experimental implementation for webapp plugins (#7185)
* Start of experimental implementation for webapp plugins * Updates to webapp plugin architecture * Update pluggable test * Remove debug code
Diffstat (limited to 'webapp/components')
-rw-r--r--webapp/components/at_mention/at_mention.jsx17
-rw-r--r--webapp/components/profile_picture.jsx24
-rw-r--r--webapp/components/user_profile.jsx21
3 files changed, 36 insertions, 26 deletions
diff --git a/webapp/components/at_mention/at_mention.jsx b/webapp/components/at_mention/at_mention.jsx
index 9bb2d2aad..668222cc2 100644
--- a/webapp/components/at_mention/at_mention.jsx
+++ b/webapp/components/at_mention/at_mention.jsx
@@ -2,6 +2,7 @@
// See License.txt for license information.
import ProfilePopover from 'components/profile_popover.jsx';
+import Pluggable from 'plugins/pluggable';
import {Client4} from 'mattermost-redux/client';
import React from 'react';
@@ -79,13 +80,15 @@ export default class AtMention extends React.PureComponent {
placement='right'
rootClose={true}
overlay={
- <ProfilePopover
- user={user}
- src={Client4.getProfilePictureUrl(user.id, user.last_picture_update)}
- hide={this.hideProfilePopover}
- isRHS={this.props.isRHS}
- hasMention={this.props.hasMention}
- />
+ <Pluggable>
+ <ProfilePopover
+ user={user}
+ src={Client4.getProfilePictureUrl(user.id, user.last_picture_update)}
+ hide={this.hideProfilePopover}
+ isRHS={this.props.isRHS}
+ hasMention={this.props.hasMention}
+ />
+ </Pluggable>
}
>
<a className='mention-link'>{'@' + user.username}</a>
diff --git a/webapp/components/profile_picture.jsx b/webapp/components/profile_picture.jsx
index fbaa46127..90cea9d34 100644
--- a/webapp/components/profile_picture.jsx
+++ b/webapp/components/profile_picture.jsx
@@ -1,6 +1,8 @@
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
// See License.txt for license information.
+
import ProfilePopover from './profile_popover.jsx';
+import Pluggable from 'plugins/pluggable';
import * as Utils from 'utils/utils.jsx';
import PropTypes from 'prop-types';
@@ -56,16 +58,18 @@ export default class ProfilePicture extends React.Component {
placement='right'
rootClose={true}
overlay={
- <ProfilePopover
- user={this.props.user}
- src={this.props.src}
- status={this.props.status}
- isBusy={this.props.isBusy}
- hide={this.hideProfilePopover}
- isRHS={this.props.isRHS}
- hasMention={this.props.hasMention}
- />
- }
+ <Pluggable>
+ <ProfilePopover
+ user={this.props.user}
+ src={this.props.src}
+ status={this.props.status}
+ isBusy={this.props.isBusy}
+ hide={this.hideProfilePopover}
+ isRHS={this.props.isRHS}
+ hasMention={this.props.hasMention}
+ />
+ </Pluggable>
+ }
>
<span className='status-wrapper'>
<img
diff --git a/webapp/components/user_profile.jsx b/webapp/components/user_profile.jsx
index d4d900e6a..28b1e5bfb 100644
--- a/webapp/components/user_profile.jsx
+++ b/webapp/components/user_profile.jsx
@@ -2,6 +2,7 @@
// See License.txt for license information.
import ProfilePopover from './profile_popover.jsx';
+import Pluggable from 'plugins/pluggable';
import * as Utils from 'utils/utils.jsx';
import {OverlayTrigger} from 'react-bootstrap';
@@ -76,15 +77,17 @@ export default class UserProfile extends React.Component {
placement='right'
rootClose={true}
overlay={
- <ProfilePopover
- user={this.props.user}
- src={profileImg}
- status={this.props.status}
- isBusy={this.props.isBusy}
- hide={this.hideProfilePopover}
- isRHS={this.props.isRHS}
- hasMention={this.props.hasMention}
- />
+ <Pluggable>
+ <ProfilePopover
+ user={this.props.user}
+ src={profileImg}
+ status={this.props.status}
+ isBusy={this.props.isBusy}
+ hide={this.hideProfilePopover}
+ isRHS={this.props.isRHS}
+ hasMention={this.props.hasMention}
+ />
+ </Pluggable>
}
>
<div