summaryrefslogtreecommitdiffstats
path: root/webapp/components/channel_select.jsx
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/components/channel_select.jsx')
-rw-r--r--webapp/components/channel_select.jsx116
1 files changed, 0 insertions, 116 deletions
diff --git a/webapp/components/channel_select.jsx b/webapp/components/channel_select.jsx
deleted file mode 100644
index bad8dffca..000000000
--- a/webapp/components/channel_select.jsx
+++ /dev/null
@@ -1,116 +0,0 @@
-// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
-// See License.txt for license information.
-
-import React from 'react';
-import PropTypes from 'prop-types';
-
-import Constants from 'utils/constants.jsx';
-import ChannelStore from 'stores/channel_store.jsx';
-import * as Utils from 'utils/utils.jsx';
-import {sortChannelsByDisplayName} from 'utils/channel_utils.jsx';
-
-export default class ChannelSelect extends React.Component {
- static get propTypes() {
- return {
- onChange: PropTypes.func,
- value: PropTypes.string,
- selectOpen: PropTypes.bool.isRequired,
- selectPrivate: PropTypes.bool.isRequired,
- selectDm: PropTypes.bool.isRequired
- };
- }
-
- static get defaultProps() {
- return {
- selectOpen: false,
- selectPrivate: false,
- selectDm: false
- };
- }
-
- constructor(props) {
- super(props);
-
- this.handleChannelChange = this.handleChannelChange.bind(this);
- this.filterChannels = this.filterChannels.bind(this);
-
- this.state = {
- channels: ChannelStore.getAll().filter(this.filterChannels).sort(sortChannelsByDisplayName)
- };
- }
-
- componentDidMount() {
- ChannelStore.addChangeListener(this.handleChannelChange);
- }
-
- componentWillUnmount() {
- ChannelStore.removeChangeListener(this.handleChannelChange);
- }
-
- handleChannelChange() {
- this.setState({
- channels: ChannelStore.getAll().
- filter(this.filterChannels).sort(sortChannelsByDisplayName)
- });
- }
-
- filterChannels(channel) {
- if (channel.display_name) {
- return true;
- }
-
- return false;
- }
-
- render() {
- const options = [
- <option
- key=''
- value=''
- >
- {Utils.localizeMessage('channel_select.placeholder', '--- Select a channel ---')}
- </option>
- ];
-
- this.state.channels.forEach((channel) => {
- if (channel.type === Constants.OPEN_CHANNEL && this.props.selectOpen) {
- options.push(
- <option
- key={channel.id}
- value={channel.id}
- >
- {channel.display_name}
- </option>
- );
- } else if (channel.type === Constants.PRIVATE_CHANNEL && this.props.selectPrivate) {
- options.push(
- <option
- key={channel.id}
- value={channel.id}
- >
- {channel.display_name}
- </option>
- );
- } else if (channel.type === Constants.DM_CHANNEL && this.props.selectDm) {
- options.push(
- <option
- key={channel.id}
- value={channel.id}
- >
- {channel.display_name}
- </option>
- );
- }
- });
-
- return (
- <select
- className='form-control'
- value={this.props.value}
- onChange={this.props.onChange}
- >
- {options}
- </select>
- );
- }
-}