Загрузка данных


(() => {
    // Останавливаем предыдущую версию
    if (window.__rowSvgDebug) {
        window.__rowSvgDebug.stop();
    }

    const TARGET = 'xmlns="http://www.w3.org/2000/svg"';

    function checkRows() {
        const rows = document.querySelectorAll('tr');

        console.log(`%c[SVG FILTER] Найдено строк <tr>: ${rows.length}`, 'color: cyan');

        let found = 0;
        let notFound = 0;

        rows.forEach((row, index) => {
            const html = row.innerHTML;
            const hasSvg = html.includes(TARGET);

            if (hasSvg) {
                found++;

                console.log(
                    `%c[SVG FILTER] Строка #${index + 1}: SVG xmlns НАЙДЕН → ОСТАВЛЯЕМ`,
                    'color: lime'
                );
            } else {
                notFound++;

                console.log(
                    `%c[SVG FILTER] Строка #${index + 1}: SVG xmlns НЕ НАЙДЕН → МОЖНО УДАЛИТЬ`,
                    'color: red'
                );

                // Показываем начало строки для проверки
                console.log(
                    '[SVG FILTER] HTML строки:',
                    row.outerHTML.substring(0, 500)
                );
            }
        });

        console.log(
            `%c[SVG FILTER] Итого: найдено=${found}, не найдено=${notFound}`,
            'color: yellow'
        );

        return { rows: rows.length, found, notFound };
    }

    // Первая проверка
    console.log('%c========== SVG FILTER START ==========', 'color: orange');
    checkRows();

    // Следим за динамически появляющимися строками
    const observer = new MutationObserver(() => {
        checkRows();
    });

    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

    window.__rowSvgDebug = {
        stop() {
            observer.disconnect();
            delete window.__rowSvgDebug;

            console.log(
                '%c[SVG FILTER] ОСТАНОВЛЕН',
                'color: orange'
            );
        },

        check() {
            return checkRows();
        }
    };

    console.log('%c========================================', 'color: orange');
    console.log(
        '%c[SVG FILTER] Диагностика запущена.',
        'color: cyan'
    );
    console.log(
        '[SVG FILTER] Повторная проверка: __rowSvgDebug.check()'
    );
    console.log(
        '[SVG FILTER] Остановка: __rowSvgDebug.stop()'
    );
    console.log('%c========================================', 'color: orange');
})();