diff --git a/frontend/src/metabase/admin/datamodel/components/database/ColumnItem.jsx b/frontend/src/metabase/admin/datamodel/components/database/ColumnItem.jsx index c62ee2805082fda4fa5b973edd20f49fdb5b83cf..176922817703281a9a70216acae022c2243f4976 100644 --- a/frontend/src/metabase/admin/datamodel/components/database/ColumnItem.jsx +++ b/frontend/src/metabase/admin/datamodel/components/database/ColumnItem.jsx @@ -249,14 +249,14 @@ export class SpecialTypeAndTargetPicker extends Component { className, )} triggerClasses={this.props.triggerClasses} - placeholder={t`Select a currency type`} - onChange={({ target }) => this.onCurrencyTypeChange(target.value)} - searchProp="name" value={ (field.settings && field.settings.currency) || getGlobalSettingsForColumn(field).currency || "USD" } + onChange={({ target }) => this.onCurrencyTypeChange(target.value)} + placeholder={t`Select a currency type`} + searchProp="name" searchCaseSensitive={false} > {Object.values(currency).map(c => ( diff --git a/frontend/src/metabase/visualizations/components/settings/ChartSettingSelect.jsx b/frontend/src/metabase/visualizations/components/settings/ChartSettingSelect.jsx index 88510b0ee98acb1d5bd72741fd777657c5e837d3..ac6e8522396ffb1bcdeb47dba6cbccd61c26d528 100644 --- a/frontend/src/metabase/visualizations/components/settings/ChartSettingSelect.jsx +++ b/frontend/src/metabase/visualizations/components/settings/ChartSettingSelect.jsx @@ -1,6 +1,6 @@ import React from "react"; -import Select from "metabase/components/Select.jsx"; +import Select, { Option } from "metabase/components/Select.jsx"; import _ from "underscore"; import cx from "classnames"; @@ -13,6 +13,7 @@ const ChartSettingSelect = ({ className, placeholder, placeholderNoOptions, + ...props }) => ( <Select className={cx(className, "block flex-full", { @@ -20,14 +21,18 @@ const ChartSettingSelect = ({ options.length === 0 || (options.length === 1 && options[0].value === value), })} - value={_.findWhere(options, { value })} - options={options} - optionNameFn={o => o.name} - optionValueFn={o => o.value} - onChange={onChange} + value={value} + onChange={e => onChange(e.target.value)} placeholder={options.length === 0 ? placeholderNoOptions : placeholder} isInitiallyOpen={isInitiallyOpen} - /> + {...props} + > + {options.map(option => ( + <Option key={option.value} name={option.name} value={option.value}> + {option.name} + </Option> + ))} + </Select> ); export default ChartSettingSelect; diff --git a/frontend/src/metabase/visualizations/lib/settings/column.js b/frontend/src/metabase/visualizations/lib/settings/column.js index 4133d9527ed2f5b3c8091c4d8b85c9dfa0df8c7a..4c487d5020d6180f8c36b1c3b5775036422a1ede 100644 --- a/frontend/src/metabase/visualizations/lib/settings/column.js +++ b/frontend/src/metabase/visualizations/lib/settings/column.js @@ -295,6 +295,8 @@ export const NUMBER_COLUMN_SETTINGS = { name: currency.name, value: currency.code, })), + searchProp: "name", + searchCaseSensitive: false, }, default: "USD", getHidden: (column: Column, settings: ColumnSettings) =>