Skip to content
Snippets Groups Projects
Commit 7ffba5e4 authored by Tom Robinson's avatar Tom Robinson
Browse files

Table formatting: hide if no formattable fields

parent f04ba857
Branches
Tags
No related merge requests found
......@@ -62,7 +62,7 @@ const DEFAULTS_BY_TYPE = {
};
// predicate for columns that can be formatted
const isFormattable = isNumeric;
export const isFormattable = isNumeric;
export default class ChartSettingsTableFormatting extends React.Component {
state = {
......@@ -71,7 +71,6 @@ export default class ChartSettingsTableFormatting extends React.Component {
render() {
const { value, onChange, cols } = this.props;
const { editingRule } = this.state;
const formattableCols = cols.filter(isFormattable);
if (editingRule !== null && value[editingRule]) {
return (
<RuleEditor
......@@ -100,8 +99,7 @@ export default class ChartSettingsTableFormatting extends React.Component {
{
...DEFAULTS_BY_TYPE["single"],
// if there's a single column use that by default
columns:
formattableCols.length === 1 ? [formattableCols[0].name] : [],
columns: cols.length === 1 ? [cols[0].name] : [],
},
...value,
]);
......@@ -270,9 +268,7 @@ const RuleEditor = ({ rule, onChange, cols }) => (
isInitiallyOpen={rule.columns.length === 0}
multiple
>
{cols
.filter(isFormattable)
.map(col => <Option value={col.name}>{col.display_name}</Option>)}
{cols.map(col => <Option value={col.name}>{col.display_name}</Option>)}
</Select>
<h3 className="mt3 mb1">{t`Formatting style`}</h3>
<Radio
......
......@@ -14,7 +14,9 @@ import {
getFriendlyName,
} from "metabase/visualizations/lib/utils";
import ChartSettingOrderedFields from "metabase/visualizations/components/settings/ChartSettingOrderedFields.jsx";
import ChartSettingsTableFormatting from "metabase/visualizations/components/settings/ChartSettingsTableFormatting.jsx";
import ChartSettingsTableFormatting, {
isFormattable,
} from "metabase/visualizations/components/settings/ChartSettingsTableFormatting.jsx";
import _ from "underscore";
import cx from "classnames";
......@@ -187,9 +189,11 @@ export default class Table extends Component {
widget: ChartSettingsTableFormatting,
default: [],
getProps: ([{ data: { cols } }], settings) => ({
cols,
cols: cols.filter(isFormattable),
isPivoted: settings["table.pivot"],
}),
getHidden: ([{ data: { cols } }], settings) =>
cols.filter(isFormattable).length === 0,
readDependencies: ["table.pivot"],
},
"table._cell_background_getter": {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment