All files / src/api/getMyOrders index.ts

100% Statements 14/14
100% Branches 2/2
100% Functions 1/1
100% Lines 11/11

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 33  4x 4x 4x 4x             4x 2x 2x               2x   2x         2x     4x  
import { CustomQueryFn, MeQueryInterface } from '../../index';
import defaultQuery from './defaultQuery';
import { buildOrderWhere } from '../../helpers/search';
import gql from 'graphql-tag';
import { getCustomQuery } from '../../helpers/queries';
import ApolloClient from 'apollo-client';
 
interface OrdersData {
  me: Pick<MeQueryInterface, 'orders'>;
}
 
const getOrders = async ({ config, client }, params, customQueryFn?: CustomQueryFn) => {
  const { locale, acceptLanguage } = config;
  const defaultVariables = {
    where: buildOrderWhere(params),
    sort: params.sort,
    limit: params.limit,
    offset: params.offset,
    acceptLanguage,
    locale
  };
  const { query, variables } = getCustomQuery(customQueryFn, { defaultQuery, defaultVariables });
 
  const request = await (client as ApolloClient<any>).query<OrdersData>({
    query: gql`${query}`,
    variables,
    fetchPolicy: 'no-cache'
  });
  return request;
};
 
export default getOrders;