graphql-engine-1.0.0: GraphQL API over Postgres
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hasura.RQL.Types.Webhook.Transform

Synopsis

Documentation

data MetadataResponseTransform Source #

Instances

Instances details
FromJSON MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

ToJSON MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

HasCodec MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Generic MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Associated Types

type Rep MetadataResponseTransform :: Type -> Type #

Show MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

NFData MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Eq MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep MetadataResponseTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep MetadataResponseTransform = D1 ('MetaData "MetadataResponseTransform" "Hasura.RQL.Types.Webhook.Transform" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "MetadataResponseTransform" 'PrefixI 'True) (S1 ('MetaSel ('Just "mrtVersion") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Version) :*: (S1 ('MetaSel ('Just "mrtBodyTransform") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (Maybe BodyTransformFn)) :*: S1 ('MetaSel ('Just "mrtTemplatingEngine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TemplatingEngine))))

data RequestTransform Source #

RequestTransform is the metadata representation of a request transformation. It consists of a record of higher kinded data (HKD) along with some regular data. We seperate the HKD data into its own record field called requestFields which we nest inside our non-HKD record. The actual transformation operations are contained in the HKD.

Instances

Instances details
FromJSON RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

ToJSON RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

HasCodec RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Generic RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Associated Types

type Rep RequestTransform :: Type -> Type #

Show RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

NFData RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Methods

rnf :: RequestTransform -> () #

Eq RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep RequestTransform Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep RequestTransform = D1 ('MetaData "RequestTransform" "Hasura.RQL.Types.Webhook.Transform" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "RequestTransform" 'PrefixI 'True) (S1 ('MetaSel ('Just "version") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 Version) :*: (S1 ('MetaSel ('Just "requestFields") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (RequestFields (WithOptional TransformFn))) :*: S1 ('MetaSel ('Just "templateEngine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 TemplatingEngine))))

type RequestTransformFns = RequestFields (WithOptional TransformFn) Source #

Defunctionalized Webhook Request Transformation

We represent a defunctionalized request transformation by parameterizing our HKD with WithOptional TransformFn, which marks each of the fields as optional and supplies the appropriate transformation function to them if if they are provided.

type RequestData = RequestFields Identity Source #

Actual Request Data

We represent the actual request data by parameterizing our HKD with Identity, which allows us to trivially unwrap the fields (which should exist after any transformations have been applied).

data RequestFields f Source #

This is our HKD type. It is a record with fields for each component of an Request we wish to transform.

Constructors

RequestFields 

Fields

Instances

Instances details
FromJSON RequestTransformFns Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

ToJSON RequestContext Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

ToJSON RequestTransformFns Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

ApplicativeB RequestFields Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Methods

bpure :: (forall (a :: k). f a) -> RequestFields f Source #

bprod :: forall (f :: k -> Type) (g :: k -> Type). RequestFields f -> RequestFields g -> RequestFields (Product f g) Source #

ConstraintsB RequestFields Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Associated Types

type AllB c RequestFields Source #

Methods

baddDicts :: forall (c :: k -> Constraint) (f :: k -> Type). AllB c RequestFields => RequestFields f -> RequestFields (Product (Dict c) f) Source #

FunctorB RequestFields Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Methods

bmap :: (forall (a :: k). f a -> g a) -> RequestFields f -> RequestFields g Source #

TraversableB RequestFields Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Methods

btraverse :: Applicative e => (forall (a :: k). f a -> e (g a)) -> RequestFields f -> e (RequestFields g) Source #

Generic (RequestFields f) Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Associated Types

type Rep (RequestFields f) :: Type -> Type #

AllBF Show f RequestFields => Show (RequestFields f) Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

AllBF NFData f RequestFields => NFData (RequestFields f) Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

Methods

rnf :: RequestFields f -> () #

AllBF Eq f RequestFields => Eq (RequestFields f) Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type AllB (c :: Type -> Constraint) RequestFields Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep (RequestFields f) Source # 
Instance details

Defined in Hasura.RQL.Types.Webhook.Transform

type Rep (RequestFields f) = D1 ('MetaData "RequestFields" "Hasura.RQL.Types.Webhook.Transform" "graphql-engine-1.0.0-inplace" 'False) (C1 ('MetaCons "RequestFields" 'PrefixI 'True) ((S1 ('MetaSel ('Just "method") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (f Method)) :*: S1 ('MetaSel ('Just "url") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (f Url))) :*: (S1 ('MetaSel ('Just "body") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (f Body)) :*: (S1 ('MetaSel ('Just "queryParams") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (f QueryParams)) :*: S1 ('MetaSel ('Just "requestHeaders") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedStrict) (Rec0 (f Headers))))))