{"version":3,"file":"index.cjs","sources":["../src/index.ts"],"sourcesContent":["import { BaseQueryFn } from \"@reduxjs/toolkit/query/react\";\nimport { DocumentNode } from \"graphql\";\nimport { GraphQLClient, ClientError } from \"graphql-request\";\n\ntype P = Parameters<GraphQLClient[\"request\"]>;\nexport type Document = P[0];\nexport type Variables = P[1];\nexport type RequestHeaders = P[2];\n\nexport const graphqlRequestBaseQuery = (\n  options:\n    | { url: string; requestHeaders?: RequestHeaders }\n    | { client: GraphQLClient }\n): BaseQueryFn<\n  { document: string | DocumentNode; variables?: any },\n  unknown,\n  Pick<ClientError, \"name\" | \"message\" | \"stack\">,\n  Partial<Pick<ClientError, \"request\" | \"response\">>\n> => {\n  const client =\n    \"client\" in options ? options.client : new GraphQLClient(options.url);\n  if (\"requestHeaders\" in options) {\n    client.setHeaders(options.requestHeaders);\n  }\n  return async ({ document, variables }) => {\n    try {\n      return { data: await client.request(document, variables), meta: {} };\n    } catch (error) {\n      if (error instanceof ClientError) {\n        const { name, message, stack, request, response } = error;\n        return { error: { name, message, stack }, meta: { request, response } };\n      }\n      throw error;\n    }\n  };\n};\n"],"names":["options","client","GraphQLClient","url","setHeaders","requestHeaders","document","variables","request","data","meta","error","ClientError","name","message","stack","response"],"mappings":"iEASuC,SACrCA,GASA,IAAMC,EACJ,WAAYD,EAAUA,EAAQC,OAAS,IAAIC,gBAAcF,EAAQG,KAInE,MAHI,mBAAoBH,GACtBC,EAAOG,WAAWJ,EAAQK,gCAEZC,IAAAA,SAAUC,IAAAA,6EAEDN,EAAOO,QAAQF,EAAUC,qBAA9C,MAAO,CAAEE,OAAiDC,KAAM,2EACzDC,GACP,GAAIA,aAAiBC,cAEnB,MAAO,CAAED,MAAO,CAAEE,KADkCF,EAA5CE,KACgBC,QAD4BH,EAAtCG,QACmBC,MADmBJ,EAA7BI,OACmBL,KAAM,CAAEF,QADEG,EAAtBH,QAC6BQ,SADPL,EAAbK,WAGzC,MAAML,KARV"}