// ==UserScript== // @name X/Twitter Unfollowing // @namespace http://tampermonkey.net/ // @version 0.41 // @description try to take over the world! // @author You // @match https://x.com/* // @grant none // @downloadURL https://update.greasyfork.icu/scripts/423259/XTwitter%20Unfollowing.user.js // @updateURL https://update.greasyfork.icu/scripts/423259/XTwitter%20Unfollowing.meta.js // ==/UserScript== const panelId = '__sedgwickz__unfollow_id' const sleep = ms => new Promise((resolve) => setTimeout(resolve, ms)) function applyStyles(element, styles) { for (let property in styles) { if (styles.hasOwnProperty(property)) { element.style[property] = styles[property]; } } } function createUnfollowPanel() { if (document.getElementById(panelId)) { const panel = document.getElementById(panelId) panel.remove() } let container = document.createElement('div') container.id = panelId applyStyles(container, { position: 'fixed', 'z-index': 9999999, padding: '10px', top: '0', right: '0', background: '#fff', display: 'flex', 'gap': '4px', 'flex-direction': 'column', 'justify-content': 'center', 'align-items': 'center' }) document.body.append(container) const unFollowButton = document.createElement('button') unFollowButton.innerText = "Unfollow Start" container.append(unFollowButton) const descDiv = document.createElement('div') descDiv.innerHTML = `