All files / server/gql/articles/mutations ChangeArticleStatus.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 29 30 31 32                                                               
import { GraphQLInt, GraphQLNonNull, GraphQLString } from 'graphql';
import { ArticleStatuses } from '../../../../shared/ArticleStatuses';
import { changeArticleStatusPermissions } from '../../../../shared/permissions';
import { isAuthorized } from '../../../api/cognito';
import changeArticleStatus from '../../../articles/changeArticleStatus';
import GraphqlArticle from '../outputs/Article';
 
interface IArgs {
  _id: string;
  status: ArticleStatuses;
}
 
export default {
  type: GraphqlArticle,
  args: {
    _id: {
      type: new GraphQLNonNull(GraphQLString),
    },
    status: {
      type: new GraphQLNonNull(GraphQLInt),
    },
  },
  resolve: async (
    parent: any,
    { _id, status }: IArgs,
    request: Request,
  ): Promise<any> => {
    isAuthorized(request, changeArticleStatusPermissions);
    return changeArticleStatus(_id, status);
  },
};