I dont see a way sadly. It runs all of them inside password validation class at once. It doesnt check for bail or similar. Also it isnt macroable..
if ($this->mixedCase && ! preg_match('/(\p{Ll}+.*\p{Lu})|(\p{Lu}+.*\p{Ll})/u', $value)) {
$validator->addFailure($attribute, 'password.mixed');
}
if ($this->letters && ! preg_match('/\pL/u', $value)) {
$validator->addFailure($attribute, 'password.letters');
}
if ($this->symbols && ! preg_match('/\p{Z}|\p{S}|\p{P}/u', $value)) {
$validator->addFailure($attribute, 'password.symbols');
}
if ($this->numbers && ! preg_match('/\pN/u', $value)) {
$validator->addFailure($attribute, 'password.numbers');
}
You could just set them directly in the validator
$this->validate($request, [
'password' => ['bail', 'required', 'confirmed', Password::min(8)->mixedCase(), Password::min(8)->letters(), ...etc..],
]);