{-# LANGUAGE NamedFieldPuns #-} {-# LANGUAGE OverloadedStrings #-} module Data.Morpheus.Error.Utils ( errorMessage, globalErrorMessage, badRequestError, ) where import Data.ByteString.Lazy.Char8 ( ByteString, pack, ) import Data.Morpheus.Types.Internal.AST.Base ( GQLError (..), GQLErrors, Message, Position (..), ) import Data.Semigroup ((<>)) errorMessage :: Position -> Message -> GQLErrors errorMessage position message = [GQLError {message, locations = [position]}] globalErrorMessage :: Message -> GQLErrors globalErrorMessage message = [GQLError {message, locations = []}] badRequestError :: String -> ByteString badRequestError = ("Bad Request. Could not decode Request body: " <>) . pack