Inkbunny Remove Blocked Submissions

Automatically hides and removes blocked submissions from your view on Inkbunny.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         Inkbunny Remove Blocked Submissions
// @namespace    http://tampermonkey.net/
// @version      1.2
// @description  Automatically hides and removes blocked submissions from your view on Inkbunny.
// @author       PoofiPamps
// @license      MIT
// @match        https://inkbunny.net/*
// @match        https://*.inkbunny.net/*
// @grant        none
// @run-at       document-idle
// ==/UserScript==

(function () {
  "use strict";

  const SUBMISSION_SELECTOR = [
    'div[class*="widget_thumbnailHugeCompleteFromSubmission"]',
    'div[class*="widget_thumbnailLargeCompleteFromSubmission"]',
    'div[class*="widget_thumbnailCompleteFromSubmission"]',
  ].join(", ");

  function removeBlockedSubmissions() {
    const blockedIndicators = document.querySelectorAll(
      'div.content div[title="Blocked"]'
    );

    blockedIndicators.forEach((blocked) => {
      const submission = blocked.closest(SUBMISSION_SELECTOR);
      if (submission && submission.parentNode) {
        submission.parentNode.removeChild(submission);
      }
    });
  }

  removeBlockedSubmissions();

  const observer = new MutationObserver(removeBlockedSubmissions);
  observer.observe(document.body, { childList: true, subtree: true });
})();