Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- actionExecute :: forall r m n. MonadBuildSchemaBase r m n => AnnotatedCustomTypes -> ActionInfo -> m (Maybe (FieldParser n (AnnActionExecution (RemoteRelationshipField UnpreparedValue))))
- actionAsyncMutation :: forall r m n. MonadBuildSchemaBase r m n => HashMap Name AnnotatedInputType -> ActionInfo -> m (Maybe (FieldParser n AnnActionMutationAsync))
- actionAsyncQuery :: forall r m n. MonadBuildSchema ('Postgres 'Vanilla) r m n => HashMap Name AnnotatedObjectType -> ActionInfo -> m (Maybe (FieldParser n (AnnActionAsyncQuery ('Postgres 'Vanilla) (RemoteRelationshipField UnpreparedValue))))
- actionIdParser :: MonadParse n => Parser 'Both n ActionId
- actionOutputFields :: forall r m n. MonadBuildSchemaBase r m n => GType -> AnnotatedObjectType -> HashMap Name AnnotatedObjectType -> m (Parser 'Output n AnnotatedActionFields)
- actionInputArguments :: forall r m n. MonadBuildSchemaBase r m n => HashMap Name AnnotatedInputType -> [ArgumentDefinition (GType, AnnotatedInputType)] -> m (InputFieldsParser n Value)
- mkArgumentInputFieldParser :: forall m k. (MonadParse m, 'Input <: k) => Name -> Maybe Description -> GType -> Parser k m Value -> InputFieldsParser m (Maybe Value)
- customScalarParser :: MonadParse m => AnnotatedScalarType -> Parser 'Both m Value
- customEnumParser :: MonadParse m => EnumTypeDefinition -> Parser 'Both m Value
Documentation
actionExecute :: forall r m n. MonadBuildSchemaBase r m n => AnnotatedCustomTypes -> ActionInfo -> m (Maybe (FieldParser n (AnnActionExecution (RemoteRelationshipField UnpreparedValue)))) Source #
actionExecute is used to execute either a query action or a synchronous mutation action. A query action or a synchronous mutation action accepts the field name and input arguments and a selectionset. The input argument and selectionset types are defined by the user.
action_name(action_input_arguments) { col1: col1_type col2: col2_type }
actionAsyncMutation :: forall r m n. MonadBuildSchemaBase r m n => HashMap Name AnnotatedInputType -> ActionInfo -> m (Maybe (FieldParser n AnnActionMutationAsync)) Source #
actionAsyncMutation is used to execute a asynchronous mutation action. An asynchronous action expects the field name and the input arguments to the action. A selectionset is *not* expected. An action ID (UUID) will be returned after performing the action
action_name(action_input_arguments)
actionAsyncQuery :: forall r m n. MonadBuildSchema ('Postgres 'Vanilla) r m n => HashMap Name AnnotatedObjectType -> ActionInfo -> m (Maybe (FieldParser n (AnnActionAsyncQuery ('Postgres 'Vanilla) (RemoteRelationshipField UnpreparedValue)))) Source #
actionAsyncQuery is used to query/subscribe to the result of an
asynchronous mutation action. The only input argument to an
asynchronous mutation action is the action ID (UUID) and a selection
set is expected, the selection set contains 4 fields namely id
,
created_at
,errors
and output
. The result of the action can be queried
through the output
field.
action_name (id: UUID!) { id: UUID! created_at: timestampz! errors: JSON output: user_defined_type! }
actionIdParser :: MonadParse n => Parser 'Both n ActionId Source #
Async action's unique id
actionOutputFields :: forall r m n. MonadBuildSchemaBase r m n => GType -> AnnotatedObjectType -> HashMap Name AnnotatedObjectType -> m (Parser 'Output n AnnotatedActionFields) Source #
actionInputArguments :: forall r m n. MonadBuildSchemaBase r m n => HashMap Name AnnotatedInputType -> [ArgumentDefinition (GType, AnnotatedInputType)] -> m (InputFieldsParser n Value) Source #
mkArgumentInputFieldParser :: forall m k. (MonadParse m, 'Input <: k) => Name -> Maybe Description -> GType -> Parser k m Value -> InputFieldsParser m (Maybe Value) Source #
customScalarParser :: MonadParse m => AnnotatedScalarType -> Parser 'Both m Value Source #
customEnumParser :: MonadParse m => EnumTypeDefinition -> Parser 'Both m Value Source #