diff --git a/.github/workflows/continuous-integration-code.yml b/.github/workflows/continuous-integration-code.yml index c5d0e04df..866b12d5f 100644 --- a/.github/workflows/continuous-integration-code.yml +++ b/.github/workflows/continuous-integration-code.yml @@ -89,3 +89,6 @@ jobs: - name: Run PHPStan run: vendor/bin/phpstan analyze + + - name: Run Validator's mixin linter + run: bin/console lint:mixin diff --git a/.github/workflows/continuous-integration-docs.yml b/.github/workflows/continuous-integration-docs.yml index 5b68d20e0..b98424ec3 100644 --- a/.github/workflows/continuous-integration-docs.yml +++ b/.github/workflows/continuous-integration-docs.yml @@ -30,4 +30,4 @@ jobs: run: composer install --prefer-dist - name: Lint documentation files - run: bin/console docs:lint + run: bin/console lint:docs diff --git a/.github/workflows/reuse.yml b/.github/workflows/reuse.yml index 6746a58d1..00258ca89 100644 --- a/.github/workflows/reuse.yml +++ b/.github/workflows/reuse.yml @@ -37,4 +37,4 @@ jobs: run: reuse lint - name: Run SPDX conventions check - run: bin/console spdx:lint + run: bin/console lint:spdx diff --git a/bin/console b/bin/console index 07c4898f7..dca33e3a6 100755 --- a/bin/console +++ b/bin/console @@ -10,15 +10,15 @@ declare(strict_types=1); require __DIR__ . '/../vendor/autoload.php'; -use Respect\Dev\Commands\CreateMixinCommand; -use Respect\Dev\Commands\DocsLintCommand; +use Respect\Dev\Commands\LintDocsCommand; +use Respect\Dev\Commands\LintMixinCommand; use Respect\Dev\Commands\SmokeTestsCheckCompleteCommand; -use Respect\Dev\Commands\SpdxLintCommand; +use Respect\Dev\Commands\LintSpdxCommand; use Respect\Dev\Commands\UpdateDomainSuffixesCommand; use Respect\Dev\Commands\UpdateDomainToplevelCommand; use Respect\Dev\Commands\UpdatePostalCodesCommand; +use Respect\Dev\Differ\ConsoleDiffer; use Respect\Dev\Markdown\CompositeLinter; -use Respect\Dev\Markdown\Differ as MarkdownDiffer; use Respect\Dev\Markdown\Linters\AssertionMessageLinter; use Respect\Dev\Markdown\Linters\ValidatorHeaderLinter; use Respect\Dev\Markdown\Linters\ValidatorIndexLinter; @@ -30,11 +30,10 @@ use SebastianBergmann\Diff\Output\UnifiedDiffOutputBuilder; use Symfony\Component\Console\Application; return (static function () { - $differ = new MarkdownDiffer(new Differ(new UnifiedDiffOutputBuilder('', addLineNumbers: true))); + $differ = new ConsoleDiffer(new Differ(new UnifiedDiffOutputBuilder('', addLineNumbers: true))); $application = new Application('Respect/Validation', '3.0'); - $application->addCommand(new CreateMixinCommand()); - $application->addCommand(new DocsLintCommand($differ, new CompositeLinter( + $application->addCommand(new LintDocsCommand($differ, new CompositeLinter( new AssertionMessageLinter(), new ValidatorHeaderLinter(), new ValidatorIndexLinter(), @@ -42,11 +41,12 @@ return (static function () { new ValidatorTemplatesLinter(), new ValidatorChangelogLinter(), ))); + $application->addCommand(new LintMixinCommand($differ)); + $application->addCommand(new LintSpdxCommand()); $application->addCommand(new UpdateDomainSuffixesCommand()); $application->addCommand(new UpdateDomainToplevelCommand()); $application->addCommand(new UpdatePostalCodesCommand()); $application->addCommand(new SmokeTestsCheckCompleteCommand()); - $application->addCommand(new SpdxLintCommand()); return $application->run(); })(); diff --git a/composer.json b/composer.json index 393ca24bd..cbf651c22 100644 --- a/composer.json +++ b/composer.json @@ -76,14 +76,14 @@ "scripts": { "bench-profile": "vendor/bin/phpbench xdebug:profile", "bench": "vendor/bin/phpbench run", - "docs-fix": "bin/console docs:lint --fix", - "docs": "bin/console docs:lint", + "docs-fix": "bin/console lint:docs --fix", + "docs": "bin/console lint:docs", "pest": "vendor/bin/pest --testsuite=feature --compact", "phpcs": "vendor/bin/phpcs", "phpstan": "vendor/bin/phpstan analyze", "phpunit": "vendor/bin/phpunit --testsuite=unit", "smoke-complete": "bin/console smoke-tests:check-complete", - "spdx-lint": "bin/console spdx:lint", + "spdx-lint": "bin/console lint:spdx", "qa": [ "@spdx-lint", "@phpcs", diff --git a/phpcs.xml.dist b/phpcs.xml.dist index 19ffa8f10..978589ab9 100644 --- a/phpcs.xml.dist +++ b/phpcs.xml.dist @@ -26,6 +26,7 @@ tests/Pest.php + src/Mixins/ tests/feature/ diff --git a/src-dev/Commands/DocsLintCommand.php b/src-dev/Commands/LintDocsCommand.php similarity index 83% rename from src-dev/Commands/DocsLintCommand.php rename to src-dev/Commands/LintDocsCommand.php index 0c79c9eda..0bf064d39 100644 --- a/src-dev/Commands/DocsLintCommand.php +++ b/src-dev/Commands/LintDocsCommand.php @@ -10,7 +10,8 @@ namespace Respect\Dev\Commands; -use Respect\Dev\Markdown\Differ; +use Respect\Dev\Differ\ConsoleDiffer; +use Respect\Dev\Differ\Item; use Respect\Dev\Markdown\File; use Respect\Dev\Markdown\Linter; use Symfony\Component\Console\Attribute\AsCommand; @@ -24,13 +25,13 @@ use function sprintf; #[AsCommand( - name: 'docs:lint', + name: 'lint:docs', description: 'Apply documentation linters and optionally auto-fix issues', )] -final class DocsLintCommand extends Command +final class LintDocsCommand extends Command { public function __construct( - private readonly Differ $differ, + private readonly ConsoleDiffer $differ, private readonly Linter $linter, ) { parent::__construct(); @@ -61,7 +62,10 @@ protected function execute(InputInterface $input, OutputInterface $output): int $lintedFiles[] = $linted; - $output->writeln($this->differ->diff($original, $linted)); + $output->writeln($this->differ->diff( + new Item($original->filename, $original->content->build()), + new Item($linted->filename, $linted->content->build()), + )); } if ($lintedFiles === []) { diff --git a/src-dev/Commands/CreateMixinCommand.php b/src-dev/Commands/LintMixinCommand.php similarity index 73% rename from src-dev/Commands/CreateMixinCommand.php rename to src-dev/Commands/LintMixinCommand.php index 2defc72cd..5bf591e33 100644 --- a/src-dev/Commands/CreateMixinCommand.php +++ b/src-dev/Commands/LintMixinCommand.php @@ -19,6 +19,8 @@ use ReflectionNamedType; use ReflectionParameter; use ReflectionUnionType; +use Respect\Dev\Differ\ConsoleDiffer; +use Respect\Dev\Differ\Item; use Respect\Validation\Mixins\AllBuilder; use Respect\Validation\Mixins\AllChain; use Respect\Validation\Mixins\Chain; @@ -44,31 +46,34 @@ use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Output\OutputInterface; -use Symfony\Component\Console\Style\SymfonyStyle; -use function array_filter; +use function array_keys; use function array_merge; +use function array_values; use function count; use function dirname; -use function file_exists; +use function file_get_contents; use function file_put_contents; use function implode; use function in_array; use function is_object; use function ksort; use function lcfirst; +use function preg_match; use function preg_replace; -use function shell_exec; use function sprintf; use function str_contains; use function str_starts_with; +use function trim; use function ucfirst; +use const PHP_EOL; + #[AsCommand( - name: 'create:mixin', - description: 'Generate mixin interfaces from validators', + name: 'lint:mixin', + description: 'Apply linters to the generated mixin interfaces', )] -final class CreateMixinCommand extends Command +final class LintMixinCommand extends Command { private const array NUMBER_RELATED_VALIDATORS = [ 'Between', @@ -109,19 +114,29 @@ final class CreateMixinCommand extends Command 'Named', ]; - protected function execute(InputInterface $input, OutputInterface $output): int - { - $io = new SymfonyStyle($input, $output); + public function __construct( + private readonly ConsoleDiffer $differ, + ) { + parent::__construct(); + } - $io->title('Generating mixin interfaces'); + protected function configure(): void + { + $this->addOption( + 'fix', + null, + null, + 'Automatically fix files with issues.', + ); + } + protected function execute(InputInterface $input, OutputInterface $output): int + { // Scan validators directory $srcDir = dirname(__DIR__, 2) . '/src'; $validatorsDir = $srcDir . '/Validators'; $validators = $this->scanValidators($validatorsDir); - $io->text(sprintf('Found %d validators', count($validators))); - // Define mixins $mixins = [ ['All', 'all', [], array_merge(['All'], self::STRUCTURE_RELATED_VALIDATORS)], @@ -133,23 +148,19 @@ protected function execute(InputInterface $input, OutputInterface $output): int ['NullOr', 'nullOr', [], ['NullOr', 'Blank', 'Undef', 'UndefOr', 'Templated', 'Named']], ['Property', 'property', [], self::STRUCTURE_RELATED_VALIDATORS], ['UndefOr', 'undefOr', [], ['NullOr', 'Blank', 'Undef', 'UndefOr', 'Attributes', 'Templated', 'Named']], - ['', null, [], []], + [null, null, [], []], ]; - $io->section('Generating mixin interfaces'); + $updatableFiles = []; foreach ($mixins as [$name, $prefix, $allowList, $denyList]) { - $io->text(sprintf('Generating %sBuilder and %sChain', $name ?: 'Base', $name ?: 'Base')); - $chainedNamespace = new PhpNamespace('Respect\\Validation\\Mixins'); - $chainedNamespace->addUse(Validator::class); $chainedInterface = $chainedNamespace->addInterface($name . 'Chain'); $staticNamespace = new PhpNamespace('Respect\\Validation\\Mixins'); - $staticNamespace->addUse(Validator::class); $staticInterface = $staticNamespace->addInterface($name . 'Builder'); - if ($name === '') { + if ($name === null) { $chainedInterface->addExtend(Validator::class); $chainedInterface->addExtend(AllChain::class); $chainedInterface->addExtend(KeyChain::class); @@ -160,7 +171,8 @@ protected function execute(InputInterface $input, OutputInterface $output): int $chainedInterface->addExtend(NullOrChain::class); $chainedInterface->addExtend(PropertyChain::class); $chainedInterface->addExtend(UndefOrChain::class); - $chainedInterface->addComment('@mixin \\' . ValidatorBuilder::class); + $chainedInterface->addComment('@mixin ValidatorBuilder'); + $chainedNamespace->addUse(ValidatorBuilder::class); $staticInterface->addExtend(AllBuilder::class); $staticInterface->addExtend(KeyBuilder::class); @@ -175,6 +187,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int foreach ($validators as $originalName => $reflection) { $this->addMethodToInterface( + $staticNamespace, $originalName, $staticInterface, $reflection, @@ -183,6 +196,7 @@ protected function execute(InputInterface $input, OutputInterface $output): int $denyList, ); $this->addMethodToInterface( + $chainedNamespace, $originalName, $chainedInterface, $reflection, @@ -193,25 +207,42 @@ protected function execute(InputInterface $input, OutputInterface $output): int } $printer = new Printer(); - $printer->wrapLength = 115; + $printer->wrapLength = 300; - $this->overwriteFile($printer->printNamespace($staticNamespace), $staticInterface->getName()); - $this->overwriteFile($printer->printNamespace($chainedNamespace), $chainedInterface->getName()); + foreach ( + [ + [$staticNamespace, $staticInterface], + [$chainedNamespace, $chainedInterface], + ] as [$namespace, $interface] + ) { + $filename = sprintf('%s/Mixins/%s.php', $srcDir, $interface->getName()); + $existingContent = file_get_contents($filename); + $formattedContent = $this->getFormattedContent($printer->printNamespace($namespace), $existingContent); + if ($formattedContent === $existingContent) { + continue; + } + + $updatableFiles[$filename] = $formattedContent; + $output->writeln($this->differ->diff( + new Item($filename, $existingContent), + new Item($filename, $formattedContent), + )); + } } - // Run code beautifier - $io->section('Running code beautifier'); - $mixinsDir = $srcDir . '/Mixins'; - $phpcbfPath = dirname(__DIR__, 2) . '/vendor/bin/phpcbf'; - - if (file_exists($phpcbfPath)) { - shell_exec($phpcbfPath . ' ' . $mixinsDir); - $io->success('Code beautified'); + if ($updatableFiles === []) { + $output->writeln('No changes needed.'); } else { - $io->warning('phpcbf not found, skipping code beautification'); + $output->writeln(sprintf('Changes needed in %d files.', count($updatableFiles))); } - $io->success('Mixin interfaces generated successfully'); + if ($updatableFiles !== [] && !$input->getOption('fix')) { + return Command::FAILURE; + } + + foreach ($updatableFiles as $filename => $content) { + file_put_contents($filename, $content); + } return Command::SUCCESS; } @@ -246,6 +277,7 @@ private function scanValidators(string $directory): array * @param array $denyList */ private function addMethodToInterface( + PhpNamespace $namespace, string $originalName, InterfaceType $interfaceType, ReflectionClass $reflection, @@ -287,12 +319,15 @@ private function addMethodToInterface( } foreach ($reflectionConstructor->getParameters() as $reflectionParameter) { - $this->addParameterToMethod($method, $reflectionParameter); + $this->addParameterToMethod($method, $reflectionParameter, $namespace); } } - private function addParameterToMethod(Method $method, ReflectionParameter $reflectionParameter): void - { + private function addParameterToMethod( + Method $method, + ReflectionParameter $reflectionParameter, + PhpNamespace $namespace, + ): void { if ($reflectionParameter->isVariadic()) { $method->setVariadic(); } @@ -303,6 +338,11 @@ private function addParameterToMethod(Method $method, ReflectionParameter $refle if ($type instanceof ReflectionUnionType) { foreach ($type->getTypes() as $subType) { $types[] = $subType->getName(); + if ($subType->isBuiltin()) { + continue; + } + + $namespace->addUse($subType->getName()); } } elseif ($type instanceof ReflectionNamedType) { $types[] = $type->getName(); @@ -313,6 +353,10 @@ private function addParameterToMethod(Method $method, ReflectionParameter $refle ) { return; } + + if (!$type->isBuiltin()) { + $namespace->addUse($type->getName()); + } } $parameter = $method->addParameter($reflectionParameter->getName()); @@ -342,25 +386,27 @@ private function addParameterToMethod(Method $method, ReflectionParameter $refle $parameter->setNullable(false); } - private function overwriteFile(string $content, string $basename): void + private function getFormattedContent(string $content, string $existingContent): string { - $srcDir = dirname(__DIR__, 2) . '/src'; - - $SPDX = ' * SPDX'; + preg_match('/^<\?php\s*\/\*[\s\S]*?\*\//', $existingContent, $matches); + $existingHeader = $matches[0] ?? ''; + + $replacements = [ + '/\n\n\t(public|\/\*\*)/m' => PHP_EOL . ' $1', + '/\t/m' => ' ', + '/\?([a-zA-Z]+) \$/' => '$1|null $', + '/\/\*\*\n +\* (.+)\n +\*\//m' => '/** $1 */', + ]; - $finalContent = implode("\n\n", array_filter([ - 'differ->diff($from->content->build(), $to->content->build()); + $diff = $this->differ->diff($from->content, $to->content); if ($diff === '') { return null; } - $content = sprintf('--- a/%s' . PHP_EOL, $this->getRelativePath($from->filename)); - $content .= sprintf('+++ b/%s' . PHP_EOL, $this->getRelativePath($to->filename)); + $content = sprintf('--- a/%s' . PHP_EOL, $this->getRelativePath($from->headline)); + $content .= sprintf('+++ b/%s' . PHP_EOL, $this->getRelativePath($to->headline)); return $content . preg_replace_callback( '/^([+-]|@{2})(.*)$/m', diff --git a/src-dev/Differ/Item.php b/src-dev/Differ/Item.php new file mode 100644 index 000000000..135be9d32 --- /dev/null +++ b/src-dev/Differ/Item.php @@ -0,0 +1,20 @@ + + */ + +declare(strict_types=1); + +namespace Respect\Dev\Differ; + +final readonly class Item +{ + public function __construct( + public string $headline, + public string $content, + ) { + } +} diff --git a/src/Mixins/AllBuilder.php b/src/Mixins/AllBuilder.php index 8ba6179ef..bf4311e74 100644 --- a/src/Mixins/AllBuilder.php +++ b/src/Mixins/AllBuilder.php @@ -32,10 +32,7 @@ public static function allArrayType(): Chain; public static function allArrayVal(): Chain; - public static function allBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function allBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function allBase64(): Chain; @@ -93,12 +90,7 @@ public static function allDate(string $format = 'Y-m-d'): Chain; public static function allDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function allDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function allDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function allDecimal(int $decimals): Chain; diff --git a/src/Mixins/AllChain.php b/src/Mixins/AllChain.php index 068ceadff..3c3561427 100644 --- a/src/Mixins/AllChain.php +++ b/src/Mixins/AllChain.php @@ -32,10 +32,7 @@ public function allArrayType(): Chain; public function allArrayVal(): Chain; - public function allBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function allBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function allBase64(): Chain; @@ -93,12 +90,7 @@ public function allDate(string $format = 'Y-m-d'): Chain; public function allDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function allDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function allDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function allDecimal(int $decimals): Chain; diff --git a/src/Mixins/Builder.php b/src/Mixins/Builder.php index 11ac33f2e..d5b1cdf5d 100644 --- a/src/Mixins/Builder.php +++ b/src/Mixins/Builder.php @@ -15,16 +15,7 @@ use Respect\Validation\Name; use Respect\Validation\Validator; -interface Builder extends - AllBuilder, - KeyBuilder, - LengthBuilder, - MaxBuilder, - MinBuilder, - NotBuilder, - NullOrBuilder, - PropertyBuilder, - UndefOrBuilder +interface Builder extends AllBuilder, KeyBuilder, LengthBuilder, MaxBuilder, MinBuilder, NotBuilder, NullOrBuilder, PropertyBuilder, UndefOrBuilder { public static function all(Validator $validator): Chain; @@ -46,10 +37,7 @@ public static function arrayVal(): Chain; public static function attributes(): Chain; - public static function base( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function base(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function base64(): Chain; @@ -107,12 +95,7 @@ public static function date(string $format = 'Y-m-d'): Chain; public static function dateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function dateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function dateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function decimal(int $decimals): Chain; diff --git a/src/Mixins/Chain.php b/src/Mixins/Chain.php index 1202e1b0f..aee16f5c7 100644 --- a/src/Mixins/Chain.php +++ b/src/Mixins/Chain.php @@ -17,17 +17,7 @@ use Respect\Validation\ValidatorBuilder; /** @mixin ValidatorBuilder */ -interface Chain extends - Validator, - AllChain, - KeyChain, - LengthChain, - MaxChain, - MinChain, - NotChain, - NullOrChain, - PropertyChain, - UndefOrChain +interface Chain extends Validator, AllChain, KeyChain, LengthChain, MaxChain, MinChain, NotChain, NullOrChain, PropertyChain, UndefOrChain { public function all(Validator $validator): Chain; @@ -49,10 +39,7 @@ public function arrayVal(): Chain; public function attributes(): Chain; - public function base( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function base(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function base64(): Chain; @@ -110,12 +97,7 @@ public function date(string $format = 'Y-m-d'): Chain; public function dateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function dateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function dateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function decimal(int $decimals): Chain; diff --git a/src/Mixins/KeyBuilder.php b/src/Mixins/KeyBuilder.php index 01510f37a..aa57fa5c8 100644 --- a/src/Mixins/KeyBuilder.php +++ b/src/Mixins/KeyBuilder.php @@ -18,12 +18,7 @@ interface KeyBuilder { public static function keyAll(int|string $key, Validator $validator): Chain; - public static function keyAllOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function keyAllOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function keyAlnum(int|string $key, string ...$additionalChars): Chain; @@ -33,22 +28,13 @@ public static function keyAlwaysInvalid(int|string $key): Chain; public static function keyAlwaysValid(int|string $key): Chain; - public static function keyAnyOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function keyAnyOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function keyArrayType(int|string $key): Chain; public static function keyArrayVal(int|string $key): Chain; - public static function keyBase( - int|string $key, - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function keyBase(int|string $key, int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function keyBase64(int|string $key): Chain; @@ -72,12 +58,7 @@ public static function keyCallback(int|string $key, callable $callback, mixed .. public static function keyCharset(int|string $key, string $charset, string ...$charsets): Chain; - public static function keyCircuit( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function keyCircuit(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function keyCnh(int|string $key): Chain; @@ -90,12 +71,7 @@ public static function keyContains(int|string $key, mixed $containsValue, bool $ /** @param non-empty-array $needles */ public static function keyContainsAny(int|string $key, array $needles, bool $identical = false): Chain; - public static function keyContainsCount( - int|string $key, - mixed $containsValue, - int $count, - bool $identical = false, - ): Chain; + public static function keyContainsCount(int|string $key, mixed $containsValue, int $count, bool $identical = false): Chain; public static function keyControl(int|string $key, string ...$additionalChars): Chain; @@ -116,13 +92,7 @@ public static function keyDate(int|string $key, string $format = 'Y-m-d'): Chain public static function keyDateTime(int|string $key, string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function keyDateTimeDiff( - int|string $key, - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function keyDateTimeDiff(int|string $key, string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function keyDecimal(int|string $key, int $decimals): Chain; @@ -245,12 +215,7 @@ public static function keyNif(int|string $key): Chain; public static function keyNip(int|string $key): Chain; - public static function keyNoneOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function keyNoneOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function keyNot(int|string $key, Validator $validator): Chain; @@ -264,12 +229,7 @@ public static function keyObjectType(int|string $key): Chain; public static function keyOdd(int|string $key): Chain; - public static function keyOneOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function keyOneOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function keyPerfectSquare(int|string $key): Chain; @@ -355,12 +315,7 @@ public static function keyVideoUrl(int|string $key, string|null $service = null) public static function keyVowel(int|string $key, string ...$additionalChars): Chain; - public static function keyWhen( - int|string $key, - Validator $when, - Validator $then, - Validator|null $else = null, - ): Chain; + public static function keyWhen(int|string $key, Validator $when, Validator $then, Validator|null $else = null): Chain; public static function keyWritable(int|string $key): Chain; diff --git a/src/Mixins/KeyChain.php b/src/Mixins/KeyChain.php index e67f6fe1c..99a67b5bd 100644 --- a/src/Mixins/KeyChain.php +++ b/src/Mixins/KeyChain.php @@ -18,12 +18,7 @@ interface KeyChain { public function keyAll(int|string $key, Validator $validator): Chain; - public function keyAllOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function keyAllOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function keyAlnum(int|string $key, string ...$additionalChars): Chain; @@ -33,22 +28,13 @@ public function keyAlwaysInvalid(int|string $key): Chain; public function keyAlwaysValid(int|string $key): Chain; - public function keyAnyOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function keyAnyOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function keyArrayType(int|string $key): Chain; public function keyArrayVal(int|string $key): Chain; - public function keyBase( - int|string $key, - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function keyBase(int|string $key, int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function keyBase64(int|string $key): Chain; @@ -72,12 +58,7 @@ public function keyCallback(int|string $key, callable $callback, mixed ...$argum public function keyCharset(int|string $key, string $charset, string ...$charsets): Chain; - public function keyCircuit( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function keyCircuit(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function keyCnh(int|string $key): Chain; @@ -90,12 +71,7 @@ public function keyContains(int|string $key, mixed $containsValue, bool $identic /** @param non-empty-array $needles */ public function keyContainsAny(int|string $key, array $needles, bool $identical = false): Chain; - public function keyContainsCount( - int|string $key, - mixed $containsValue, - int $count, - bool $identical = false, - ): Chain; + public function keyContainsCount(int|string $key, mixed $containsValue, int $count, bool $identical = false): Chain; public function keyControl(int|string $key, string ...$additionalChars): Chain; @@ -116,13 +92,7 @@ public function keyDate(int|string $key, string $format = 'Y-m-d'): Chain; public function keyDateTime(int|string $key, string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function keyDateTimeDiff( - int|string $key, - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function keyDateTimeDiff(int|string $key, string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function keyDecimal(int|string $key, int $decimals): Chain; @@ -245,12 +215,7 @@ public function keyNif(int|string $key): Chain; public function keyNip(int|string $key): Chain; - public function keyNoneOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function keyNoneOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function keyNot(int|string $key, Validator $validator): Chain; @@ -264,12 +229,7 @@ public function keyObjectType(int|string $key): Chain; public function keyOdd(int|string $key): Chain; - public function keyOneOf( - int|string $key, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function keyOneOf(int|string $key, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function keyPerfectSquare(int|string $key): Chain; diff --git a/src/Mixins/NotBuilder.php b/src/Mixins/NotBuilder.php index 698cb82db..f2112ef51 100644 --- a/src/Mixins/NotBuilder.php +++ b/src/Mixins/NotBuilder.php @@ -34,10 +34,7 @@ public static function notArrayType(): Chain; public static function notArrayVal(): Chain; - public static function notBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function notBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function notBase64(): Chain; @@ -95,12 +92,7 @@ public static function notDate(string $format = 'Y-m-d'): Chain; public static function notDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function notDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function notDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function notDecimal(int $decimals): Chain; diff --git a/src/Mixins/NotChain.php b/src/Mixins/NotChain.php index 1e326c1ad..e0bba27eb 100644 --- a/src/Mixins/NotChain.php +++ b/src/Mixins/NotChain.php @@ -34,10 +34,7 @@ public function notArrayType(): Chain; public function notArrayVal(): Chain; - public function notBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function notBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function notBase64(): Chain; @@ -95,12 +92,7 @@ public function notDate(string $format = 'Y-m-d'): Chain; public function notDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function notDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function notDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function notDecimal(int $decimals): Chain; diff --git a/src/Mixins/NullOrBuilder.php b/src/Mixins/NullOrBuilder.php index d57fb3146..375a91384 100644 --- a/src/Mixins/NullOrBuilder.php +++ b/src/Mixins/NullOrBuilder.php @@ -18,11 +18,7 @@ interface NullOrBuilder { public static function nullOrAll(Validator $validator): Chain; - public static function nullOrAllOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function nullOrAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function nullOrAlnum(string ...$additionalChars): Chain; @@ -32,11 +28,7 @@ public static function nullOrAlwaysInvalid(): Chain; public static function nullOrAlwaysValid(): Chain; - public static function nullOrAnyOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function nullOrAnyOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function nullOrArrayType(): Chain; @@ -44,10 +36,7 @@ public static function nullOrArrayVal(): Chain; public static function nullOrAttributes(): Chain; - public static function nullOrBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function nullOrBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function nullOrBase64(): Chain; @@ -69,11 +58,7 @@ public static function nullOrCallback(callable $callback, mixed ...$arguments): public static function nullOrCharset(string $charset, string ...$charsets): Chain; - public static function nullOrCircuit( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function nullOrCircuit(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function nullOrCnh(): Chain; @@ -107,12 +92,7 @@ public static function nullOrDate(string $format = 'Y-m-d'): Chain; public static function nullOrDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function nullOrDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function nullOrDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function nullOrDecimal(int $decimals): Chain; @@ -245,11 +225,7 @@ public static function nullOrNif(): Chain; public static function nullOrNip(): Chain; - public static function nullOrNoneOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function nullOrNoneOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function nullOrNot(Validator $validator): Chain; @@ -263,11 +239,7 @@ public static function nullOrObjectType(): Chain; public static function nullOrOdd(): Chain; - public static function nullOrOneOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function nullOrOneOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function nullOrPerfectSquare(): Chain; diff --git a/src/Mixins/NullOrChain.php b/src/Mixins/NullOrChain.php index 5e18c35f8..ddcb42f22 100644 --- a/src/Mixins/NullOrChain.php +++ b/src/Mixins/NullOrChain.php @@ -36,10 +36,7 @@ public function nullOrArrayVal(): Chain; public function nullOrAttributes(): Chain; - public function nullOrBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function nullOrBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function nullOrBase64(): Chain; @@ -95,12 +92,7 @@ public function nullOrDate(string $format = 'Y-m-d'): Chain; public function nullOrDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function nullOrDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function nullOrDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function nullOrDecimal(int $decimals): Chain; diff --git a/src/Mixins/PropertyBuilder.php b/src/Mixins/PropertyBuilder.php index 16caf89b8..bd515e266 100644 --- a/src/Mixins/PropertyBuilder.php +++ b/src/Mixins/PropertyBuilder.php @@ -18,12 +18,7 @@ interface PropertyBuilder { public static function propertyAll(string $propertyName, Validator $validator): Chain; - public static function propertyAllOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function propertyAllOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function propertyAlnum(string $propertyName, string ...$additionalChars): Chain; @@ -33,22 +28,13 @@ public static function propertyAlwaysInvalid(string $propertyName): Chain; public static function propertyAlwaysValid(string $propertyName): Chain; - public static function propertyAnyOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function propertyAnyOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function propertyArrayType(string $propertyName): Chain; public static function propertyArrayVal(string $propertyName): Chain; - public static function propertyBase( - string $propertyName, - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function propertyBase(string $propertyName, int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function propertyBase64(string $propertyName): Chain; @@ -72,12 +58,7 @@ public static function propertyCallback(string $propertyName, callable $callback public static function propertyCharset(string $propertyName, string $charset, string ...$charsets): Chain; - public static function propertyCircuit( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function propertyCircuit(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function propertyCnh(string $propertyName): Chain; @@ -85,21 +66,12 @@ public static function propertyCnpj(string $propertyName): Chain; public static function propertyConsonant(string $propertyName, string ...$additionalChars): Chain; - public static function propertyContains( - string $propertyName, - mixed $containsValue, - bool $identical = false, - ): Chain; + public static function propertyContains(string $propertyName, mixed $containsValue, bool $identical = false): Chain; /** @param non-empty-array $needles */ public static function propertyContainsAny(string $propertyName, array $needles, bool $identical = false): Chain; - public static function propertyContainsCount( - string $propertyName, - mixed $containsValue, - int $count, - bool $identical = false, - ): Chain; + public static function propertyContainsCount(string $propertyName, mixed $containsValue, int $count, bool $identical = false): Chain; public static function propertyControl(string $propertyName, string ...$additionalChars): Chain; @@ -120,13 +92,7 @@ public static function propertyDate(string $propertyName, string $format = 'Y-m- public static function propertyDateTime(string $propertyName, string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function propertyDateTimeDiff( - string $propertyName, - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function propertyDateTimeDiff(string $propertyName, string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function propertyDecimal(string $propertyName, int $decimals): Chain; @@ -249,12 +215,7 @@ public static function propertyNif(string $propertyName): Chain; public static function propertyNip(string $propertyName): Chain; - public static function propertyNoneOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function propertyNoneOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function propertyNot(string $propertyName, Validator $validator): Chain; @@ -268,12 +229,7 @@ public static function propertyObjectType(string $propertyName): Chain; public static function propertyOdd(string $propertyName): Chain; - public static function propertyOneOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function propertyOneOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function propertyPerfectSquare(string $propertyName): Chain; @@ -291,11 +247,7 @@ public static function propertyPortugueseNif(string $propertyName): Chain; public static function propertyPositive(string $propertyName): Chain; - public static function propertyPostalCode( - string $propertyName, - string $countryCode, - bool $formatted = false, - ): Chain; + public static function propertyPostalCode(string $propertyName, string $countryCode, bool $formatted = false): Chain; public static function propertyPrimeNumber(string $propertyName): Chain; @@ -326,11 +278,7 @@ public static function propertySpace(string $propertyName, string ...$additional public static function propertySpaced(string $propertyName): Chain; - public static function propertyStartsWith( - string $propertyName, - mixed $startValue, - bool $identical = false, - ): Chain; + public static function propertyStartsWith(string $propertyName, mixed $startValue, bool $identical = false): Chain; public static function propertyStringType(string $propertyName): Chain; @@ -367,12 +315,7 @@ public static function propertyVideoUrl(string $propertyName, string|null $servi public static function propertyVowel(string $propertyName, string ...$additionalChars): Chain; - public static function propertyWhen( - string $propertyName, - Validator $when, - Validator $then, - Validator|null $else = null, - ): Chain; + public static function propertyWhen(string $propertyName, Validator $when, Validator $then, Validator|null $else = null): Chain; public static function propertyWritable(string $propertyName): Chain; diff --git a/src/Mixins/PropertyChain.php b/src/Mixins/PropertyChain.php index 75db7dc4f..31f0965f2 100644 --- a/src/Mixins/PropertyChain.php +++ b/src/Mixins/PropertyChain.php @@ -18,12 +18,7 @@ interface PropertyChain { public function propertyAll(string $propertyName, Validator $validator): Chain; - public function propertyAllOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function propertyAllOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function propertyAlnum(string $propertyName, string ...$additionalChars): Chain; @@ -33,22 +28,13 @@ public function propertyAlwaysInvalid(string $propertyName): Chain; public function propertyAlwaysValid(string $propertyName): Chain; - public function propertyAnyOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function propertyAnyOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function propertyArrayType(string $propertyName): Chain; public function propertyArrayVal(string $propertyName): Chain; - public function propertyBase( - string $propertyName, - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function propertyBase(string $propertyName, int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function propertyBase64(string $propertyName): Chain; @@ -72,12 +58,7 @@ public function propertyCallback(string $propertyName, callable $callback, mixed public function propertyCharset(string $propertyName, string $charset, string ...$charsets): Chain; - public function propertyCircuit( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function propertyCircuit(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function propertyCnh(string $propertyName): Chain; @@ -90,12 +71,7 @@ public function propertyContains(string $propertyName, mixed $containsValue, boo /** @param non-empty-array $needles */ public function propertyContainsAny(string $propertyName, array $needles, bool $identical = false): Chain; - public function propertyContainsCount( - string $propertyName, - mixed $containsValue, - int $count, - bool $identical = false, - ): Chain; + public function propertyContainsCount(string $propertyName, mixed $containsValue, int $count, bool $identical = false): Chain; public function propertyControl(string $propertyName, string ...$additionalChars): Chain; @@ -116,13 +92,7 @@ public function propertyDate(string $propertyName, string $format = 'Y-m-d'): Ch public function propertyDateTime(string $propertyName, string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function propertyDateTimeDiff( - string $propertyName, - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function propertyDateTimeDiff(string $propertyName, string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function propertyDecimal(string $propertyName, int $decimals): Chain; @@ -245,12 +215,7 @@ public function propertyNif(string $propertyName): Chain; public function propertyNip(string $propertyName): Chain; - public function propertyNoneOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function propertyNoneOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function propertyNot(string $propertyName, Validator $validator): Chain; @@ -264,12 +229,7 @@ public function propertyObjectType(string $propertyName): Chain; public function propertyOdd(string $propertyName): Chain; - public function propertyOneOf( - string $propertyName, - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public function propertyOneOf(string $propertyName, Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public function propertyPerfectSquare(string $propertyName): Chain; @@ -355,12 +315,7 @@ public function propertyVideoUrl(string $propertyName, string|null $service = nu public function propertyVowel(string $propertyName, string ...$additionalChars): Chain; - public function propertyWhen( - string $propertyName, - Validator $when, - Validator $then, - Validator|null $else = null, - ): Chain; + public function propertyWhen(string $propertyName, Validator $when, Validator $then, Validator|null $else = null): Chain; public function propertyWritable(string $propertyName): Chain; diff --git a/src/Mixins/UndefOrBuilder.php b/src/Mixins/UndefOrBuilder.php index d85d6d26a..c57adc578 100644 --- a/src/Mixins/UndefOrBuilder.php +++ b/src/Mixins/UndefOrBuilder.php @@ -18,11 +18,7 @@ interface UndefOrBuilder { public static function undefOrAll(Validator $validator): Chain; - public static function undefOrAllOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function undefOrAllOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function undefOrAlnum(string ...$additionalChars): Chain; @@ -32,20 +28,13 @@ public static function undefOrAlwaysInvalid(): Chain; public static function undefOrAlwaysValid(): Chain; - public static function undefOrAnyOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function undefOrAnyOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function undefOrArrayType(): Chain; public static function undefOrArrayVal(): Chain; - public static function undefOrBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public static function undefOrBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public static function undefOrBase64(): Chain; @@ -67,11 +56,7 @@ public static function undefOrCallback(callable $callback, mixed ...$arguments): public static function undefOrCharset(string $charset, string ...$charsets): Chain; - public static function undefOrCircuit( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function undefOrCircuit(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function undefOrCnh(): Chain; @@ -105,12 +90,7 @@ public static function undefOrDate(string $format = 'Y-m-d'): Chain; public static function undefOrDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public static function undefOrDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public static function undefOrDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public static function undefOrDecimal(int $decimals): Chain; @@ -243,11 +223,7 @@ public static function undefOrNif(): Chain; public static function undefOrNip(): Chain; - public static function undefOrNoneOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function undefOrNoneOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function undefOrNot(Validator $validator): Chain; @@ -261,11 +237,7 @@ public static function undefOrObjectType(): Chain; public static function undefOrOdd(): Chain; - public static function undefOrOneOf( - Validator $validator1, - Validator $validator2, - Validator ...$validators, - ): Chain; + public static function undefOrOneOf(Validator $validator1, Validator $validator2, Validator ...$validators): Chain; public static function undefOrPerfectSquare(): Chain; diff --git a/src/Mixins/UndefOrChain.php b/src/Mixins/UndefOrChain.php index 379015eac..dcd4a4fd0 100644 --- a/src/Mixins/UndefOrChain.php +++ b/src/Mixins/UndefOrChain.php @@ -34,10 +34,7 @@ public function undefOrArrayType(): Chain; public function undefOrArrayVal(): Chain; - public function undefOrBase( - int $base, - string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', - ): Chain; + public function undefOrBase(int $base, string $chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'): Chain; public function undefOrBase64(): Chain; @@ -93,12 +90,7 @@ public function undefOrDate(string $format = 'Y-m-d'): Chain; public function undefOrDateTime(string|null $format = null): Chain; /** @param "years"|"months"|"days"|"hours"|"minutes"|"seconds"|"microseconds" $type */ - public function undefOrDateTimeDiff( - string $type, - Validator $validator, - string|null $format = null, - DateTimeImmutable|null $now = null, - ): Chain; + public function undefOrDateTimeDiff(string $type, Validator $validator, string|null $format = null, DateTimeImmutable|null $now = null): Chain; public function undefOrDecimal(int $decimals): Chain;