Add relation metadata seed (#2431)

* Add relation metadata seed

* Fix

* Add filtering by relation id on server

* Fix
This commit is contained in:
Charles Bochet
2023-11-10 23:53:07 +01:00
committed by GitHub
parent 73db5eb35d
commit 130a68dd26
29 changed files with 645 additions and 379 deletions
@@ -1,8 +1,8 @@
import { IconComponent } from '@/ui/display/icon/types/IconComponent';
import { FieldMetadata } from '@/ui/object/field/types/FieldMetadata';
import { ColumnDefinition } from '@/ui/object/record-table/types/ColumnDefinition';
import { Field } from '~/generated-metadata/graphql';
import { FieldMetadataItem } from '../types/FieldMetadataItem';
import { ObjectMetadataItem } from '../types/ObjectMetadataItem';
import { parseFieldType } from './parseFieldType';
@@ -14,7 +14,7 @@ export const formatFieldMetadataItemAsColumnDefinition = ({
icons,
}: {
position: number;
field: Field;
field: FieldMetadataItem;
objectMetadataItem: Omit<ObjectMetadataItem, 'fields'>;
icons: Record<string, IconComponent>;
}): ColumnDefinition<FieldMetadata> => ({
@@ -1,7 +1,8 @@
import { FieldType } from '@/ui/object/field/types/FieldType';
import { Field } from '~/generated/graphql';
export const mapFieldMetadataToGraphQLQuery = (field: Field) => {
import { FieldMetadataItem } from '../types/FieldMetadataItem';
export const mapFieldMetadataToGraphQLQuery = (field: FieldMetadataItem) => {
// TODO: parse
const fieldType = field.type as FieldType;
@@ -24,6 +25,26 @@ export const mapFieldMetadataToGraphQLQuery = (field: Field) => {
if (fieldIsSimpleValue) {
return field.name;
} else if (
fieldType === 'RELATION' &&
field.toRelationMetadata?.relationType === 'ONE_TO_MANY'
) {
return `${field.name}
{
id
}`;
} else if (
fieldType === 'RELATION' &&
field.fromRelationMetadata?.relationType === 'ONE_TO_MANY'
) {
return `${field.name}
{
edges {
node {
id
}
}
}`;
} else if (fieldIsURL) {
return `
${field.name}