Skip to content

Commit 4a4c605

Browse files
author
Vikas Agarwal
committed
Github issue #351 [Add a Team Member] - the existing username is displayed as autocomplete when set focus
-- Fixed. However, there is one edge case when: 1. user has selected some user from the dropdown 2. then user alters the query In this case, it would show the previous results (i.e. the selected member) momentarily
1 parent 253d5e9 commit 4a4c605

File tree

3 files changed

+8
-4
lines changed

3 files changed

+8
-4
lines changed

src/components/TeamManagement/AutoCompleteInput.jsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ import React, {PropTypes} from 'react'
22
import ReactDOM from 'react-dom'
33
import uncontrollable from 'uncontrollable'
44
import { Avatar } from 'appirio-tech-react-components'
5+
import { AUTOCOMPLETE_TRIGGER_LENGTH } from '../../config/constants'
56

67
class AutoCompleteInput extends React.Component {
78

@@ -52,7 +53,7 @@ class AutoCompleteInput extends React.Component {
5253
return (
5354
<div className="input-icon-group tc-file-field__inputs">
5455

55-
{isPopupVisible && searchMembers.length > 0 &&
56+
{isPopupVisible && keyword.length >= AUTOCOMPLETE_TRIGGER_LENGTH && searchMembers.length > 0 &&
5657
<div className="member-dropdown">
5758
{searchMembers.map(renderMember)}
5859
</div>

src/config/constants.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -211,3 +211,5 @@ export const CODER_BOT_USER_FNAME = 'Coder'
211211
export const CODER_BOT_USER_LNAME = 'Bot'
212212

213213
export const PROJECT_MAX_COLORS = 5
214+
215+
export const AUTOCOMPLETE_TRIGGER_LENGTH = 3

src/projects/detail/containers/TeamManagementContainer.jsx

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { withRouter } from 'react-router'
44
import _ from 'lodash'
55
import {
66
ROLE_CONNECT_COPILOT, ROLE_CONNECT_MANAGER,
7-
PROJECT_ROLE_COPILOT, PROJECT_ROLE_MANAGER, PROJECT_ROLE_CUSTOMER
7+
PROJECT_ROLE_COPILOT, PROJECT_ROLE_MANAGER, PROJECT_ROLE_CUSTOMER, AUTOCOMPLETE_TRIGGER_LENGTH
88
} from '../../../config/constants'
99
import TeamManagement from '../../../components/TeamManagement/TeamManagement'
1010
import { addProjectMember, updateProjectMember, removeProjectMember,
@@ -107,7 +107,7 @@ class TeamManagementContainer extends Component {
107107
}
108108

109109
onKeywordChange(keyword) {
110-
if (keyword.length > 2)
110+
if (keyword.length >= AUTOCOMPLETE_TRIGGER_LENGTH)
111111
this.props.loadMemberSuggestions(keyword)
112112
this.setState({ keyword, selectedNewMember: null })
113113
}
@@ -135,12 +135,13 @@ class TeamManagementContainer extends Component {
135135
)
136136
this.setState({
137137
keyword: '',
138+
searchMembers: [],
138139
selectedNewMember: null
139140
})
140141
}
141142

142143
onToggleAddTeamMember(isAddingTeamMember) {
143-
this.setState({ isAddingTeamMember, error : null })
144+
this.setState({ isAddingTeamMember, error : null, searchMembers: [] })
144145
}
145146

146147
onToggleNewMemberConfirm(showNewMemberConfirmation) {

0 commit comments

Comments
 (0)