diff --git a/x-pack/plugins/lens/public/indexpattern_datasource/indexpattern.test.ts b/x-pack/plugins/lens/public/indexpattern_datasource/indexpattern.test.ts index 042ea0353ac635..2e55abf4a429ad 100644 --- a/x-pack/plugins/lens/public/indexpattern_datasource/indexpattern.test.ts +++ b/x-pack/plugins/lens/public/indexpattern_datasource/indexpattern.test.ts @@ -530,6 +530,9 @@ describe('IndexPattern Data Source', () => { "outputColumnId": Array [ "col1", ], + "outputColumnName": Array [ + "Count of records", + ], "targetUnit": Array [ "h", ], diff --git a/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.test.ts b/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.test.ts index ef1739e4424fa3..ade6ba099d70e9 100644 --- a/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.test.ts +++ b/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.test.ts @@ -25,4 +25,20 @@ describe('suffix formatter', () => { expect(convertMock).toHaveBeenCalledWith(12345); expect(formatFactory).toHaveBeenCalledWith({ id: 'nestedFormatter', params: nestedParams }); }); + + it('should not add suffix to empty strings', () => { + const convertMock = jest.fn((x) => ''); + const formatFactory = jest.fn(() => ({ convert: convertMock })); + const SuffixFormatter = getSuffixFormatter((formatFactory as unknown) as FormatFactory); + const nestedParams = { abc: 123 }; + const formatterInstance = new SuffixFormatter({ + unit: 'h', + id: 'nestedFormatter', + params: nestedParams, + }); + + const result = formatterInstance.convert(12345); + + expect(result).toEqual(''); + }); }); diff --git a/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.ts b/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.ts index f5d764acab0869..3d9f3be01a11bb 100644 --- a/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.ts +++ b/x-pack/plugins/lens/public/indexpattern_datasource/suffix_formatter.ts @@ -49,6 +49,11 @@ export function getSuffixFormatter(formatFactory: FormatFactory) { val ); + // do not add suffixes to empty strings + if (formattedValue === '') { + return ''; + } + if (suffix) { return `${formattedValue}${suffix}`; } diff --git a/x-pack/plugins/lens/public/indexpattern_datasource/to_expression.ts b/x-pack/plugins/lens/public/indexpattern_datasource/to_expression.ts index a85b8920366b55..a5ce4dfbea371f 100644 --- a/x-pack/plugins/lens/public/indexpattern_datasource/to_expression.ts +++ b/x-pack/plugins/lens/public/indexpattern_datasource/to_expression.ts @@ -121,6 +121,7 @@ function getExpressionForLayer( dateColumnId: [firstDateHistogramColumn![0]], inputColumnId: [id], outputColumnId: [id], + outputColumnName: [col.label], targetUnit: [col.timeScale!], }, };