Skip to main content

Validation errors

Signatures come from GHC; descriptions come from compiled Haddock comments. Import Slackblocks or the defining public module. Checked values encode with Aeson; field records must be built first.

ErrorCategory​

Normative shared categories; categoryName returns the stable wire spelling.

type Slackblocks.Validation.ErrorCategory :: *

Field​

Object field name.

Slackblocks.Validation.Field ::
Data.Text.Text -> Slackblocks.Validation.PathPiece

Index​

Zero-based array position.

Slackblocks.Validation.Index ::
Int -> Slackblocks.Validation.PathPiece

InvalidUsage​

A combination or receiving context is unsupported.

Slackblocks.Validation.InvalidUsage ::
Slackblocks.Validation.ErrorCategory

LengthExceeded​

Text or collection exceeds a shared limit.

Slackblocks.Validation.LengthExceeded ::
Slackblocks.Validation.ErrorCategory

MissingRequired​

A required value is absent.

Slackblocks.Validation.MissingRequired ::
Slackblocks.Validation.ErrorCategory

MutuallyExclusive​

Fields cannot be supplied together.

Slackblocks.Validation.MutuallyExclusive ::
Slackblocks.Validation.ErrorCategory

OutOfRange​

A number or count is outside the accepted range.

Slackblocks.Validation.OutOfRange ::
Slackblocks.Validation.ErrorCategory

PathPiece​

A field or zero-based array index in a validation path.

type Slackblocks.Validation.PathPiece :: *

Result​

Checked construction result. Failure contains at least one validation error.

type Slackblocks.Validation.Result :: * -> *

TypeMismatch​

The value has an unsupported type or vocabulary.

Slackblocks.Validation.TypeMismatch ::
Slackblocks.Validation.ErrorCategory

ValidationError​

One validation failure with a machine-readable category, path and constraint.

Slackblocks.Validation.ValidationError ::
Slackblocks.Validation.ErrorCategory
-> [Slackblocks.Validation.PathPiece]
-> Data.Text.Text
-> Data.Text.Text
-> Slackblocks.Validation.ValidationError

type Slackblocks.Validation.ValidationError :: *

atField​

Prefix every error path with a field; preserve successful values.

Slackblocks.Validation.atField ::
Data.Text.Text
-> Slackblocks.Validation.Result a
-> Slackblocks.Validation.Result a

atIndex​

Prefix every error path with a zero-based index; preserve successful values.

Slackblocks.Validation.atIndex ::
Int
-> Slackblocks.Validation.Result a
-> Slackblocks.Validation.Result a

categoryName​

Stable shared category spelling suitable for logging and matching.

Slackblocks.Validation.categoryName ::
Slackblocks.Validation.ErrorCategory -> Data.Text.Text

errorCategory​

Normative shared category.

Slackblocks.Validation.errorCategory ::
Slackblocks.Validation.ValidationError
-> Slackblocks.Validation.ErrorCategory

errorConstraint​

Stable constraint identifier.

Slackblocks.Validation.errorConstraint ::
Slackblocks.Validation.ValidationError -> Data.Text.Text

errorMessage​

Human-readable explanation; do not use prose as a compatibility key.

Slackblocks.Validation.errorMessage ::
Slackblocks.Validation.ValidationError -> Data.Text.Text

errorPath​

Structured path from the root payload.

Slackblocks.Validation.errorPath ::
Slackblocks.Validation.ValidationError
-> [Slackblocks.Validation.PathPiece]

failure​

Create one failure without throwing an exception.

Slackblocks.Validation.failure ::
Slackblocks.Validation.ErrorCategory
-> [Slackblocks.Validation.PathPiece]
-> Data.Text.Text
-> Data.Text.Text
-> Slackblocks.Validation.Result a

renderPath​

Format a path starting at $, with dot fields and zero-based bracket indexes.

Slackblocks.Validation.renderPath ::
[Slackblocks.Validation.PathPiece] -> Data.Text.Text