gflare/validate
Types
pub type Schema(a) {
Schema(
decode: fn(dynamic.Dynamic) -> Result(
a,
List(ValidationError),
),
field_name: String,
)
}
Constructors
-
Schema( decode: fn(dynamic.Dynamic) -> Result(a, List(ValidationError)), field_name: String, )
pub type ValidationError {
ValidationError(field: String, message: String)
}
Constructors
-
ValidationError(field: String, message: String)
Values
pub fn errors_to_string(errors: List(ValidationError)) -> String
pub fn format_errors(errors: List(ValidationError)) -> json.Json
Format validation errors as JSON for API responses.
pub fn optional(
field: String,
schema: Schema(a),
) -> Schema(option.Option(a))
pub fn string(field: String) -> Schema(String)
Create a string schema for the given field.
pub fn validate(
schema: Schema(a),
data: dynamic.Dynamic,
) -> Result(a, List(ValidationError))
Validate data against a schema. Returns Ok(value) or Error(list of validation errors).
pub fn validate_body(
schema: Schema(a),
request: request.HttpRequest,
) -> promise.Promise(Result(a, List(ValidationError)))
Validate request body against a schema. Returns Ok(value) or Error(list of validation errors).