@pricemoov-oss/moon-graphql
TypeScript icon, indicating that this package has built-in type declarations

1.1.0 • Public • Published

@pricemoov-oss/moon-graphql

The power of react-query with graphql

@pricemoov-oss/moon is the graphql HTTP client for Moon.

Installation

npm install @pricemoov-oss/moon @pricemoov-oss/moon-graphql react-query graphql graphql-request --save

Usage

Please see the Moon doc for more details.

import { MoonProvider, ILink } from "@pricemoov-oss/moon";
import graphqlClientFactory from "@pricemoov-oss/moon-graphql";

function successHandler(response){...};

function setLanguage(config: RequestInit): RequestInit {
  return {
    ...config,
    headers: {
      ...config.headers,
      "Accept-Language": "en"
    }
  };
}

const requestInterceptors = [{ onFulfilled: setLanguage }];

const responseInterceptors = [{ onFulfilled: successHandler }];


const links: ILink<GraphqlInstance, GraphqlRequestConfig, GraphqlResponse>[] = [
  {
    id: "FOO",
    config: { baseURL: "http://foo.com" }, // RequestInit
    interceptors: { request: requestInterceptors, response: responseInterceptors }
  }
];

const App = () => {
  return (
    <MoonProvider links={links} clientFactory={graphqlClientFactory}>
      <MyComponent />
    </MoonProvider>
  );
};

Once your MoonProvider is hooked up, you're ready to start requesting !

/@pricemoov-oss/moon-graphql/

    Package Sidebar

    Install

    npm i @pricemoov-oss/moon-graphql

    Weekly Downloads

    2

    Version

    1.1.0

    License

    Apache-2.0

    Unpacked Size

    135 kB

    Total Files

    40

    Last publish

    Collaborators

    • osspricemoov