summaryrefslogtreecommitdiffstats
path: root/web/react/components/search_user_provider.jsx
diff options
context:
space:
mode:
authorhmhealey <harrisonmhealey@gmail.com>2015-12-01 15:24:53 -0500
committerhmhealey <harrisonmhealey@gmail.com>2015-12-01 16:27:22 -0500
commit06e0919bca7ee4280c6eed58838ca2be10e7b4fb (patch)
tree02b4811b59d11752fd9eedf02fd259cd5d69db26 /web/react/components/search_user_provider.jsx
parenta5080ed6b1ddf98a18c0bc01c29cd6eed5c86294 (diff)
downloadchat-06e0919bca7ee4280c6eed58838ca2be10e7b4fb.tar.gz
chat-06e0919bca7ee4280c6eed58838ca2be10e7b4fb.tar.bz2
chat-06e0919bca7ee4280c6eed58838ca2be10e7b4fb.zip
Moved autocomplete components into web/react/components/suggestion
Diffstat (limited to 'web/react/components/search_user_provider.jsx')
-rw-r--r--web/react/components/search_user_provider.jsx62
1 files changed, 0 insertions, 62 deletions
diff --git a/web/react/components/search_user_provider.jsx b/web/react/components/search_user_provider.jsx
deleted file mode 100644
index 7c1711d36..000000000
--- a/web/react/components/search_user_provider.jsx
+++ /dev/null
@@ -1,62 +0,0 @@
-// Copyright (c) 2015 Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-import SuggestionStore from '../stores/suggestion_store.jsx';
-import UserStore from '../stores/user_store.jsx';
-
-class SearchUserSuggestion extends React.Component {
- render() {
- const {item, isSelection, onClick} = this.props;
-
- let className = 'search-autocomplete__item';
- if (isSelection) {
- className += ' selected';
- }
-
- return (
- <div
- className={className}
- onClick={onClick}
- >
- <img
- className='profile-img rounded'
- src={'/api/v1/users/' + item.id + '/image?time=' + item.update_at}
- />
- {item.username}
- </div>
- );
- }
-}
-
-SearchUserSuggestion.propTypes = {
- item: React.PropTypes.object.isRequired,
- isSelection: React.PropTypes.bool,
- onClick: React.PropTypes.func
-};
-
-export default class SearchUserProvider {
- handlePretextChanged(suggestionId, pretext) {
- const captured = (/\bfrom:\s*(\S*)$/i).exec(pretext);
- if (captured) {
- const usernamePrefix = captured[1];
-
- const users = UserStore.getProfiles();
- let filtered = [];
-
- for (const id of Object.keys(users)) {
- const user = users[id];
-
- if (user.username.startsWith(usernamePrefix)) {
- filtered.push(user);
- }
- }
-
- filtered = filtered.sort((a, b) => a.username.localeCompare(b.username));
-
- const usernames = filtered.map((user) => user.username);
-
- SuggestionStore.setMatchedPretext(suggestionId, usernamePrefix);
- SuggestionStore.addSuggestions(suggestionId, usernames, filtered, SearchUserSuggestion);
- }
- }
-}