Files
commerce/framework/woocommerce/api/utils/fetch-graphql-api.ts
2021-09-18 19:32:40 +03:00

30 lines
619 B
TypeScript

import type { GraphQLFetcher } from '@commerce/api'
import fetch from './fetch'
import { API_URL } from '../../const'
import { getError } from '../../utils/handle-fetch-response'
const fetchGraphqlApi: GraphQLFetcher = async (
query: string,
{ variables } = {},
fetchOptions
) => {
const res = await fetch(API_URL, {
...fetchOptions,
method: 'POST',
headers: {
...fetchOptions?.headers,
'Content-Type': 'application/json',
},
body: JSON.stringify({
query,
variables,
}),
})
const result = await res.json()
return result
}
export default fetchGraphqlApi