import gql from 'graphql-tag' import { postFragment, commentFragment, postCountsFragment } from './Fragments' export default i18n => { const lang = i18n.locale().toUpperCase() return gql` ${postFragment(lang)} ${postCountsFragment} ${commentFragment(lang)} query Post($id: ID!) { Post(id: $id) { ...post ...postCounts comments(orderBy: createdAt_asc) { ...comment } } } ` } export const filterPosts = i18n => { const lang = i18n.locale().toUpperCase() return gql` ${postFragment(lang)} ${postCountsFragment} query Post($filter: _PostFilter, $first: Int, $offset: Int, $orderBy: [_PostOrdering]) { Post(filter: $filter, first: $first, offset: $offset, orderBy: $orderBy) { ...post ...postCounts } } ` } export const profilePagePosts = i18n => { const lang = i18n.locale().toUpperCase() return gql` ${postFragment(lang)} ${postCountsFragment} query profilePagePosts( $filter: _PostFilter $first: Int $offset: Int $orderBy: [_PostOrdering] ) { profilePagePosts(filter: $filter, first: $first, offset: $offset, orderBy: $orderBy) { ...post ...postCounts } } ` } export const PostsEmotionsByCurrentUser = () => { return gql` query PostsEmotionsByCurrentUser($postId: ID!) { PostsEmotionsByCurrentUser(postId: $postId) } ` } export const relatedContributions = i18n => { const lang = i18n.locale().toUpperCase() return gql` ${postFragment(lang)} ${postCountsFragment} query Post($slug: String!) { Post(slug: $slug) { ...post ...postCounts relatedContributions(first: 2) { ...post ...postCounts } } } ` }