PluginProbe ʕ •ᴥ•ʔ
MailPoet – Newsletters, Email Marketing, and Automation / 4.17.1
MailPoet – Newsletters, Email Marketing, and Automation v4.17.1
5.28.1 5.28.0 5.27.0 5.26.0 5.26.1 5.25.0 5.24.0 4.43.0 4.43.1 4.44.0 4.44.1 4.45.0 4.46.0 4.47.0 4.48.0 4.48.1 4.48.2 4.49.0 4.49.1 4.5.0 4.5.1 4.5.2 4.50.0 4.50.1 4.51.0 4.51.1 4.51.2 4.52.0 4.53.0 4.54.0 4.55.0 4.56.0 4.57.0 4.58.0 4.58.1 4.58.2 4.6.0 4.6.1 4.6.2 4.7.0 4.7.1 4.8.0 4.8.1 4.9.0 5.0.0 5.0.1 5.0.2 5.1.0 5.1.1 5.10.0 5.10.1 5.11.0 5.12.0 5.12.1 5.12.10 5.12.11 5.12.12 5.12.13 5.12.2 5.12.3 5.12.4 5.12.5 5.12.6 5.12.7 5.12.8 5.12.9 5.13.0 5.13.1 5.13.2 5.14.0 5.14.1 5.14.2 5.14.3 5.15.0 5.15.1 5.16.0 5.16.1 5.16.2 5.16.3 5.16.4 5.17.0 5.17.1 5.17.2 5.17.3 5.17.4 5.17.5 5.17.6 5.18.0 5.19.0 5.2.0 5.2.1 5.2.2 5.2.3 5.20.0 5.21.0 5.21.1 5.21.2 5.21.3 5.22.0 5.22.1 5.22.2 5.22.3 5.22.4 5.23.0 5.23.1 5.23.2 5.3.0 5.3.1 5.3.2 5.3.3 5.3.4 5.3.5 5.3.6 5.3.7 5.4.0 5.4.1 5.4.2 5.5.0 5.5.1 5.5.2 5.6.0 5.6.1 5.6.2 5.6.3 5.6.4 5.7.0 5.7.1 5.8.0 5.8.1 5.9.0 3.0.0-beta.15 3.7.1 3.0.0-beta.16 3.7.2 3.0.0-beta.17 3.7.3 3.0.0-beta.18 3.7.4 3.0.0-beta.19 3.7.5 3.0.0-beta.2 3.7.6 3.0.0-beta.20 3.7.8 3.0.0-beta.21 3.70.0 3.0.0-beta.22 3.71.0 3.0.0-beta.23 3.71.1 3.0.0-beta.23.1 3.71.2 3.0.0-beta.23.2 3.71.3 3.0.0-beta.24 3.72.0 3.0.0-beta.25 3.73.0 3.0.0-beta.26 3.73.1 3.0.0-beta.27 3.73.2 3.0.0-beta.28 3.74.0 3.0.0-beta.29 3.74.1 3.0.0-beta.3 3.74.2 3.0.0-beta.30 3.74.3 3.0.0-beta.31 3.75.0 3.0.0-beta.32 3.75.1 3.0.0-beta.33 3.76.0 3.0.0-beta.33.1 3.77.0 3.0.0-beta.34.0.0 3.77.1 3.0.0-beta.36.0.0 3.78.0 3.0.0-beta.36.0.1 3.79.0 3.0.0-beta.36.2.0 3.8 3.0.0-beta.36.3.0 3.8.1 3.0.0-beta.36.3.1 3.8.2 3.0.0-beta.37.0.0 3.8.3 3.0.0-beta.4 3.8.4 3.0.0-beta.5 3.8.5 3.0.0-beta.6 3.8.6 3.0.0-beta.7 3.80.0 3.0.0-beta.7.1 3.81.0 3.0.0-beta.8 3.82.0 3.0.0-beta.9 3.83.0 3.0.0-rc.1.0.0 3.84.0 3.0.0-rc.1.0.1 3.84.1 3.0.0-rc.1.0.2 3.85.0 3.0.0-rc.1.0.3 3.85.1 3.0.0-rc.1.0.4 3.86.0 3.0.0-rc.2.0.0 3.87.0 3.0.0-rc.2.0.1 3.87.1 3.0.0-rc.2.0.2 3.87.2 3.0.0-rc.2.0.3 3.88.0 3.0.1 3.88.1 3.0.2 3.88.2 3.0.3 3.89.0 3.0.4 3.89.1 3.0.5 3.89.2 3.0.6 3.89.3 3.0.7 3.89.4 3.0.8 3.9.0 3.0.9 3.9.1 3.1.0 3.90.0 3.10 3.90.1 3.10.1 3.90.2 3.100.0 3.91.0 3.100.1 3.91.1 3.100.2 3.92.0 3.101.0 3.92.1 3.101.1 3.93.0 3.102.0 3.93.1 3.102.1 3.94.0 3.103.0 3.95.0 3.103.1 3.95.1 3.11.0 3.96.0 3.11.1 3.96.1 3.11.2 3.97.0 3.11.3 3.98.0 3.11.4 3.98.1 3.11.5 3.99.0 3.12.0 3.99.1 3.12.1 4.0.0 3.13.0 4.0.1 3.14.0 4.1.0 3.14.1 4.1.1 3.15.0 4.10.0 3.16.0 4.11.0 3.16.1 4.11.1 3.16.2 4.12.0 3.16.3 4.12.1 3.17.0 4.12.2 3.17.1 4.13.0 3.17.2 4.14.0 3.18.0 4.15.0 3.18.1 4.16.0 3.18.2 4.17.0 3.19.0 4.17.1 3.19.1 4.18.0 3.19.2 4.18.1 3.19.3 4.19.0 3.2.0 4.2.0 3.2.1 4.20.0 3.2.2 4.20.1 3.2.3 4.20.2 3.2.4 4.21.0 3.2.5 4.22.0 3.20.0 4.22.1 3.21.0 4.22.2 3.21.1 4.23.0 3.22.0 4.24.0 3.23.0 4.25.0 3.23.1 4.26.0 3.23.2 4.26.1 3.24.0 4.27.0 3.25.0 4.28.0 3.25.1 4.29.0 3.26.0 4.3.0 3.26.1 4.3.1 3.27.0 4.30.0 3.28.0 4.31.0 3.29.0 4.31.1 3.3.0 4.32.0 3.3.1 4.33.0 3.3.2 4.34.0 3.3.3 4.35.0 3.3.4 4.35.1 3.3.5 4.36.0 3.3.6 4.37.0 3.30.0 4.38.0 3.31.0 4.39.0 3.31.1 4.4.0 3.32.0 4.40.0 3.32.1 4.41.0 3.32.2 4.41.1 3.33.0 4.41.2 3.34.0 4.41.3 3.34.1 4.42.0 3.34.2 4.42.1 3.34.3 3.34.4 3.35.0 3.35.1 3.35.3 3.35.4 3.36.0 3.37.0 3.37.1 3.37.2 3.37.3 3.38.0 3.38.1 3.39.0 3.39.1 3.39.2 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.40.0 3.40.1 3.41.0 3.41.1 3.41.2 3.42.0 3.42.1 3.42.2 3.42.3 3.43.0 3.43.1 3.44.0 3.45.0 3.45.1 3.46.0 3.46.1 3.46.10 3.46.11 3.46.12 3.46.13 3.46.14 3.46.2 3.46.3 3.46.4 3.46.5 3.46.6 3.46.7 3.46.8 3.46.9 3.47.0 3.47.1 3.47.10 3.47.11 3.47.2 3.47.3 3.47.5 3.47.6 3.47.7 3.47.9 3.48.0 3.48.1 3.49.0 3.49.1 3.5.0 3.5.1 3.50.0 3.51.0 3.51.1 3.51.2 3.52.0 3.53.0 3.54.0 3.54.1 3.54.2 3.54.3 3.55.0 3.55.1 3.56.0 3.56.1 3.56.2 3.57.0 3.57.1 3.58.0 3.59.0 3.59.1 3.59.2 3.6.0 3.6.1 3.6.2 3.6.3 3.6.4 3.6.5 3.6.6 3.6.7 3.60.0 3.60.1 3.60.10 3.60.11 3.60.12 3.60.2 3.60.3 3.60.4 3.60.6 3.60.7 3.60.8 3.60.9 3.61.0 3.62.0 3.62.1 3.63.0 3.64.0 3.64.1 3.64.2 3.64.3 3.65.0 trunk 3.65.1 3.0.0 3.66.0 3.0.0-beta.1 3.67.0 3.0.0-beta.10 3.67.1 3.0.0-beta.11 3.68.0 3.0.0-beta.12 3.69.0 3.0.0-beta.13 3.69.1 3.0.0-beta.14 3.7.0
mailpoet / vendor-prefixed / symfony / validator / Constraint.php
mailpoet / vendor-prefixed / symfony / validator Last commit date
Command 3 years ago Constraints 3 years ago Context 3 years ago Exception 3 years ago Mapping 3 years ago Util 3 years ago Validator 3 years ago Violation 3 years ago Constraint.php 4 years ago ConstraintValidator.php 4 years ago ConstraintValidatorFactory.php 4 years ago ConstraintValidatorFactoryInterface.php 4 years ago ConstraintValidatorInterface.php 4 years ago ConstraintViolation.php 4 years ago ConstraintViolationInterface.php 4 years ago ConstraintViolationList.php 4 years ago ConstraintViolationListInterface.php 4 years ago ContainerConstraintValidatorFactory.php 4 years ago GroupSequenceProviderInterface.php 4 years ago ObjectInitializerInterface.php 4 years ago Validation.php 4 years ago ValidatorBuilder.php 4 years ago index.php 3 years ago
Constraint.php
133 lines
1 <?php
2 namespace MailPoetVendor\Symfony\Component\Validator;
3 if (!defined('ABSPATH')) exit;
4 use MailPoetVendor\Symfony\Component\Validator\Exception\ConstraintDefinitionException;
5 use MailPoetVendor\Symfony\Component\Validator\Exception\InvalidArgumentException;
6 use MailPoetVendor\Symfony\Component\Validator\Exception\InvalidOptionsException;
7 use MailPoetVendor\Symfony\Component\Validator\Exception\MissingOptionsException;
8 abstract class Constraint
9 {
10 public const DEFAULT_GROUP = 'Default';
11 public const CLASS_CONSTRAINT = 'class';
12 public const PROPERTY_CONSTRAINT = 'property';
13 protected static $errorNames = [];
14 public $payload;
15 public $groups;
16 public static function getErrorName(string $errorCode)
17 {
18 if (!isset(static::$errorNames[$errorCode])) {
19 throw new InvalidArgumentException(\sprintf('The error code "%s" does not exist for constraint of type "%s".', $errorCode, static::class));
20 }
21 return static::$errorNames[$errorCode];
22 }
23 public function __construct($options = null, array $groups = null, $payload = null)
24 {
25 unset($this->groups);
26 // enable lazy initialization
27 $options = $this->normalizeOptions($options);
28 if (null !== $groups) {
29 $options['groups'] = $groups;
30 }
31 $options['payload'] = $payload ?? $options['payload'] ?? null;
32 foreach ($options as $name => $value) {
33 $this->{$name} = $value;
34 }
35 }
36 protected function normalizeOptions($options) : array
37 {
38 $normalizedOptions = [];
39 $defaultOption = $this->getDefaultOption();
40 $invalidOptions = [];
41 $missingOptions = \array_flip((array) $this->getRequiredOptions());
42 $knownOptions = \get_class_vars(static::class);
43 if (\is_array($options) && isset($options['value']) && !\property_exists($this, 'value')) {
44 if (null === $defaultOption) {
45 throw new ConstraintDefinitionException(\sprintf('No default option is configured for constraint "%s".', static::class));
46 }
47 $options[$defaultOption] = $options['value'];
48 unset($options['value']);
49 }
50 if (\is_array($options)) {
51 \reset($options);
52 }
53 if ($options && \is_array($options) && \is_string(\key($options))) {
54 foreach ($options as $option => $value) {
55 if (\array_key_exists($option, $knownOptions)) {
56 $normalizedOptions[$option] = $value;
57 unset($missingOptions[$option]);
58 } else {
59 $invalidOptions[] = $option;
60 }
61 }
62 } elseif (null !== $options && !(\is_array($options) && 0 === \count($options))) {
63 if (null === $defaultOption) {
64 throw new ConstraintDefinitionException(\sprintf('No default option is configured for constraint "%s".', static::class));
65 }
66 if (\array_key_exists($defaultOption, $knownOptions)) {
67 $normalizedOptions[$defaultOption] = $options;
68 unset($missingOptions[$defaultOption]);
69 } else {
70 $invalidOptions[] = $defaultOption;
71 }
72 }
73 if (\count($invalidOptions) > 0) {
74 throw new InvalidOptionsException(\sprintf('The options "%s" do not exist in constraint "%s".', \implode('", "', $invalidOptions), static::class), $invalidOptions);
75 }
76 if (\count($missingOptions) > 0) {
77 throw new MissingOptionsException(\sprintf('The options "%s" must be set for constraint "%s".', \implode('", "', \array_keys($missingOptions)), static::class), \array_keys($missingOptions));
78 }
79 return $normalizedOptions;
80 }
81 public function __set(string $option, $value)
82 {
83 if ('groups' === $option) {
84 $this->groups = (array) $value;
85 return;
86 }
87 throw new InvalidOptionsException(\sprintf('The option "%s" does not exist in constraint "%s".', $option, static::class), [$option]);
88 }
89 public function __get(string $option)
90 {
91 if ('groups' === $option) {
92 $this->groups = [self::DEFAULT_GROUP];
93 return $this->groups;
94 }
95 throw new InvalidOptionsException(\sprintf('The option "%s" does not exist in constraint "%s".', $option, static::class), [$option]);
96 }
97 public function __isset(string $option)
98 {
99 return 'groups' === $option;
100 }
101 public function addImplicitGroupName(string $group)
102 {
103 if (null === $this->groups && \array_key_exists('groups', (array) $this)) {
104 throw new \LogicException(\sprintf('"%s::$groups" is set to null. Did you forget to call "%s::__construct()"?', static::class, self::class));
105 }
106 if (\in_array(self::DEFAULT_GROUP, $this->groups) && !\in_array($group, $this->groups)) {
107 $this->groups[] = $group;
108 }
109 }
110 public function getDefaultOption()
111 {
112 return null;
113 }
114 public function getRequiredOptions()
115 {
116 return [];
117 }
118 public function validatedBy()
119 {
120 return static::class . 'Validator';
121 }
122 public function getTargets()
123 {
124 return self::PROPERTY_CONSTRAINT;
125 }
126 public function __sleep() : array
127 {
128 // Initialize "groups" option if it is not set
129 $this->groups;
130 return \array_keys(\get_object_vars($this));
131 }
132 }
133