mirror of
https://github.com/lingble/twenty.git
synced 2025-10-29 11:52:28 +00:00
Enable array filtering (#8538)
- Set array filtering always enabled - Rename `IS_ARRAY_AND_JSON_FILTER_ENABLED ` TO `IS_JSON_FILTER_ENABLED`.
This commit is contained in:
@@ -24,13 +24,11 @@ export const useColumnDefinitionsFromFieldMetadata = (
|
|||||||
[objectMetadataItem],
|
[objectMetadataItem],
|
||||||
);
|
);
|
||||||
|
|
||||||
const isArrayAndJsonFilterEnabled = useIsFeatureEnabled(
|
const isJsonFilterEnabled = useIsFeatureEnabled('IS_JSON_FILTER_ENABLED');
|
||||||
'IS_ARRAY_AND_JSON_FILTER_ENABLED',
|
|
||||||
);
|
|
||||||
|
|
||||||
const filterDefinitions = formatFieldMetadataItemsAsFilterDefinitions({
|
const filterDefinitions = formatFieldMetadataItemsAsFilterDefinitions({
|
||||||
fields: activeFieldMetadataItems,
|
fields: activeFieldMetadataItems,
|
||||||
isArrayAndJsonFilterEnabled,
|
isJsonFilterEnabled,
|
||||||
});
|
});
|
||||||
|
|
||||||
const sortDefinitions = formatFieldMetadataItemsAsSortDefinitions({
|
const sortDefinitions = formatFieldMetadataItemsAsSortDefinitions({
|
||||||
|
|||||||
@@ -8,10 +8,10 @@ import { ObjectMetadataItem } from '../types/ObjectMetadataItem';
|
|||||||
|
|
||||||
export const formatFieldMetadataItemsAsFilterDefinitions = ({
|
export const formatFieldMetadataItemsAsFilterDefinitions = ({
|
||||||
fields,
|
fields,
|
||||||
isArrayAndJsonFilterEnabled,
|
isJsonFilterEnabled,
|
||||||
}: {
|
}: {
|
||||||
fields: Array<ObjectMetadataItem['fields'][0]>;
|
fields: Array<ObjectMetadataItem['fields'][0]>;
|
||||||
isArrayAndJsonFilterEnabled: boolean;
|
isJsonFilterEnabled: boolean;
|
||||||
}): FilterDefinition[] => {
|
}): FilterDefinition[] => {
|
||||||
return fields.reduce((acc, field) => {
|
return fields.reduce((acc, field) => {
|
||||||
if (
|
if (
|
||||||
@@ -40,9 +40,8 @@ export const formatFieldMetadataItemsAsFilterDefinitions = ({
|
|||||||
FieldMetadataType.Rating,
|
FieldMetadataType.Rating,
|
||||||
FieldMetadataType.Actor,
|
FieldMetadataType.Actor,
|
||||||
FieldMetadataType.Phones,
|
FieldMetadataType.Phones,
|
||||||
...(isArrayAndJsonFilterEnabled
|
FieldMetadataType.Array,
|
||||||
? [FieldMetadataType.Array, FieldMetadataType.RawJson]
|
...(isJsonFilterEnabled ? [FieldMetadataType.RawJson] : []),
|
||||||
: []),
|
|
||||||
].includes(field.type)
|
].includes(field.type)
|
||||||
) {
|
) {
|
||||||
return acc;
|
return acc;
|
||||||
|
|||||||
@@ -20,15 +20,13 @@ export const useQueryVariablesFromActiveFieldsOfViewOrDefaultView = ({
|
|||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
});
|
});
|
||||||
|
|
||||||
const isArrayAndJsonFilterEnabled = useIsFeatureEnabled(
|
const isJsonFilterEnabled = useIsFeatureEnabled('IS_JSON_FILTER_ENABLED');
|
||||||
'IS_ARRAY_AND_JSON_FILTER_ENABLED',
|
|
||||||
);
|
|
||||||
|
|
||||||
const { filter, orderBy } = getQueryVariablesFromView({
|
const { filter, orderBy } = getQueryVariablesFromView({
|
||||||
fieldMetadataItems: activeFieldMetadataItems,
|
fieldMetadataItems: activeFieldMetadataItems,
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
view,
|
view,
|
||||||
isArrayAndJsonFilterEnabled,
|
isJsonFilterEnabled,
|
||||||
});
|
});
|
||||||
|
|
||||||
return {
|
return {
|
||||||
|
|||||||
@@ -13,12 +13,12 @@ export const getQueryVariablesFromView = ({
|
|||||||
view,
|
view,
|
||||||
fieldMetadataItems,
|
fieldMetadataItems,
|
||||||
objectMetadataItem,
|
objectMetadataItem,
|
||||||
isArrayAndJsonFilterEnabled,
|
isJsonFilterEnabled,
|
||||||
}: {
|
}: {
|
||||||
view: View | null | undefined;
|
view: View | null | undefined;
|
||||||
fieldMetadataItems: FieldMetadataItem[];
|
fieldMetadataItems: FieldMetadataItem[];
|
||||||
objectMetadataItem: ObjectMetadataItem;
|
objectMetadataItem: ObjectMetadataItem;
|
||||||
isArrayAndJsonFilterEnabled: boolean;
|
isJsonFilterEnabled: boolean;
|
||||||
}) => {
|
}) => {
|
||||||
if (!isDefined(view)) {
|
if (!isDefined(view)) {
|
||||||
return {
|
return {
|
||||||
@@ -31,7 +31,7 @@ export const getQueryVariablesFromView = ({
|
|||||||
|
|
||||||
const filterDefinitions = formatFieldMetadataItemsAsFilterDefinitions({
|
const filterDefinitions = formatFieldMetadataItemsAsFilterDefinitions({
|
||||||
fields: fieldMetadataItems,
|
fields: fieldMetadataItems,
|
||||||
isArrayAndJsonFilterEnabled,
|
isJsonFilterEnabled,
|
||||||
});
|
});
|
||||||
|
|
||||||
const sortDefinitions = formatFieldMetadataItemsAsSortDefinitions({
|
const sortDefinitions = formatFieldMetadataItemsAsSortDefinitions({
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ export type FeatureFlagKey =
|
|||||||
| 'IS_ANALYTICS_V2_ENABLED'
|
| 'IS_ANALYTICS_V2_ENABLED'
|
||||||
| 'IS_SSO_ENABLED'
|
| 'IS_SSO_ENABLED'
|
||||||
| 'IS_UNIQUE_INDEXES_ENABLED'
|
| 'IS_UNIQUE_INDEXES_ENABLED'
|
||||||
| 'IS_ARRAY_AND_JSON_FILTER_ENABLED'
|
| 'IS_JSON_FILTER_ENABLED'
|
||||||
| 'IS_MICROSOFT_SYNC_ENABLED'
|
| 'IS_MICROSOFT_SYNC_ENABLED'
|
||||||
| 'IS_ADVANCED_FILTERS_ENABLED'
|
| 'IS_ADVANCED_FILTERS_ENABLED'
|
||||||
| 'IS_AGGREGATE_QUERY_ENABLED';
|
| 'IS_AGGREGATE_QUERY_ENABLED';
|
||||||
|
|||||||
Reference in New Issue
Block a user