vendor/rollerworks/password-strength-validator/src/Validator/Constraints/PasswordRequirements.php line 22

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of the RollerworksPasswordStrengthValidator package.
  4.  *
  5.  * (c) Sebastiaan Stok <[email protected]>
  6.  *
  7.  * This source file is subject to the MIT license that is bundled
  8.  * with this source code in the file LICENSE.
  9.  */
  10. namespace Rollerworks\Component\PasswordStrength\Validator\Constraints;
  11. use Attribute;
  12. use Symfony\Component\Validator\Constraint;
  13. /**
  14.  * @Annotation
  15.  * @Target({"PROPERTY", "METHOD", "ANNOTATION"})
  16.  */
  17. #[Attribute(Attribute::TARGET_PROPERTY Attribute::TARGET_METHOD Attribute::IS_REPEATABLE)]
  18. class PasswordRequirements extends Constraint
  19. {
  20.     public $tooShortMessage 'Your password must be at least {{length}} characters long.';
  21.     public $missingLettersMessage 'Your password must include at least one letter.';
  22.     public $requireCaseDiffMessage 'Your password must include both upper and lower case letters.';
  23.     public $missingNumbersMessage 'Your password must include at least one number.';
  24.     public $missingSpecialCharacterMessage 'Your password must contain at least one special character.';
  25.     public $minLength 6;
  26.     public $requireLetters true;
  27.     public $requireCaseDiff false;
  28.     public $requireNumbers false;
  29.     public $requireSpecialCharacter false;
  30.     public function __construct(
  31.         $options null,
  32.         ?array $groups null,
  33.                $payload null,
  34.         ?int $minLength null,
  35.         ?bool $requireLetters null,
  36.         ?bool $requireCaseDiff null,
  37.         ?bool $requireNumbers null,
  38.         ?bool $requireSpecialCharacter null,
  39.         ?string $tooShortMessage null,
  40.         ?string $missingLettersMessage null,
  41.         ?string $requireCaseDiffMessage null,
  42.         ?string $missingNumbersMessage null,
  43.         ?string $missingSpecialCharacterMessage null
  44.     ) {
  45.         parent::__construct($options ?? [], $groups$payload);
  46.         $this->tooShortMessage $tooShortMessage ?? $this->tooShortMessage;
  47.         $this->missingLettersMessage $missingLettersMessage ?? $this->missingLettersMessage;
  48.         $this->requireCaseDiffMessage $requireCaseDiffMessage ?? $this->requireCaseDiffMessage;
  49.         $this->missingNumbersMessage $missingNumbersMessage ?? $this->missingNumbersMessage;
  50.         $this->missingSpecialCharacterMessage $missingSpecialCharacterMessage ?? $this->missingSpecialCharacterMessage;
  51.         $this->minLength $minLength ?? $this->minLength;
  52.         $this->requireLetters $requireLetters ?? $this->requireLetters;
  53.         $this->requireCaseDiff $requireCaseDiff ?? $this->requireCaseDiff;
  54.         $this->requireNumbers $requireNumbers ?? $this->requireNumbers;
  55.         $this->requireSpecialCharacter $requireSpecialCharacter ?? $this->requireSpecialCharacter;
  56.     }
  57. }