refactor: merge FieldType and FieldMetadataType (#4504)

* refactor: merge FieldType and FieldMetadataType

* fix: fix args passed to assertFieldMetadata

* fix: omit RawJson from supported types in settings
This commit is contained in:
Thaïs
2024-03-25 15:45:28 +01:00
committed by GitHub
parent 9e70f5b650
commit b77d589497
39 changed files with 116 additions and 119 deletions

View File

@ -1,11 +1,10 @@
import { ApolloClient, useMutation } from '@apollo/client';
import { getOperationName } from '@apollo/client/utilities';
import { FieldType } from '@/object-record/record-field/types/FieldType';
import {
CreateFieldInput,
CreateOneFieldMetadataItemMutation,
CreateOneFieldMetadataItemMutationVariables,
FieldMetadataType,
} from '~/generated-metadata/graphql';
import { CREATE_ONE_FIELD_METADATA_ITEM } from '../graphql/mutations';
@ -13,13 +12,6 @@ import { FIND_MANY_OBJECT_METADATA_ITEMS } from '../graphql/queries';
import { useApolloMetadataClient } from './useApolloMetadataClient';
type CreateOneFieldMetadataItemArgs = Omit<
CreateOneFieldMetadataItemMutationVariables['input']['field'],
'type'
> & {
type: FieldType;
};
export const useCreateOneFieldMetadataItem = () => {
const apolloMetadataClient = useApolloMetadataClient();
@ -30,16 +22,11 @@ export const useCreateOneFieldMetadataItem = () => {
client: apolloMetadataClient ?? ({} as ApolloClient<any>),
});
const createOneFieldMetadataItem = async (
input: CreateOneFieldMetadataItemArgs,
) => {
const createOneFieldMetadataItem = async (input: CreateFieldInput) => {
return await mutate({
variables: {
input: {
field: {
...input,
type: input.type as FieldMetadataType, // Todo improve typing once we have aligned backend and frontend
},
field: input,
},
},
awaitRefetchQueries: true,

View File

@ -1,6 +1,5 @@
import { v4 } from 'uuid';
import { FieldType } from '@/object-record/record-field/types/FieldType';
import { Field } from '~/generated/graphql';
import { FieldMetadataType } from '~/generated-metadata/graphql';
@ -29,7 +28,7 @@ export const useFieldMetadataItem = () => {
...formatFieldMetadataItemInput(input),
defaultValue: input.defaultValue,
objectMetadataId: input.objectMetadataId,
type: input.type as FieldType,
type: input.type,
});
const editMetadataField = (