import { gql } from '@apollo/client'; import { capitalize } from '~/utils/string/capitalize'; import { ObjectMetadataItem } from '../types/ObjectMetadataItem'; import { mapFieldMetadataToGraphQLQuery } from './mapFieldMetadataToGraphQLQuery'; export const generateCreateOneObjectMutation = ({ objectMetadataItem, }: { objectMetadataItem: ObjectMetadataItem; }) => { const capitalizedObjectName = capitalize(objectMetadataItem.nameSingular); return gql` mutation CreateOne${capitalizedObjectName}($input: ${capitalizedObjectName}CreateInput!) { create${capitalizedObjectName}(data: $input) { id ${objectMetadataItem.fields .map(mapFieldMetadataToGraphQLQuery) .join('\n')} } } `; };