context->user)) { return [ new Input('password', Input::SECRET, 'challenge.input.password') ]; } return [ new Input('username', Input::TEXT, 'challenge.input.username'), new Input('password', Input::SECRET, 'challenge.input.password'), ]; } public function validate( AuthProvider $provider, array $inputData ): ChallengeResult { self::requireInterface($provider, AuthInterface\Password::class); $successful = $provider->validatePassword( $inputData['username'] ?? $this->context->user, $inputData['password'] ); return new ChallengeResult( self::class, $successful, $inputData['username'] ?? null, $successful ? null : 'challenge.message.wrong-password' ); } }