您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
去除“更新付款方式”错误;在 PR 界面添加快进式合并按钮。
// ==UserScript== // @name Better GitHub // @namespace https://gf.zukizuki.org/zh-CN/scripts/515684 // @version 0.2.1 // @description 去除“更新付款方式”错误;在 PR 界面添加快进式合并按钮。 // @author ketikai // @license MIT // @match https://github.com/* // @icon https://github.com/fluidicon.png // @grant none // ==/UserScript== (function() { 'use strict'; // <section aria-label="Error" class="flash flash-full js-notice flash-error">...</section> function RemoveUpdateYourPaymentMethodError() { let sections = document.getElementsByTagName('section'); if (!sections) { return; } for (let i = 0; i < sections.length; i++) { let section = sections[i]; if (!section) { continue; } if (section.ariaLabel != 'Error') { continue; } if (section.className != 'flash flash-full js-notice flash-error') { continue; } let text = section.innerText; if (!text || !text.startsWith("We are having a problem billing your account. Please update your payment method or call your payment provider for details on why the transaction failed.")) { continue; } section.remove(); console.log('Removed Error: UpdateYourPaymentMethod.'); break; } } function insertFastForwardButton() { let state = document.getElementsByClassName('State State--open'); if (state.length < 1) { return; } if (state[0].getAttribute('reviewable_state') !== 'ready') { return; } let commentDiv = document.getElementsByClassName('color-bg-subtle ml-1')[0]; if (commentDiv.textContent.trim() === 'Comment') { let parent = commentDiv.parentElement; let fastForwardDiv = commentDiv.cloneNode(true); let fastForwardButton = fastForwardDiv.getElementsByTagName('button')[0]; fastForwardButton.textContent = 'Fast forward'; fastForwardButton.getAttributeNames().forEach(function(name) { if (name !== 'class') { fastForwardButton.removeAttribute(name); } }); fastForwardButton.setAttribute('type', 'button'); let textArea = document.getElementById('new_comment_field'); let commentButton = commentDiv.getElementsByTagName('button')[0]; fastForwardButton.onclick = function(event) { if (event.button == 0) { if (textArea.textContent === '/fast-forward') { commentButton.disabled = false; commentButton.click(); commentButton.disabled = true; textArea.textContent = ''; } else { textArea.textContent = '/fast-forward'; commentButton.disabled = true; } } }; parent.insertBefore(fastForwardDiv, commentDiv); } } insertFastForwardButton(); RemoveUpdateYourPaymentMethodError(); document.addEventListener("DOMContentLoaded", function(event) { insertFastForwardButton(); RemoveUpdateYourPaymentMethodError(); }); })();