THide twitter replies

Hide twitter replies. Does not hide them if made by same author as current tweet, so threads should still work

  1. // ==UserScript==
  2. // @name THide twitter replies
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description Hide twitter replies. Does not hide them if made by same author as current tweet, so threads should still work
  6. // @author Fernando
  7. // @match https://twitter.com/*
  8. // @grant none
  9. // ==/UserScript==
  10.  
  11. (function() {
  12. 'use strict';
  13.  
  14. function hideElements() {
  15. const cells = document.querySelectorAll('[aria-label="Timeline: Conversation"] [data-testid="cellInnerDiv"]');
  16. let mainTweetNotFound = true;
  17. let srcProfilePic;
  18. cells.forEach((cell) => {
  19. if (cell.querySelector('[data-testid="tweetButtonInline"]')) {
  20. mainTweetNotFound = false;
  21. srcProfilePic = cell.querySelector('.css-9pa8cd')?.src;
  22. } else if ( mainTweetNotFound ) {
  23. //does nothing, since its a tweet above the main twitter
  24. } else {
  25. let srcInCurrent = cell.querySelector('.css-9pa8cd')?.src;
  26. if ( srcInCurrent === srcProfilePic ) {
  27. // does nothing
  28. } else {
  29. cell.style.display = 'none';
  30. }
  31. }
  32. });
  33. }
  34.  
  35. document.addEventListener('DOMContentLoaded', hideElements);
  36.  
  37. const observer = new MutationObserver(hideElements);
  38. observer.observe(document.body, { childList: true, subtree: true });
  39. })();