@graphql-codegen/flow
Version:
GraphQL Code Generator plugin for generating Flow types
22 lines (21 loc) • 902 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.plugin = void 0;
const tslib_1 = require("tslib");
const plugin_helpers_1 = require("@graphql-codegen/plugin-helpers");
const visitor_js_1 = require("./visitor.js");
tslib_1.__exportStar(require("./visitor.js"), exports);
tslib_1.__exportStar(require("./flow-variables-to-object.js"), exports);
const plugin = (schema, documents, config) => {
const header = `// @flow\n`;
const astNode = (0, plugin_helpers_1.getCachedDocumentNodeFromSchema)(schema);
const visitor = new visitor_js_1.FlowVisitor(schema, config);
const visitorResult = (0, plugin_helpers_1.oldVisit)(astNode, {
leave: visitor,
});
return {
prepend: [header, ...visitor.getEnumsImports()],
content: [visitor.scalarsDefinition, ...visitorResult.definitions].join('\n'),
};
};
exports.plugin = plugin;