All files / server/gql/articles/queries Article.ts

0% Statements 0/10
100% Branches 0/0
100% Functions 0/0
0% Lines 0/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28                                                       
import { GraphQLNonNull, GraphQLString } from 'graphql';
import { IArticle } from '../../../../shared';
import { ArticleStatuses } from '../../../../shared/ArticleStatuses';
import getArticle from '../../../articles/getArticle';
import GraphQLArticle from '../outputs/Article';
 
export default {
  type: GraphQLArticle,
  args: {
    slug: {
      type: new GraphQLNonNull(GraphQLString),
    },
  },
  resolve: async (
    parent: any,
    { slug }: any,
  ): Promise<IArticle | undefined> => {
    const article = await getArticle({
      slug,
      status: ArticleStatuses.published,
    });
    if (!article) {
      throw new Error('Článek nenalezen');
    }
    return article;
  },
};