this.setState({ [field]: event.target.value });
};
- handleSelectFieldChange = (field /*: string */) => ({ value } /*: { value: string } */) => {
- this.setState({ [field]: value });
+ handleSelectFieldChange = (field /*: string */) => (
+ data /*: { label: string, value: string } */
+ ) => {
+ if (data) {
+ this.setState({ [field]: data.value });
+ } else {
+ this.setState({ [field]: null });
+ }
};
handleSubmit = (e /*: Event */) => {
}
renderCancelButton = () => (
- <a id="bulk-change-cancel" href="#" onClick={this.handleCloseClick}>
+ <a href="#" id="bulk-change-cancel" onClick={this.handleCloseClick}>
{translate('cancel')}
</a>
);
) => (
<div className="modal-field" id={`issues-bulk-change-${field}`}>
<label htmlFor={field}>{translate(label)}</label>
- {this.renderCheckbox(field)}
{input}
{affected != null && this.renderAffected(affected)}
</div>
const input = (
<SearchSelect
+ clearable={true}
defaultOptions={this.getDefaultAssignee()}
onSearch={this.handleAssigneeSearch}
onSelect={this.handleAssigneeSelect}
const input = (
<Select
- clearable={false}
+ clearable={true}
id="type"
onChange={this.handleSelectFieldChange('type')}
optionRenderer={optionRenderer}
const input = (
<Select
- clearable={false}
+ clearable={true}
id="severity"
onChange={this.handleSelectFieldChange('severity')}
optionRenderer={option => <SeverityHelper severity={option.value} />}
const input = (
<SearchSelect
canCreate={allowCreate}
+ clearable={true}
defaultOptions={this.state.initialTags}
id={field}
minimumQueryLength={0}
interface Props {
autofocus?: boolean;
canCreate?: boolean;
+ clearable?: boolean;
defaultOptions?: Option[];
minimumQueryLength?: number;
multi?: boolean;
<Component
autofocus={this.autofocus}
className="input-super-large"
- clearable={false}
+ clearable={this.props.clearable}
escapeClearsValue={false}
filterOption={this.handleFilterOption}
isLoading={this.state.loading}
}
export function Creatable(props: ReactCreatableSelectProps) {
- return <ReactCreatable {...props} />;
+ // ReactSelect doesn't declare `clearRenderer` prop
+ const ReactCreatableAny = ReactCreatable as any;
+ return <ReactCreatableAny {...props} clearRenderer={renderInput} />;
}
// TODO figure out why `ref` prop is incompatible