import {
GraphQLList,
GraphQLNonNull,
GraphQLObjectType,
} from '../type/definition.js';
import { GraphQLString } from '../type/scalars.js';
import { GraphQLSchema } from '../type/schema.js';
const Mutation = new GraphQLObjectType({
name: 'Mutation',
fields: {
name: {
type: new GraphQLNonNull(GraphQLString),
},
geneSequence: {
type: new GraphQLNonNull(GraphQLString),
},
},
});
const Virus = new GraphQLObjectType({
name: 'Virus',
fields: {
name: {
type: new GraphQLNonNull(GraphQLString),
},
knownMutations: {
type: new GraphQLNonNull(new GraphQLList(new GraphQLNonNull(Mutation))),
},
},
});
const Query = new GraphQLObjectType({
name: 'Query',
fields: {
viruses: {
type: new GraphQLList(new GraphQLNonNull(Virus)),
},
},
});
export const viralSchema = new GraphQLSchema({
query: Query,
});