Block lemmy instances

Remove posts and comments from specified instances.

当前为 2023-06-23 提交的版本,查看 最新版本

// ==UserScript==
// @name         Block lemmy instances
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  Remove posts and comments from specified instances.
// @author       RyanHx
// @match        https://vlemmy.net/*
// @grant        none
// @license      MIT
// ==/UserScript==

(function() {
    'use strict';
    const target = document.getElementById("app");
    const config = { attributes: false, childList: true, subtree: true };
    const callback = (mutationList, observer) => {
        const blockedInstances = ["example.ml","lemmy.world"];
        const infoLinks = document.querySelectorAll("a[title]");
        for (const linkElem of infoLinks) {
            if (blockedInstances.some((i) => linkElem.getAttribute("title").endsWith(i))) {
                const post = linkElem.closest("div.post-listing, div.comment");
                if (post) {
                    const divider = post.nextElementSibling;
                    post.remove();
                    console.log("Removed post.");
                    if(divider?.nodeName === "HR"){
                        divider.remove();
                    }
                    break;
                }
            }
        }
    }
    const observer = new MutationObserver(callback);
    observer.observe(target, config);
})();