{-# LANGUAGE ConstraintKinds #-} {-# LANGUAGE DataKinds #-} {-# LANGUAGE DuplicateRecordFields #-} {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE NoImplicitPrelude #-} module Data.Morpheus.Core ( Config (..), RenderGQL (..), SelectionTree (..), VALIDATION_MODE (..), ValidateSchema (..), debugConfig, defaultConfig, internalSchema, parseFullSchema, parseRequest, parseRequestWith, parseSchema, parseTypeDefinitions, render, validateRequest, parseDefinitions, ) where import Data.ByteString.Lazy.Char8 ( ByteString, ) import Data.Morpheus.Ext.Result ( GQLResult, ) import Data.Morpheus.Internal.Utils ( (<:>), ) import Data.Morpheus.Parser ( parseDefinitions, parseRequest, parseRequestWith, parseSchema, parseTypeDefinitions, ) import Data.Morpheus.Rendering.RenderGQL ( RenderGQL (..), render, ) import Data.Morpheus.Schema.Schema ( internalSchema, ) import Data.Morpheus.Types.Internal.AST ( Schema, VALID, ) import Data.Morpheus.Types.Internal.Config ( Config (..), VALIDATION_MODE (..), debugConfig, defaultConfig, ) import Data.Morpheus.Types.SelectionTree ( SelectionTree (..), ) import Data.Morpheus.Validation.Document.Validation ( ValidateSchema (..), ) import Data.Morpheus.Validation.Query.Validation ( validateRequest, ) import Relude hiding (ByteString) parseFullSchema :: ByteString -> GQLResult (Schema VALID) parseFullSchema :: ByteString -> GQLResult (Schema VALID) parseFullSchema = ByteString -> GQLResult (Schema VALID) parseSchema forall (m :: * -> *) a b c. Monad m => (a -> m b) -> (b -> m c) -> a -> m c >=> (forall (s :: Stage). Schema s internalSchema forall (m :: * -> *) a. (Merge (HistoryT m) a, Monad m) => a -> a -> m a <:>)