X/Twitter スマホブラウザ向け「フォロー中」タブを非表示

X (旧Twitter) のホームタイムラインから「フォロー中」タブを非表示にします。

// ==UserScript==
// @name         X/Twitter スマホブラウザ向け「フォロー中」タブを非表示
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  X (旧Twitter) のホームタイムラインから「フォロー中」タブを非表示にします。
// @author       Generated by Gemini
// @match        https://x.com/*
// @match        https://twitter.com/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';

    const tabNameToHide = 'フォロー中';

    const hideFollowingTab = () => {
        // 'role="tab"' を持つすべての<a>要素(タブ)を取得します
        const tabs = document.querySelectorAll('a[role="tab"]');

        for (const tab of tabs) {
            // タブのテキストが非表示にしたいものと一致するか確認します
            if (tab.textContent === tabNameToHide) {
                // タブを囲む親要素 (role="presentation") を見つけます
                const parentContainer = tab.closest('div[role="presentation"]');
                if (parentContainer && parentContainer.style.display !== 'none') {
                    // 親要素を非表示にします
                    parentContainer.style.display = 'none';
                }
                // 複数の「フォロー中」タブが存在する可能性は低いため、見つかったらループを抜けても良い
                // break;
            }
        }
    };

    // Xのコンテンツは動的に読み込まれるため、DOMの変更を監視します
    const observer = new MutationObserver((mutationsList, observer) => {
        // DOMに変更があるたびに、非表示にする関数を実行します
        hideFollowingTab();
    });

    // body要素とその子孫要素の変更(ノードの追加・削除など)を監視対象とします
    observer.observe(document.body, {
        childList: true,
        subtree: true
    });

    // 初期読み込み時にも一度実行します
    hideFollowingTab();
})();