diff --git a/frontend/src/container/QueryBuilder/components/Query/Query.tsx b/frontend/src/container/QueryBuilder/components/Query/Query.tsx index f1ce6aeaa8..23c5f09528 100644 --- a/frontend/src/container/QueryBuilder/components/Query/Query.tsx +++ b/frontend/src/container/QueryBuilder/components/Query/Query.tsx @@ -453,7 +453,7 @@ export const Query = memo(function Query({ )} - {[DataSource.LOGS, DataSource.TRACES].includes(query.dataSource) ? ( + {query.dataSource === DataSource.LOGS ? ( void; currentFilterItem?: ITag; - isLogsDataSource: boolean; } export default function QueryBuilderSearchDropdown( @@ -40,14 +38,11 @@ export default function QueryBuilderSearchDropdown( exampleQueries, options, onChange, - isLogsDataSource, } = props; const userOs = getUserOperatingSystem(); return ( <> -
+
{!currentFilterItem?.key ? (
Suggested Filters
) : !currentFilterItem?.op ? ( diff --git a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.styles.scss b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.styles.scss index 49f04baf0e..c7a96456e9 100644 --- a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.styles.scss +++ b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.styles.scss @@ -11,11 +11,6 @@ .rc-virtual-list-holder { height: 115px; } - &.non-logs-data-source { - .rc-virtual-list-holder { - height: 256px; - } - } } } diff --git a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.tsx b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.tsx index 322432e6e8..f85b41b209 100644 --- a/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.tsx +++ b/frontend/src/container/QueryBuilder/filters/QueryBuilderSearchV2/QueryBuilderSearchV2.tsx @@ -689,29 +689,12 @@ function QueryBuilderSearchV2( })), ); } else { - setDropdownOptions([ - // Add user typed option if it doesn't exist in the payload - ...(!isEmpty(tagKey) && - !data?.payload?.attributeKeys?.some((val) => isEqual(val.key, tagKey)) - ? [ - { - label: tagKey, - value: { - key: tagKey, - dataType: DataTypes.EMPTY, - type: '', - isColumn: false, - isJSON: false, - }, - }, - ] - : []), - // Map existing attribute keys from payload - ...(data?.payload?.attributeKeys?.map((key) => ({ + setDropdownOptions( + data?.payload?.attributeKeys?.map((key) => ({ label: key.key, value: key, - })) || []), - ]); + })) || [], + ); } } if (currentState === DropdownState.OPERATOR) { @@ -981,7 +964,6 @@ function QueryBuilderSearchV2( exampleQueries={suggestionsData?.payload?.example_queries || []} tags={tags} currentFilterItem={currentFilterItem} - isLogsDataSource={isLogsDataSource} /> )} > diff --git a/frontend/src/hooks/queryBuilder/useOptions.ts b/frontend/src/hooks/queryBuilder/useOptions.ts index e990f789de..7f50f1881b 100644 --- a/frontend/src/hooks/queryBuilder/useOptions.ts +++ b/frontend/src/hooks/queryBuilder/useOptions.ts @@ -170,7 +170,11 @@ export const useOptions = ( (option, index, self) => index === self.findIndex( - (o) => o.label === option.label && o.value === option.value, // to remove duplicate & empty options from list + (o) => + // to remove duplicate & empty options from list + o.label === option.label && + o.value === option.value && + o.dataType?.toLowerCase() === option.dataType?.toLowerCase(), // handle case sensitivity ) && option.value !== '', ) || [] ).map((option) => {