From e002e9d8d921140c1e709280b702dc5ea13d8e81 Mon Sep 17 00:00:00 2001 From: Wylie Conlon Date: Fri, 21 Feb 2020 12:41:13 -0500 Subject: [PATCH] Persist number formatting on drop too --- .../dimension_panel/dimension_panel.tsx | 1 + .../operations/definitions/cardinality.tsx | 4 +++- .../operations/definitions/count.tsx | 4 +++- .../operations/definitions/index.ts | 1 + .../operations/definitions/metrics.tsx | 4 +++- .../indexpattern_datasource/operations/operations.ts | 7 ------- 6 files changed, 11 insertions(+), 10 deletions(-) diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/dimension_panel/dimension_panel.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/dimension_panel/dimension_panel.tsx index 2d14887ef574ec..59350ff215c27c 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/dimension_panel/dimension_panel.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/dimension_panel/dimension_panel.tsx @@ -130,6 +130,7 @@ export const IndexPatternDimensionPanelComponent = function IndexPatternDimensio layerId, suggestedPriority: props.suggestedPriority, field: droppedItem.field, + previousColumn: selectedColumn, }); trackUiEvent('drop_onto_dimension'); diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/cardinality.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/cardinality.tsx index a57454e1641739..33325016deaeb1 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/cardinality.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/cardinality.tsx @@ -49,7 +49,7 @@ export const cardinalityOperation: OperationDefinition ({ diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/count.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/count.tsx index 9ec86d4aa1c2f2..1592b1049f666e 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/count.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/count.tsx @@ -39,7 +39,7 @@ export const countOperation: OperationDefinition = { }; } }, - buildColumn({ suggestedPriority, field }) { + buildColumn({ suggestedPriority, field, previousColumn }) { return { label: countLabel, dataType: 'number', @@ -48,6 +48,8 @@ export const countOperation: OperationDefinition = { isBucketed: false, scale: 'ratio', sourceField: field.name, + params: + previousColumn && previousColumn.dataType === 'number' ? previousColumn.params : undefined, }; }, toEsAggsConfig: (column, columnId) => ({ diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/index.ts b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/index.ts index f12639d4359693..cbced3bfc87094 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/index.ts +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/index.ts @@ -117,6 +117,7 @@ interface FieldBasedOperationDefinition buildColumn: ( arg: BaseBuildColumnArgs & { field: IndexPatternField; + previousColumn?: C; } ) => C; /** diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/metrics.tsx b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/metrics.tsx index d7d9ef6f420bfb..c2d9478c6ea15d 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/metrics.tsx +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/definitions/metrics.tsx @@ -50,7 +50,7 @@ function buildMetricOperation>({ (!newField.aggregationRestrictions || newField.aggregationRestrictions![type]) ); }, - buildColumn: ({ suggestedPriority, field }) => ({ + buildColumn: ({ suggestedPriority, field, previousColumn }) => ({ label: ofName(field.name), dataType: 'number', operationType: type, @@ -58,6 +58,8 @@ function buildMetricOperation>({ sourceField: field.name, isBucketed: false, scale: 'ratio', + params: + previousColumn && previousColumn.dataType === 'number' ? previousColumn.params : undefined, }), onFieldChange: (oldColumn, indexPattern, field) => { return { diff --git a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/operations.ts b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/operations.ts index aecda427c08c23..ce8ea55c445dce 100644 --- a/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/operations.ts +++ b/x-pack/legacy/plugins/lens/public/indexpattern_datasource/operations/operations.ts @@ -243,13 +243,6 @@ export function buildColumn({ field, }); - if ( - newColumn.dataType === 'number' && - previousColumn?.params && - 'format' in previousColumn.params - ) { - newColumn.params = { format: previousColumn.params.format }; - } return newColumn; }