1de739176c
By default, when custom fields are created, a searchVector field is created based on the "name" field, which is also the label identifier by default. When this label identifier is updated, we want to update the searchVector field to use this field as searchable field instead, if it is of "searchable type" (today it is only possible to select a text or number field as label identifier, while number fields are not searchable).
24 lines
800 B
TypeScript
24 lines
800 B
TypeScript
import { ObjectMetadataItemsQuery } from '~/generated-metadata/graphql';
|
|
|
|
import { ObjectMetadataItem } from '../types/ObjectMetadataItem';
|
|
|
|
export const mapPaginatedObjectMetadataItemsToObjectMetadataItems = ({
|
|
pagedObjectMetadataItems,
|
|
}: {
|
|
pagedObjectMetadataItems: ObjectMetadataItemsQuery | undefined;
|
|
}) => {
|
|
const formattedObjects: ObjectMetadataItem[] =
|
|
pagedObjectMetadataItems?.objects.edges.map((object) => ({
|
|
...object.node,
|
|
fields: object.node.fields.edges.map((field) => field.node),
|
|
indexMetadatas: object.node.indexMetadatas?.edges.map((index) => ({
|
|
...index.node,
|
|
indexFieldMetadatas: index.node.indexFieldMetadatas?.edges.map(
|
|
(indexField) => indexField.node,
|
|
),
|
|
})),
|
|
})) ?? [];
|
|
|
|
return formattedObjects;
|
|
};
|