MyCrypto/common/components/ui/SimpleDropdown.tsx
William O'Beirne d1a2c885a2 Performance Improvements (Pure components, debounced gas slider) (#899)
* PureComponent a ton of non-connected components.

* Debounce gas price slider. Keep gas price in state to reflect changes immediately.

* PureComponent balance sidebar and swap unconnected components.

* Import correct component.

* Move debouncing of gas slider to sagas via gasPriceInputIntent action.

* Remove console log.

* Remove leftover file from merge.
2018-01-29 13:13:46 -06:00

27 lines
611 B
TypeScript

import React, { PureComponent } from 'react';
import Dropdown from './Dropdown';
interface Props {
value: string | undefined;
options: string[];
ariaLabel?: string;
onChange(value: string): void;
}
export default class SimpleDropdown extends PureComponent<Props, void> {
public render() {
const { options, value, onChange, ariaLabel } = this.props;
const StringDropdown = Dropdown as new () => Dropdown<string>;
return (
<StringDropdown
options={options}
value={value}
onChange={onChange}
ariaLabel={ariaLabel || 'dropdown'}
/>
);
}
}