* Finished renaming and scope * wip * WIP update * Ok * Cleaned * Finished infinite scroll * Clean * Fixed V1 tables * Fix post merge * Removed ScrollWrapper * Put back ScrollWrapper * Put back in the right place
43 lines
1.1 KiB
TypeScript
43 lines
1.1 KiB
TypeScript
import { gql } from '@apollo/client';
|
|
|
|
import { capitalize } from '~/utils/string/capitalize';
|
|
|
|
import { ObjectMetadataItem } from '../types/ObjectMetadataItem';
|
|
|
|
import { mapFieldMetadataToGraphQLQuery } from './mapFieldMetadataToGraphQLQuery';
|
|
|
|
export const generateFindManyCustomObjectsQuery = ({
|
|
objectMetadataItem,
|
|
}: {
|
|
objectMetadataItem: ObjectMetadataItem;
|
|
}) => {
|
|
return gql`
|
|
query FindMany${capitalize(
|
|
objectMetadataItem.namePlural,
|
|
)}($filter: ${capitalize(
|
|
objectMetadataItem.nameSingular,
|
|
)}FilterInput, $orderBy: ${capitalize(
|
|
objectMetadataItem.nameSingular,
|
|
)}OrderByInput, $lastCursor: String) {
|
|
${
|
|
objectMetadataItem.namePlural
|
|
}(filter: $filter, orderBy: $orderBy, first: 30, after: $lastCursor){
|
|
edges {
|
|
node {
|
|
id
|
|
${objectMetadataItem.fields
|
|
.map(mapFieldMetadataToGraphQLQuery)
|
|
.join('\n')}
|
|
}
|
|
cursor
|
|
}
|
|
pageInfo {
|
|
hasNextPage
|
|
startCursor
|
|
endCursor
|
|
}
|
|
}
|
|
}
|
|
`;
|
|
};
|