module Hasura.RQL.DDL.GraphqlSchemaIntrospection ( runSetGraphqlSchemaIntrospectionOptions, ) where import Control.Lens ((.~)) import Hasura.Base.Error import Hasura.EncJSON import Hasura.Prelude import Hasura.RQL.Types.Common import Hasura.RQL.Types.GraphqlSchemaIntrospection import Hasura.RQL.Types.Metadata import Hasura.RQL.Types.Metadata.Instances () import Hasura.RQL.Types.SchemaCache.Build runSetGraphqlSchemaIntrospectionOptions :: (MonadError QErr m, MetadataM m, CacheRWM m) => SetGraphqlIntrospectionOptions -> m EncJSON runSetGraphqlSchemaIntrospectionOptions :: forall (m :: * -> *). (MonadError QErr m, MetadataM m, CacheRWM m) => SetGraphqlIntrospectionOptions -> m EncJSON runSetGraphqlSchemaIntrospectionOptions SetGraphqlIntrospectionOptions introspectionOptions = do let metadataModifier :: MetadataModifier metadataModifier = (Metadata -> Metadata) -> MetadataModifier MetadataModifier ((Metadata -> Metadata) -> MetadataModifier) -> (Metadata -> Metadata) -> MetadataModifier forall a b. (a -> b) -> a -> b $ (SetGraphqlIntrospectionOptions -> Identity SetGraphqlIntrospectionOptions) -> Metadata -> Identity Metadata Lens' Metadata SetGraphqlIntrospectionOptions metaSetGraphqlIntrospectionOptions ((SetGraphqlIntrospectionOptions -> Identity SetGraphqlIntrospectionOptions) -> Metadata -> Identity Metadata) -> SetGraphqlIntrospectionOptions -> Metadata -> Metadata forall s t a b. ASetter s t a b -> b -> s -> t .~ SetGraphqlIntrospectionOptions introspectionOptions m () -> m () forall (m :: * -> *) a. (QErrM m, CacheRM m) => m a -> m a withNewInconsistentObjsCheck (m () -> m ()) -> m () -> m () forall a b. (a -> b) -> a -> b $ MetadataModifier -> m () forall (m :: * -> *). (MetadataM m, CacheRWM m) => MetadataModifier -> m () buildSchemaCache MetadataModifier metadataModifier EncJSON -> m EncJSON forall a. a -> m a forall (m :: * -> *) a. Monad m => a -> m a return EncJSON successMsg