npm.io
0.1.3 • Published 2 years ago

openapi-axios-query

Licence
ISC
Version
0.1.3
Deps
0
Size
33 kB
Vulns
0
Weekly
0

Usage

Generate paths with openapi-typescript. Then you can create a client.

import axios from "axios";
import { paths } from "./schema";
import { createClient } from "openapi-axios-query";
import { QueryClient } from "@tanstack/react-query";

const queryClient = new QueryClient();

const client = createClient<paths>({
  baseURL: "https://api.my-website.com",
  axios,
  context: queryClient,
});

// Use typed axios
const response = await client.axios("/v1/my-api");

// Or use typed query
const { data } = client.useQuery({
  url: "/v1/my-api",
  options: {},
});

// Or typed query helpers
const { invalidateQueries } = client.useQueryHelpers();
invalidateQueries({ queryKey: ["/v1/my-api"] }),

Keywords