sunnyflail/constraints

A simple validation library

1.0.0 2021-07-29 00:09 UTC

This package is auto-updated.

Last update: 2024-04-29 05:05:33 UTC


README

This library provides basic constraints

1 Primitive value Constraints

1.1 EmailConstraint

A simple constraint for validating email adresses

$constraint = new SunnyFlail\Constraints\Constraints\EmailConstraint()

This constraint constructor doesn't take any parameters

1.2 EqualsConstraint

A simple constraint for validating number equality

$constraint = new SunnyFlail\Constraints\Constraints\EqualsConstraint()

This constraint constructor takes in one parameter:
int|float $equals - The number to which provided number must be equal to

1.3 GreaterThanConstraint

A simple constraint for validating number

$constraint = new SunnyFlail\Constraints\Constraints\GreaterThanConstraint()

This constraint constructor takes in two parameters:
int|float $min - The number which value must be greater than
bool $orEqual - Should this also count in equality

1.4 LesserThanConstraint

A simple constraint for validating number

$constraint = new SunnyFlail\Constraints\Constraints\LesserThanConstraint()

This constraint constructor takes in two parameters:
int|float $max - The number which value must be lesser than
bool $orEqual - Should this also count in equality

1.5 LengthConstraint

A simple constraint for string length

$constraint = new SunnyFlail\Constraints\Constraints\LengthConstraint()

This constraint constructor takes in two parameters:
int $minLength - Minimum length ?int $maxLength - Maximum length

1.6 PatternConstraint

A simple constraint for matching string with regex

$constraint = new SunnyFlail\Constraints\Constraints\LengthConstraint()

This constraint constructor takes in one parameter:
string ...$regexes - Regular expressions to match against

1.7 OneOfConstraint

Constraint for matching against of one of constraints

$constraint = new SunnyFlail\Constraints\Constraints\LengthConstraint()

This constraint constructor takes in one parameter:
IConstraint ...$constraints - Constraints to match against

2 File Constraints

2.1 BasicMediaTypeConstraint

Constraint for matching mime types. Unsafe

$constraint = new SunnyFlail\Constraints\FileConstraints\BasicMediaTypeConstraint()

This constraint constructor takes in one parameter:
array $allowedTypes - MIME types to match against

2.2 FileSizeConstraint

Constraint for matching file sizes

$constraint = new SunnyFlail\Constraints\FileConstraints\FileSizeConstraint()

This constraint constructor takes in two parameters:
int|null $max - Maximum allowed file size in bytes
int|null $min - Minimum allowed file size in bytes

2.3 NoErrorConstraint

Constraint for checking upload error

$constraint = new SunnyFlail\Constraints\FileConstraints\NoErrorConstraint()

This constraint constructor doesn't take any parameters