Git Komut Rehberi & Terminal Asistanı
Sıfırdan Yeni Bir Depo Başlatın:
Mevcut Bir Git Deposu veya Klasörü Gönderin:
Hataları Geri Alma, İptal & Temizlik:
Son commit'i geri al (yapılan değişiklikleri korur):
git reset --soft HEAD~1
Yapılan yerel değişiklikleri iptal et (çalışma ağacını temizler):
git restore .
Takip edilmeyen gereksiz dosyaları sil:
git clean -fd
Değişiklikleri geçici sakla ve geri getir (stash):
git stash git stash pop
Dal (Branch) ve Sürüm Etiketleri:
Yeni dal aç ve geçiş yap:
git checkout -b yeni-ozellik git push -u origin yeni-ozellik
Sürüm etiketi (tag) oluştur ve gönder:
git tag -a v1.0.0 -m "Sürüm 1.0.0" git push origin --tags
build: upgrade PHPStan to level 9 and fix strict type errors
This commit is contained in:
@@ -21,12 +21,21 @@ abstract class AbstractRule
|
||||
|
||||
protected function createViolation(string $message, \DOMElement $element): Violation
|
||||
{
|
||||
$doc = $element->ownerDocument;
|
||||
$html = '';
|
||||
if ($doc !== null) {
|
||||
$htmlVal = $doc->saveHTML($element);
|
||||
if (is_string($htmlVal)) {
|
||||
$html = $htmlVal;
|
||||
}
|
||||
}
|
||||
|
||||
return new Violation(
|
||||
ruleId: (new \ReflectionClass($this))->getShortName(),
|
||||
message: $message,
|
||||
severity: $this->getSeverity(),
|
||||
standard: $this->getStandard(),
|
||||
htmlSnippet: $element->ownerDocument->saveHTML($element)
|
||||
htmlSnippet: $html
|
||||
);
|
||||
}
|
||||
}
|
||||
+14
-18
@@ -19,25 +19,21 @@ class RuleEngine
|
||||
{
|
||||
$allViolations = [];
|
||||
foreach ($this->rules as $rule) {
|
||||
if (method_exists($rule, 'check')) {
|
||||
// Determine if it's a document-level rule or element-level rule
|
||||
$reflection = new \ReflectionMethod($rule, 'check');
|
||||
$params = $reflection->getParameters();
|
||||
|
||||
$type = $params[0]->getType();
|
||||
if (isset($params[0]) && $type instanceof \ReflectionNamedType && $type->getName() === 'DOMDocument') {
|
||||
// Document-level rule (Core\AbstractRule style)
|
||||
$violations = $rule->check($doc);
|
||||
$allViolations = array_merge($allViolations, $violations);
|
||||
} else {
|
||||
// Element-level rule (Rules\RuleInterface style)
|
||||
// We need to iterate over all elements
|
||||
$xpath = new \DOMXPath($doc);
|
||||
$elements = $xpath->query('//*');
|
||||
if ($rule instanceof AbstractRule) {
|
||||
// Document-level rule (Core\AbstractRule style)
|
||||
$violations = $rule->check($doc);
|
||||
$allViolations = array_merge($allViolations, $violations);
|
||||
} elseif ($rule instanceof \YakNet\AccessibilityConsole\Rules\RuleInterface) {
|
||||
// Element-level rule (Rules\RuleInterface style)
|
||||
$xpath = new \DOMXPath($doc);
|
||||
$elements = $xpath->query('//*');
|
||||
if ($elements !== false) {
|
||||
foreach ($elements as $element) {
|
||||
$violation = $rule->check($element);
|
||||
if ($violation) {
|
||||
$allViolations[] = $violation;
|
||||
if ($element instanceof \DOMElement) {
|
||||
$violation = $rule->check($element);
|
||||
if ($violation) {
|
||||
$allViolations[] = $violation;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -4,11 +4,11 @@ namespace YakNet\AccessibilityConsole\Core;
|
||||
|
||||
class Scanner
|
||||
{
|
||||
public function __construct(private ?RuleEngine $engine = null)
|
||||
private RuleEngine $engine;
|
||||
|
||||
public function __construct(?RuleEngine $engine = null)
|
||||
{
|
||||
if ($this->engine === null) {
|
||||
$this->engine = new RuleEngine();
|
||||
}
|
||||
$this->engine = $engine ?? new RuleEngine();
|
||||
}
|
||||
|
||||
public function addRule(mixed $rule): void
|
||||
|
||||
Reference in New Issue
Block a user