// ==UserScript== // @name Kemono.su link on Patreon // @namespace http://tampermonkey.net/ // @version 1.1.0 // @description Quick link to Kemono page from Patreon // @author aqemi // @match https://www.patreon.com/* // @icon https://www.google.com/s2/favicons?sz=64&domain=patreon.com // @grant none // @license MIT // @downloadURL https://update.greasyfork.icu/scripts/519876/Kemonosu%20link%20on%20Patreon.user.js // @updateURL https://update.greasyfork.icu/scripts/519876/Kemonosu%20link%20on%20Patreon.meta.js // ==/UserScript== (function () { window.addEventListener( 'load', function () { const base = __NEXT_DATA__.props.pageProps.bootstrapEnvelope.pageBootstrap; const { included } = base.post ?? base.campaign; const includedEntry = included.find((x) => x.type === 'user'); const url = `https://kemono.su/patreon/user/${includedEntry?.id}`; console.info(url); const homeLinks = document.querySelectorAll('a[href="https://www.patreon.com/home"]'); const homeLink = Array.from(homeLinks).slice(-1).pop(); const kemonoLink = homeLink.cloneNode(true); kemonoLink.href = url; kemonoLink.ariaCurrent = null; const title = kemonoLink.querySelector('p'); title.innerHTML = 'Kemono.su'; title.style.setProperty('color', '#e6702f', 'important'); const icon = kemonoLink.querySelector('svg'); icon.innerHTML = ` `; icon.setAttribute('viewBox', '0 0 600 579'); homeLink.parentNode.insertBefore(kemonoLink, homeLink.nextElementSibling); }, false ); })();