{-# LANGUAGE DeriveGeneric #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE MultiParamTypeClasses #-} {-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeFamilies #-} {-# LANGUAGE TypeOperators #-} {-# LANGUAGE TypeSynonymInstances #-} module Data.Morpheus.Schema.Schema ( Root(..) , Root__typeArgs(..) , S__Schema(..) , S__Type(..) , S__Field(..) , S__EnumValue(..) , S__InputValue(..) ) where import Data.Text (Text) -- MORPHEUS import Data.Morpheus.Execution.Document.Compile (gqlDocumentNamespace) import Data.Morpheus.Schema.TypeKind (TypeKind) type S__TypeKind = TypeKind [gqlDocumentNamespace| type __Schema { types: [__Type!]! queryType: __Type! mutationType: __Type subscriptionType: __Type directives: [__Directive!]! } type __Type { kind: __TypeKind! name: String description: String # OBJECT and INTERFACE only fields(includeDeprecated: Boolean ): [__Field!] # OBJECT only interfaces: [__Type!] # INTERFACE and UNION only possibleTypes: [__Type!] # ENUM only enumValues(includeDeprecated: Boolean): [__EnumValue!] # INPUT_OBJECT only inputFields: [__InputValue!] # NON_NULL and LIST only ofType: __Type } type __Field { name: String! description: String args: [__InputValue!]! type: __Type! isDeprecated: Boolean! deprecationReason: String } type __InputValue { name: String! description: String type: __Type! defaultValue: String } type __EnumValue { name: String! description: String isDeprecated: Boolean! deprecationReason: String } type __Directive { name: String! description: String locations: [__DirectiveLocation!]! args: [__InputValue!]! } enum __DirectiveLocation { QUERY MUTATION SUBSCRIPTION FIELD FRAGMENT_DEFINITION FRAGMENT_SPREAD INLINE_FRAGMENT VARIABLE_DEFINITION SCHEMA SCALAR OBJECT FIELD_DEFINITION ARGUMENT_DEFINITION INTERFACE UNION ENUM ENUM_VALUE INPUT_OBJECT INPUT_FIELD_DEFINITION } type Root { __type(name: String!): __Type __schema : __Schema! } |]