From 29fa3a4b9f7475ce497cac6975de68ee39ab12ca Mon Sep 17 00:00:00 2001 From: Lena Date: Mon, 4 May 2020 12:19:44 -0700 Subject: [PATCH] update as per comments --- .../webapp/components/AppAdmin/AppAdmin.scss | 1 + .../DataDocChartCell/DataDocChartComposer.tsx | 14 ++++------ .../lib/chart/chart-data-transformation.ts | 28 ++++++++++++++----- 3 files changed, 27 insertions(+), 16 deletions(-) diff --git a/datahub/webapp/components/AppAdmin/AppAdmin.scss b/datahub/webapp/components/AppAdmin/AppAdmin.scss index 397082df9..aa0f637c8 100644 --- a/datahub/webapp/components/AppAdmin/AppAdmin.scss +++ b/datahub/webapp/components/AppAdmin/AppAdmin.scss @@ -64,6 +64,7 @@ flex-grow: 1; text-align: left; overflow-y: hidden; + overflow-x: hidden; .AdminForm-button-box { display: flex; justify-content: center; diff --git a/datahub/webapp/components/DataDocChartCell/DataDocChartComposer.tsx b/datahub/webapp/components/DataDocChartCell/DataDocChartComposer.tsx index 4029beaf0..00454b099 100644 --- a/datahub/webapp/components/DataDocChartCell/DataDocChartComposer.tsx +++ b/datahub/webapp/components/DataDocChartCell/DataDocChartComposer.tsx @@ -128,14 +128,6 @@ const DataDocChartComposerComponent: React.FunctionComponent< values.xIndex, ]); - const tableData: any[][] = React.useMemo(() => { - if (tableTab === 'original') { - return statementResultData; - } else { - return chartData; - } - }, [tableTab, statementResultData, chartData]); - // getting redux state const queryCellOptions = useSelector((state: IStoreState) => { const cellList = state.dataDoc.dataDocById[dataDocId].cells; @@ -782,7 +774,11 @@ const DataDocChartComposerComponent: React.FunctionComponent< dataDOM = (
diff --git a/datahub/webapp/lib/chart/chart-data-transformation.ts b/datahub/webapp/lib/chart/chart-data-transformation.ts index 538dae31f..475f36987 100644 --- a/datahub/webapp/lib/chart/chart-data-transformation.ts +++ b/datahub/webapp/lib/chart/chart-data-transformation.ts @@ -1,6 +1,6 @@ import { cloneDeep, range } from 'lodash'; import { ChartDataAggType } from 'const/dataDocChart'; -import { sortTable } from './chart-utils'; +import { sortTable, getValueDataType } from './chart-utils'; const emptyCellValue = 'No Value'; @@ -228,17 +228,26 @@ function aggregateData( return aggregatedData; } -export function sortData( +export function sortTableWithDefaultIdx( data: any[][], idx: number, ascending: boolean, xIdx: number ) { - const sortIdx = idx ?? (isNaN(data[0][xIdx]) ? undefined : 0); - if (sortIdx != null) { - return sortTable(data, sortIdx, ascending); + if (idx != null) { + // if idx is provided then call sortTable as is + return sortTable(data, idx, ascending); } else { - return data; + // if idx is not provided then default idx to the xIndex of the table + // only sort if the column type for that index is either 'date' 'datetime' or 'number' + if ( + getValueDataType(data[0][xIdx]) === 'string' || + getValueDataType(data[0][xIdx]) === null + ) { + return data; + } else { + return sortTable(data, xIdx, ascending); + } } } @@ -283,6 +292,11 @@ export function transformData( return [ transformedData[0], - ...sortData(transformedData.slice(1), sortIdx, sortAsc, xAxisIdx), + ...sortTableWithDefaultIdx( + transformedData.slice(1), + sortIdx, + sortAsc, + xAxisIdx + ), ]; }