<?php

namespace XZD\AI\V5\UI;

/**
 * 主题检测器 — 自动识别当前 WordPress 主题并返回适配策略
 *
 * 检测逻辑:
 * 1. Zibll 子比主题 → zibll 适配（深度适配）
 * 2. 其他 → generic 适配（默认样式，降级）
 *
 * 返回结果通过 FloatingChat::getJsConfig() 注入到前端 JS。
 */
class ThemeDetector
{
    /** 支持深度适配的主题 slug 列表 */
    private const DEEP_ADAPTERS = [
        'zibll' => 'zibll',
    ];

    /**
     * 检测当前主题并返回适配信息
     */
    public static function detect(): array
    {
        $theme    = wp_get_theme();
        $template = $theme->get_template() ?: $theme->get_stylesheet();
        $adapter  = self::DEEP_ADAPTERS[$template] ?? 'generic';

        return [
            'adapter'  => $adapter,
            'template' => $template,
            'name'     => $theme->get('Name') ?: 'Unknown',
            'version'  => $theme->get('Version') ?: '0.0',
        ];
    }

    /**
     * 是否为 Zibll 子比主题（便捷方法）
     */
    public static function isZibll(): bool
    {
        return self::detect()['adapter'] === 'zibll';
    }
}
