diff --git a/src/plugins/field_formats/common/converters/duration.test.ts b/src/plugins/field_formats/common/converters/duration.test.ts index 58e3fb4f3a967..52fb64888f5ac 100644 --- a/src/plugins/field_formats/common/converters/duration.test.ts +++ b/src/plugins/field_formats/common/converters/duration.test.ts @@ -15,6 +15,10 @@ describe('Duration Format', () => { outputPrecision: undefined, showSuffix: undefined, fixtures: [ + { + input: 0, + output: '0 seconds', + }, { input: -60, output: 'minus a minute', diff --git a/src/plugins/field_formats/common/converters/duration.ts b/src/plugins/field_formats/common/converters/duration.ts index 1579d6058e98c..1ed6ec014ed47 100644 --- a/src/plugins/field_formats/common/converters/duration.ts +++ b/src/plugins/field_formats/common/converters/duration.ts @@ -99,6 +99,12 @@ export class DurationFormat extends FieldFormat { const human = this.isHuman(); const humanPrecise = this.isHumanPrecise(); + if (human && val === 0) { + return i18n.translate('fieldFormats.duration.zeroSecondsLabel', { + defaultMessage: '0 seconds', + }); // Handle the case of 0 value for "Human Friendly" + } + const prefix = val < 0 && human ? i18n.translate('fieldFormats.duration.negativeLabel', {