1.3.2 • Published 29 days ago

react-query-lightbase-codegen v1.3.2

Weekly downloads
-
License
MIT
Repository
github
Last release
29 days ago

React Query Code Generation

Generate fully typed react query hooks from OpenAPI specifications.

  • GET requests will automatically generate useQuery hooks together with helper functions

    • getQueryState
    • getQueryData
    • prefetch
    • cancelQueries
    • invalidate
    • refetchStale
  • Override default generation forcing query, mutation or infiniteQuery output

Installation

You can install react-query-lightbase-codegen with NPM or Yarn.

Using NPM:

$ npm i -D react-query-lightbase-codegen 

Using Yarn:

$ yarn add -D react-query-lightbase-codegen

Configuration

create a generateQueries.mjs file in project root folder

// generateQueries.mjs
import { importSpecs } from 'react-query-lightbase-codegen';

importSpecs({
  // folder location of the openapi/swagger documents (yaml or JSON)
  sourceDirectory: './specs',
  // export folder for hooks and schema code generated files
  exportDirectory: './src/generated',
  // api client - as named export labelled 'api'
  apiDirectory: './src/api',
  // React query client directory - names export 'queryClient'
  queryClientDir: './src/api',
});

Code generation

To generate the code generated scheme and react query hooks run the above script

node scripts/generateQueries.mjs

Configuration Options

// generateQueries.mjs
import { importSpecs } from 'react-query-lightbase-codegen';

importSpecs({
  ...
  // Filter out any headers from individual queries (these might be applied globally in the axios instance)
  headerFilters: ['X-Session-Token'],
  overrides: {
    // operationId listed in the openApi spec
    findPetsByStatus: {
      // Override the default query code generation type ('query' | 'mutation' | 'infiniteQuery')
      type: 'query',
    },
  },
});
1.3.2

29 days ago

1.3.1

30 days ago

1.3.0

1 year ago

1.2.0

2 years ago

1.1.1

2 years ago

1.1.8

2 years ago

1.1.7

2 years ago

1.1.6

2 years ago

1.1.5

2 years ago

1.1.4

2 years ago

1.1.3

2 years ago

1.1.2

2 years ago

1.0.2

2 years ago

1.1.0

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago

0.1.10

2 years ago

0.0.20

2 years ago

0.0.21

2 years ago

1.0.6

2 years ago

1.0.5

2 years ago

1.0.4

2 years ago

1.0.3

2 years ago

0.0.18

2 years ago

0.0.19

2 years ago

0.1.0

2 years ago

0.3.0

2 years ago

0.2.1

2 years ago

0.1.2

2 years ago

0.2.0

2 years ago

0.1.1

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.9

2 years ago

0.5.0

2 years ago

0.1.4

2 years ago

0.1.3

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.0.17

2 years ago

0.0.16

2 years ago

0.0.15

2 years ago

0.0.14

2 years ago

0.0.13

2 years ago

0.0.12

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago