-
Notifications
You must be signed in to change notification settings - Fork 5
/
index.ts
27 lines (26 loc) · 750 Bytes
/
index.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import {
GraphQLToOpenAPIResult,
GraphQLToOpenAPIConverter,
} from './lib/GraphQLToOpenAPIConverter';
import { Source, IntrospectionQuery } from 'graphql';
export function graphqlToOpenApi({
query,
introspectionSchema,
onUnknownScalar,
scalarConfig,
schema,
}: {
query: string | Source;
introspectionSchema?: IntrospectionQuery;
onUnknownScalar?: (s: string) => object; // eslint-disable-line @typescript-eslint/ban-types
scalarConfig?: { [key: string]: object }; // eslint-disable-line @typescript-eslint/ban-types
schema?: string | Source;
}): GraphQLToOpenAPIResult {
const c = new GraphQLToOpenAPIConverter(
schema,
introspectionSchema,
onUnknownScalar,
scalarConfig
);
return c.toOpenAPI(query);
}