public static function errors($input, callable $renderer = null) { if (!($messages = self::$errors)) { // no messages at all return; } if (!$messages->has($input)) { // no message for this input return; } // render errors using external renderer if ($renderer) { return $renderer($input, $messages->get($input), $messages); } $errors = Tag::ul()->addClass('form-field-error'); foreach ($messages->get($input) as $message) { $errors->append(Tag::li($message, 'message-' . $message->getType())); } return $errors; }