From e77ad3f6155ebc2c93c06fc4c11f75905225d868 Mon Sep 17 00:00:00 2001 From: Irina Kuzmina Date: Wed, 30 Oct 2024 12:38:41 +0300 Subject: [PATCH] Fix linear indicator with min or max value only (#1760) --- .../Widget/components/Table/Bar/utils.ts | 4 +-- ...e-is-less-than-the-actual-screenshot-1.png | Bin 13679 -> 14849 bytes .../flat-table/linear-indicator.test.ts | 33 ++++++++++++++++-- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/ui/libs/DatalensChartkit/ChartKit/components/Widget/components/Table/Bar/utils.ts b/src/ui/libs/DatalensChartkit/ChartKit/components/Widget/components/Table/Bar/utils.ts index dea8a8e478..cdb3ae18d5 100644 --- a/src/ui/libs/DatalensChartkit/ChartKit/components/Widget/components/Table/Bar/utils.ts +++ b/src/ui/libs/DatalensChartkit/ChartKit/components/Widget/components/Table/Bar/utils.ts @@ -83,7 +83,7 @@ const getLeftPosition = (align: string, width: number) => { const getMinBarStyle = (args: GetMinBarStyleArgs): React.CSSProperties => { const {value, min, color, align = 'right'} = args; - const valuePart = getRangeValuePart(min, value); + const valuePart = Math.min(100, getRangeValuePart(min, value)); return { background: color, @@ -94,7 +94,7 @@ const getMinBarStyle = (args: GetMinBarStyleArgs): React.CSSProperties => { const getMaxBarStyle = (args: GetMaxBarStyleArgs): React.CSSProperties => { const {value, max, color, align = 'left'} = args; - const valuePart = getRangeValuePart(max, value); + const valuePart = Math.min(100, getRangeValuePart(max, value)); return { background: color, diff --git a/tests/opensource-suites/__screenshots__/wizard/visualizations/flat-table/linear-indicator.test.ts/Wizard-Flat-table-Linear-indicator-with-manual-aee01-ax-value-is-less-than-the-actual-screenshot-1.png b/tests/opensource-suites/__screenshots__/wizard/visualizations/flat-table/linear-indicator.test.ts/Wizard-Flat-table-Linear-indicator-with-manual-aee01-ax-value-is-less-than-the-actual-screenshot-1.png index 55391174660c422906b6ae876fd52da3851f3ef9..6f6209052942bb6385e596c8f218cf2f64277064 100644 GIT binary patch literal 14849 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 literal 13679 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 s{Le!Ell<-9@!w { 'id', ); - await wizardPage.createNewFieldWithFormula('max', 'max([id]) - 3'); + // an indicator with a negative minimum and positive maximum scale values + await wizardPage.createNewFieldWithFormula('ind1', 'max([id]) - 3'); await wizardPage.sectionVisualization.addFieldByClick( PlaceholderName.FlatTableColumns, - 'max', + 'ind1', ); await wizardPage.visualizationItemDialog.open( PlaceholderName.FlatTableColumns, - 'max', + 'ind1', ); await enableBar(wizardPage, [-1, 1]); await wizardPage.visualizationItemDialog.clickOnApplyButton(); + // an indicator with a positive minimum and maximum scale values + await wizardPage.createNewFieldWithFormula('ind2', 'max([id]) - 3'); + await wizardPage.sectionVisualization.addFieldByClick( + PlaceholderName.FlatTableColumns, + 'ind2', + ); + await wizardPage.visualizationItemDialog.open( + PlaceholderName.FlatTableColumns, + 'ind2', + ); + await enableBar(wizardPage, [0.1, 1]); + await wizardPage.visualizationItemDialog.clickOnApplyButton(); + + // an indicator with a positive minimum and maximum scale values + await wizardPage.createNewFieldWithFormula('ind3', 'max([id]) - 3'); + await wizardPage.sectionVisualization.addFieldByClick( + PlaceholderName.FlatTableColumns, + 'ind3', + ); + await wizardPage.visualizationItemDialog.open( + PlaceholderName.FlatTableColumns, + 'ind3', + ); + await enableBar(wizardPage, [-1, -0.1]); + await wizardPage.visualizationItemDialog.clickOnApplyButton(); + await wizardPage.sectionVisualization.addFieldByClick( PlaceholderName.FlatTableColumns, 'segment',