USO - add USOa button on userstyle page

Add a link to the copy of the current userstyle on uso.kkx.one

2022-10-03 기준 버전입니다. 최신 버전을 확인하세요.

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

You will need to install an extension such as Tampermonkey to install this script.

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name         USO - add USOa button on userstyle page
// @namespace    github.com/Procyon-b
// @version      0.2.2
// @description  Add a link to the copy of the current userstyle on uso.kkx.one
// @author       Achernar
// @match        https://userstyles.org/styles/*
// @grant        none
// ==/UserScript==

(function() {
"use strict";

var b=document.querySelector('#top-buttons > .left');

const obs=new MutationObserver(function(muts){
  for (let mut of muts) {
    for (let n of mut.addedNodes) {
      b=n && n.querySelector && n.querySelector('#top-buttons > .left');
      if (b) {
        this.disconnect();
        setTimeout(addLink,0);
        return;
        }
      }
    }
  });

if (b) addLink();
else obs.observe(document.body, {attributes: false, subtree: true, childList: true });

function addLink() {
  var L='https://uso.kkx.one/style/'+location.pathname.split('/')[2];
  var e=document.createElement('style');
  b.appendChild(e);
  e.innerText='#USOa {background: #39c739; color: white; text-align: center; order: 9;}';
  e=document.createElement('a');
  b.appendChild(e);
  e.outerHTML='<a href="'+L+'" target="_blank" class="customize_button uninstall_stylish_style_button" id="USOa"><div>Install from USO archive</div></a>';
}

})();