- Add DISCOVERY_LOG_LEVEL=debug - Add DISCOVERY_SHOW_PROGRESS=true - Temporary changes for debugging InitializerProcessor fixes on production
111 lines
3.1 KiB
PHP
111 lines
3.1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
require_once __DIR__ . '/../../vendor/autoload.php';
|
|
|
|
use App\Framework\Design\ComponentScanner;
|
|
use App\Framework\Filesystem\FilePath;
|
|
|
|
$scanner = new ComponentScanner();
|
|
|
|
// Test with a simple CSS file
|
|
$testCss = <<<CSS
|
|
.card {
|
|
background: white;
|
|
padding: 1rem;
|
|
border-radius: 8px;
|
|
}
|
|
|
|
.card:hover {
|
|
transform: translateY(-2px);
|
|
}
|
|
|
|
.btn {
|
|
background: blue;
|
|
color: white;
|
|
padding: 0.5rem 1rem;
|
|
}
|
|
|
|
.btn-primary {
|
|
background: #3b82f6;
|
|
}
|
|
|
|
.sidebar {
|
|
width: 250px;
|
|
background: #f3f4f6;
|
|
}
|
|
|
|
.alert-success {
|
|
background: green;
|
|
color: white;
|
|
}
|
|
CSS;
|
|
|
|
// Write test CSS to a temporary file
|
|
$tempFile = __DIR__ . '/../tmp/test-components.css';
|
|
@mkdir(dirname($tempFile), 0777, true);
|
|
file_put_contents($tempFile, $testCss);
|
|
|
|
try {
|
|
// Scan the test file
|
|
$registry = $scanner->scanComponents([$tempFile]);
|
|
|
|
echo "Total components found: " . $registry->getTotalComponents() . "\n\n";
|
|
|
|
$components = $registry->getAllComponents();
|
|
foreach ($components as $component) {
|
|
echo "Component: " . $component->name . "\n";
|
|
echo " - Display Name: " . $component->getDisplayName() . "\n";
|
|
echo " - Category: " . $component->category->value . "\n";
|
|
echo " - Pattern: " . $component->pattern->value . "\n";
|
|
echo " - State: " . $component->state->value . "\n";
|
|
echo " - Selector: " . $component->selector . "\n";
|
|
echo "\n";
|
|
}
|
|
|
|
// Now test with real CSS files
|
|
echo "\n--- Scanning Real CSS Files ---\n\n";
|
|
|
|
$cssFiles = [
|
|
__DIR__ . '/../../resources/css/components/card.css',
|
|
__DIR__ . '/../../resources/css/components/buttons.css',
|
|
__DIR__ . '/../../resources/css/components/sidebar.css',
|
|
];
|
|
|
|
$existingFiles = array_filter($cssFiles, 'file_exists');
|
|
|
|
if (!empty($existingFiles)) {
|
|
$realRegistry = $scanner->scanComponents($existingFiles);
|
|
|
|
echo "Total components found in real files: " . $realRegistry->getTotalComponents() . "\n\n";
|
|
|
|
$realComponents = $realRegistry->getAllComponents();
|
|
foreach (array_slice($realComponents, 0, 10) as $component) {
|
|
echo "Component: " . $component->name . "\n";
|
|
echo " - Display Name: " . $component->getDisplayName() . "\n";
|
|
echo " - Category: " . $component->category->value . "\n";
|
|
echo " - Pattern: " . $component->pattern->value . "\n";
|
|
echo " - File: " . basename($component->filePath) . "\n";
|
|
echo "\n";
|
|
}
|
|
|
|
// Show category counts
|
|
echo "\nCategory Distribution:\n";
|
|
$categoryCounts = $realRegistry->getCategoryCounts();
|
|
foreach ($categoryCounts as $category => $count) {
|
|
if ($count > 0) {
|
|
echo " - $category: $count components\n";
|
|
}
|
|
}
|
|
} else {
|
|
echo "No real CSS files found to scan.\n";
|
|
}
|
|
|
|
} catch (\Exception $e) {
|
|
echo "Error: " . $e->getMessage() . "\n";
|
|
echo "Trace: " . $e->getTraceAsString() . "\n";
|
|
} finally {
|
|
// Clean up temp file
|
|
@unlink($tempFile);
|
|
} |