@graphql-codegen/flow
Version:
GraphQL Code Generator plugin for generating Flow types
17 lines (16 loc) • 662 B
JavaScript
import { getCachedDocumentNodeFromSchema, oldVisit, } from '@graphql-codegen/plugin-helpers';
import { FlowVisitor } from './visitor.js';
export * from './visitor.js';
export * from './flow-variables-to-object.js';
export const plugin = (schema, documents, config) => {
const header = `// @flow\n`;
const astNode = getCachedDocumentNodeFromSchema(schema);
const visitor = new FlowVisitor(schema, config);
const visitorResult = oldVisit(astNode, {
leave: visitor,
});
return {
prepend: [header, ...visitor.getEnumsImports()],
content: [visitor.scalarsDefinition, ...visitorResult.definitions].join('\n'),
};
};