Files
accessibility-console/src/Rules/AbstractRule.php
T

28 lines
920 B
PHP
Raw Normal View History

2026-05-13 09:10:43 +03:00
<?php
namespace YakNet\AccessibilityConsole\Rules;
use DOMElement;
use YakNet\AccessibilityConsole\Core\Severity;
use YakNet\AccessibilityConsole\Core\Violation;
use YakNet\AccessibilityConsole\Core\WCAGStandard;
abstract class AbstractRule implements RuleInterface
{
abstract public function getId(): string;
abstract public function getDescription(): string;
abstract public function getStandard(): WCAGStandard;
abstract public function getSeverity(): Severity;
protected function createViolation(DOMElement $element, string $message, ?string $suggestion = null): Violation
{
return new Violation(
ruleId: $this->getId(),
message: $message,
severity: $this->getSeverity(),
standard: $this->getStandard(),
htmlSnippet: $element->ownerDocument->saveHTML($element),
fixSuggestion: $suggestion
);
}
}