Youtube subscriptions - remove "most relevant" section

Removes the Most relevant section from YT subscriptions, tested on both desktop and mobile

이 스크립트를 설치하려면 Tampermonkey, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

// ==UserScript==
// @name        Youtube subscriptions -  remove "most relevant" section
// @namespace   http://tampermonkey.net/
// @match       https://*.youtube.com/feed/subscriptions*
// @grant       none
// @version     1.1.8
// @license     MIT
// @author      aarron-lee
// @description Removes the Most relevant section from YT subscriptions, tested on both desktop and mobile
// ==/UserScript==

const removeSection = () => {
    const mostRelevantNode = isMobile() ? 'ytm-rich-shelf-renderer' : 'ytd-rich-section-renderer'
    const path = `//${mostRelevantNode}[.//span[text()="Most relevant"]]`

    const o = new MutationObserver(
        () => {
            const res = document.evaluate(
                path,
                document,
                null,
                XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
                null,
            );
            const n = res.snapshotLength
            if(n != 1) {
                return
            }

            const e = res.snapshotItem(0)
            if(e instanceof Element) {
                e.remove()
            }
        },
    );
    o.observe(
        document.body,
        {
            childList: true,
            subtree: true,
        },
    )
}

function isMobile() {
    const url = window.location.href;

    if (url.includes('m.youtube.com')) {
        return true
    }
    return false
}

function main() {
    removeSection()
}


main()