This commit is contained in:
Peter Holmberg
2019-03-05 13:55:29 +01:00
parent 7f283bdfb9
commit ee4df15526
3 changed files with 7 additions and 5 deletions

View File

@@ -0,0 +1,53 @@
import React, { PureComponent } from 'react';
import { Select } from '..';
import { getValueFormats } from '../../utils';
interface Props {
onChange: (item: any) => void;
defaultValue?: string;
width?: number;
}
export class UnitPicker extends PureComponent<Props> {
static defaultProps = {
width: 12,
};
render() {
const { defaultValue, onChange, width } = this.props;
const unitGroups = getValueFormats();
// Need to transform the data structure to work well with Select
const groupOptions = unitGroups.map(group => {
const options = group.submenu.map(unit => {
return {
label: unit.text,
value: unit.value,
};
});
return {
label: group.text,
options,
};
});
const value = groupOptions.map(group => {
return group.options.find(option => option.value === defaultValue);
});
return (
<Select
width={width}
defaultValue={value}
isSearchable={true}
options={groupOptions}
placeholder="Choose"
onChange={onChange}
/>
);
}
}

View File

@@ -26,3 +26,4 @@ export { ValueMappingsEditor } from './ValueMappingsEditor/ValueMappingsEditor';
export { Gauge } from './Gauge/Gauge';
export { Switch } from './Switch/Switch';
export { EmptySearchResult } from './EmptySearchResult/EmptySearchResult';
export { UnitPicker } from './UnitPicker/UnitPicker';