polen
Version:
A framework for delightful GraphQL developer portals
22 lines • 779 B
JavaScript
import { Grafaid } from '#lib/grafaid/index';
import { create } from '../codec.js';
export const GraphQLSchema = create({
name: `GraphQLSchema`,
transformer: {
isApplicable: (value) => value instanceof Grafaid.Schema.Schema,
serialize: value => {
const sdl = Grafaid.Schema.print(value);
if (sdl === ``) {
const astJson = JSON.stringify(Grafaid.Schema.AST.empty);
return astJson;
}
const ast = Grafaid.Schema.AST.parse(sdl);
const astJson = JSON.stringify(ast);
return astJson;
},
deserialize: astJson => {
return Grafaid.Schema.fromAST(JSON.parse(astJson));
},
},
});
//# sourceMappingURL=graphql-schema.js.map