From 1163c16506e257f94e1f0d28a502f5bb8bbd0fed Mon Sep 17 00:00:00 2001 From: Rajat Dabade Date: Thu, 18 Jan 2024 14:14:10 +0530 Subject: [PATCH] [Feat]: added iscolumn in option rendering (#4334) * feat: added iscolumn in option rendering * chore: build failure * fix: build failure --- .../filters/AggregatorFilter/AggregatorFilter.tsx | 1 + .../QueryBuilder/filters/GroupByFilter/GroupByFilter.tsx | 1 + .../filters/QueryBuilderSearch/OptionRenderer.tsx | 6 ++++++ .../QueryBuilder/filters/QueryBuilderSearch/index.tsx | 1 + frontend/src/container/QueryBuilder/type.ts | 1 + frontend/src/hooks/queryBuilder/useOptions.ts | 1 + 6 files changed, 11 insertions(+) diff --git a/frontend/src/container/QueryBuilder/filters/AggregatorFilter/AggregatorFilter.tsx b/frontend/src/container/QueryBuilder/filters/AggregatorFilter/AggregatorFilter.tsx index f27336e96a..b5683f9ced 100644 --- a/frontend/src/container/QueryBuilder/filters/AggregatorFilter/AggregatorFilter.tsx +++ b/frontend/src/container/QueryBuilder/filters/AggregatorFilter/AggregatorFilter.tsx @@ -81,6 +81,7 @@ export const AggregatorFilter = memo(function AggregatorFilter({ }), )} dataType={item.dataType} + isColumn={item.isColumn} /> ), value: `${item.key}${selectValueDivider}${createIdFromObjectFields( diff --git a/frontend/src/container/QueryBuilder/filters/GroupByFilter/GroupByFilter.tsx b/frontend/src/container/QueryBuilder/filters/GroupByFilter/GroupByFilter.tsx index 386786f70c..a3213cb4bc 100644 --- a/frontend/src/container/QueryBuilder/filters/GroupByFilter/GroupByFilter.tsx +++ b/frontend/src/container/QueryBuilder/filters/GroupByFilter/GroupByFilter.tsx @@ -81,6 +81,7 @@ export const GroupByFilter = memo(function GroupByFilter({ }), )} dataType={item.dataType || ''} + isColumn={item.isColumn} /> ), value: `${transformStringWithPrefix({ diff --git a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/OptionRenderer.tsx b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/OptionRenderer.tsx index 32bf8fbd40..94cd2f2b9d 100644 --- a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/OptionRenderer.tsx +++ b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/OptionRenderer.tsx @@ -10,6 +10,7 @@ function OptionRenderer({ label, value, dataType, + isColumn, }: OptionRendererProps): JSX.Element { const optionType = getOptionType(label); @@ -27,6 +28,10 @@ function OptionRenderer({ Data type: {dataType} + + isColumn: + {isColumn ? 'True' : 'False'} + ) : ( @@ -40,6 +45,7 @@ interface OptionRendererProps { label: string; value: string; dataType: string; + isColumn: boolean; } export default OptionRenderer; diff --git a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/index.tsx b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/index.tsx index 975c79a4a8..b4af20c58b 100644 --- a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/index.tsx +++ b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearch/index.tsx @@ -210,6 +210,7 @@ function QueryBuilderSearch({ label={option.label} value={option.value} dataType={option.dataType || ''} + isColumn={option.isColumn || false} /> {option.selected && } diff --git a/frontend/src/container/QueryBuilder/type.ts b/frontend/src/container/QueryBuilder/type.ts index 892330ebdd..69add7d3db 100644 --- a/frontend/src/container/QueryBuilder/type.ts +++ b/frontend/src/container/QueryBuilder/type.ts @@ -15,4 +15,5 @@ export type Option = { label: string; selected?: boolean; dataType?: string; + isColumn?: boolean; }; diff --git a/frontend/src/hooks/queryBuilder/useOptions.ts b/frontend/src/hooks/queryBuilder/useOptions.ts index 322934372c..bc599b0bcc 100644 --- a/frontend/src/hooks/queryBuilder/useOptions.ts +++ b/frontend/src/hooks/queryBuilder/useOptions.ts @@ -44,6 +44,7 @@ export const useOptions = ( label: `${getLabel(item)}`, value: item.key, dataType: item.dataType, + isColumn: item.isColumn, })), [getLabel], );