Booru Revamped

This adds a couple of changes to the layout and behaviour of the site

"use strict";
// ==UserScript==
// @name         Booru Revamped
// @namespace    westerhold78
// @version      2.4
// @description  This adds a couple of changes to the layout and behaviour of the site
// @match        *://gelbooru.com/*
// @match        *://yande.re/*
// @match        *://danbooru.donmai.us/*
// @match        *://safebooru.org/*
// @match        *://konachan.com/*
// @match        *://konachan.net/*
// @match        *://rule34.paheal.net/*
// @match        *://rule34.xxx/*
// @icon         data:image/png;base64,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
// @copyright    2022, westerhold78
// @grant        GM_addStyle
// @grant        GM_xmlhttpRequest
// ==/UserScript==
const style=[],newTabForDetailPage=!0,zoomScale=2.5,zoomDelay=.4,imageTypes=["jpg","png","jpeg","gif"],movieExtensions=["mp4","webm"],rule34pahealSelectorImg="#image-list .shm-thumb-link img",rule34pahealSelectorVideo="#image-list .shm-thumb-link video",replaceMeString=">>[[REPLACEME]]<<",{hash,hostname,pathname,searchParams}=new URL(window.location.href);let anchorElement;const configuration={"yande.re":{pages:{list:{pathname:/^\/post$/},post:{pathname:/^\/post\/show\/.*$/}},selectors:{anchor:"#post-list-posts .inner .thumb",image:"#post-list-posts .inner .thumb img.preview"},sample:{type:"selector",selector:"#image"},original:{type:"selector",selector:"#highres"},postPageImageId:"image",maxHeight:"calc(100vh - 260px)",maxWidth:"calc(100vw - 310px)"},"gelbooru.com":{pages:{list:{searchParams:{page:"post",s:"list"}},post:{searchParams:{page:"post",s:"view"}}},selectors:{anchor:"#container main .thumbnail-container .thumbnail-preview a",image:"#container main .thumbnail-container .thumbnail-preview a img"},sample:{type:"selector",selector:"#image"},original:{type:"ogImage"},postPageImageId:"image",maxHeight:"calc(100vh - 285px)",maxWidth:"calc(100vw - 260px)"},"safebooru.org":{pages:{list:{searchParams:{page:"post",s:"list"}},post:{searchParams:{page:"post",s:"view"}}},selectors:{anchor:"#post-list .content .thumb a",image:"#post-list .content .thumb a img.preview"},sample:{type:"selector",selector:"#image"},original:{type:"ogImage"},postPageImageId:"image",maxHeight:"calc(100vh - 200px)",maxWidth:"calc(100vw - 260px)"},"danbooru.donmai.us":{pages:{list:{pathname:/^\/posts$/},post:{pathname:/^\/posts\/.*$/}},selectors:{anchor:"#posts .posts-container article .post-preview-link",image:"#posts .posts-container article .post-preview-link img.post-preview-image"},sample:{type:"ogImage"},original:{type:"selector",selector:"#image"},postPageImageId:"image",maxHeight:"calc(100vh - 200px)",maxWidth:"calc(100vw - 260px)"},"konachan.net":{pages:{list:{pathname:/^\/post$/},post:{pathname:/^\/post\/show\/.*$/}},selectors:{anchor:"#post-list-posts .inner .thumb",image:"#post-list-posts .inner .thumb img.preview"},sample:{type:"selector",selector:"#image"},original:{type:"selector",selector:"#highres"},postPageImageId:"image",maxHeight:"calc(100vh - 240px)",maxWidth:"calc(100vw - 280px)"},"konachan.com":{pages:{list:{pathname:/^\/post$/},post:{pathname:/^\/post\/show\/.*$/}},selectors:{anchor:"#post-list-posts .inner .thumb",image:"#post-list-posts .inner .thumb img.preview"},sample:{type:"ogImage"},original:{type:"selector",selector:"#image"},postPageImageId:"image",maxHeight:"calc(100vh - 240px)",maxWidth:"calc(100vw - 280px)"},"rule34.paheal.net":{pages:{list:{pathname:/^\/post\/list\/?.*$/},post:{pathname:/^\/post\/view\/.*$/}},selectors:{anchor:".shm-image-list .shm-thumb-link",image:".shm-image-list .shm-thumb-link img"},sample:{type:"ogImage"},original:{type:"selector",selector:"#main_image"},postPageImageId:"main_image",maxHeight:"calc(100vh - 345px)",maxWidth:"calc(100vw - 380px)"},"rule34.xxx":{pages:{list:{searchParams:{page:"post",s:"list"}},post:{searchParams:{page:"post",s:"view"}}},selectors:{anchor:"#post-list .content .image-list .thumb a",image:"#post-list .content .image-list .thumb a img"},sample:{type:"selector",selector:"#image"},original:{type:"ogImage",fallback:{type:"selector",selector:"#gelcomVideoPlayer"}},postPageImageId:"image",maxHeight:"calc(100vh - 220px)",maxWidth:"calc(100vw - 270px)"}},stylesArr={"yande.re":{overflowSelector:"#post-list-posts .inner",frameSelector:"#post-list .content .thumb video",scalingSelector:"#post-list .content .thumb *:is(img, video):hover",zIndexSelector:"#post-list .content .thumb *:is(img, video):hover"},"gelbooru.com":{scalingSelector:"article.thumbnail-preview *:is(img, video):hover",frameSelector:"article.thumbnail-preview video",zIndexSelector:"article.thumbnail-preview *:is(img, video):hover"},"danbooru.donmai.us":{scalingSelector:"a.post-preview-link *:is(img, video):hover",frameSelector:"a.post-preview-link video",zIndexSelector:"a.post-preview-link *:is(img, video):hover"},"safebooru.org":{scalingSelector:"#post-list .content .thumb a *:is(img, video):hover",zIndexSelector:"#post-list .content .thumb a *:is(img, video):hover"},"konachan.com":{overflowSelector:"#post-list-posts .inner",scalingSelector:"#post-list-posts .inner a.thumb *:is(img, video):hover",zIndexSelector:"#post-list-posts .inner a.thumb *:is(img, video):hover"},"konachan.net":{overflowSelector:"#post-list-posts .inner",scalingSelector:"#post-list-posts .inner a.thumb *:is(img, video):hover",zIndexSelector:"#post-list-posts .inner a.thumb *:is(img, video):hover"},"rule34.paheal.net":{scalingSelector:"#image-list .shm-image-list .shm-thumb-link *:is(img, video):hover",zIndexSelector:"#image-list .shm-image-list .shm-thumb-link *:is(img, video):hover"},"rule34.xxx":{scalingSelector:"#post-list .content .image-list .thumb a *:is(img, video):hover",zIndexSelector:"#post-list .content .image-list .thumb a *:is(img, video):hover"}},element=stylesArr[hostname],{scalingSelector,frameSelector,overflowSelector,zIndexSelector}=element||{};scalingSelector&&style.push(`${scalingSelector} {
      transform: scale(${2.5});
      -moz-transform: scale(${2.5});
      -webkit-transform: scale(${2.5});
      transition-delay: ${.4}s;
      transition-property: transform;
    }`),frameSelector&&style.push(`${element.frameSelector} {
      border: 3px solid #0000ff;
  }`),overflowSelector&&style.push(`${overflowSelector} {
      position: inherit;
      overflow: visible !important;
    }`),zIndexSelector&&style.push(`${zIndexSelector} {
      position: relative;
      z-index: 9001;
    }`),style.push(`[data-ext="mp4"] a video, [data-ext="webm"] a video {
    border: 3px solid #0000ff;
  }`),GM_addStyle(style.join(`
`));const onLoad=()=>{handlePaths()};document.readyState!=="loading"?onLoad():document.addEventListener("DOMContentLoaded",()=>{onLoad()});function handlePaths(){const e=Object.entries(configuration[hostname].pages).filter(([a,o])=>(o.pathname?.exec(pathname)?.length??0)>0)?.[0]?.[0],t=Object.entries(configuration[hostname].pages).filter(([a,o])=>{const s=Object.entries(o.searchParams||[]).filter(([i,r])=>r===searchParams.get(i)).length,n=Object.keys(o.searchParams??[]).length;return s===n&&s>0&&n>0})?.[0]?.[0];if(e==="list"||t==="list"||hostname==="danbooru.donmai.us"&&pathname==="/")openImageInNewTab(),document.querySelectorAll(configuration[hostname].selectors.image).forEach(async a=>{a.addEventListener("mouseover",async o=>await onImageMouseOver(o))});else if(e==="post"||t==="post"){const a=getUrl(document,"original"),o=document.getElementById(configuration[hostname].postPageImageId);o.onclick=null,o?.addEventListener("click",()=>{window.open(a,"_self")}),o.style.maxHeight=configuration[hostname].maxHeight,o.style.maxWidth=configuration[hostname].maxWidth,o.style.height="unset",o.style.width="unset",o?.scrollIntoView({behavior:"smooth",block:"end"})}}function openImageInNewTab(){{const e=document.querySelectorAll(configuration[hostname].selectors.anchor);Array.from(e).map(t=>t.setAttribute("target","_blank"))}}async function onImageMouseOver(e){const t=e.target;if(t.title="",!t.classList.contains("loaded")){const a=await getURLList(t);if(hostname==="rule34.paheal.net"){const n=t.parentElement?.parentElement?.children[2];a.original=n.href}await getType(t)==="video"?await swapVideo(t,a.original):await swapImageURLs(t,a)}}async function getType(e){switch(hostname){case"gelbooru.com":return movieExtensions.includes(e.classList[0])?"video":"image";case"danbooru.donmai.us":{const t=new URL((e.parentElement?.parentElement).href),a=await getDocFromURL(t.href);return getPostType(a)}case"rule34.paheal.net":{const t=(e.parentElement?.parentElement).dataset.ext;return movieExtensions.includes(t)?"video":"image"}case"rule34.xxx":{const t=new URL(e.parentElement.href),a=await getDocFromURL(t.href);return getPostType(a)}default:return null}}async function swapImageURLs(e,t){const{sample:a,original:o}=t;a!==void 0?setAsyncImage(e,a).then(s=>{o!==void 0&&setImage(e,o,e.width)}):o!==void 0&&setImage(e,o,e.width)}async function getURLList(e){switch(hostname){case"danbooru.donmai.us":{const t=(e?.parentElement?.parentElement).href;return await fetchImageURLGeneric(t)}default:{const t=(e?.parentElement).href;return await fetchImageURLGeneric(t)??{}}}}function swapVideo(e,t){const a=document.createElement("video");a.autoplay=!0,a.loop=!0,a.muted=!0,a.poster=e.src,a.height=e.height,a.width=e.width;const o=document.createElement("source");o.type="video/mp4",o.src=t,a.appendChild(o),e.replaceWith(a)}async function fetchImageURLGeneric(e){const t=await getDocFromURL(e),a=getUrl(t,"sample"),o=getUrl(t,"original");return{...o!==void 0&&o.length>0&&{original:o},...a!==void 0&&a!==o&&{sample:a}}}async function getDocFromURL(e){return await fetch(e).then(a=>a.text()).then(a=>new DOMParser().parseFromString(a,"text/html"))}function getUrl(e,t){const a=configuration[hostname][t];switch(a.type){case"ogImage":return e.querySelector("meta[property='og:image']").getAttribute("content");case"selector":{const o=e.querySelector(a.selector);return o?.src??o?.href??o?.getElementsByTagName("source")[0].src}default:return""}}function getPostType(e){const t=e.querySelector(configuration[hostname].original.selector)??e.querySelector(configuration[hostname].original.fallback.selector);return t instanceof HTMLVideoElement?"video":t instanceof HTMLImageElement?"image":null}function setImage(e,t,a){return new Promise((o,s)=>{e.onload=()=>o(),e.onerror=()=>s(),e.width=a,e.src=t,hostname==="danbooru.donmai.us"&&e.previousElementSibling?.remove()})}async function setAsyncImage(e,t){return new Promise((a,o)=>{setTimeout(async()=>{try{return t===void 0?void 0:(await setImage(e,t,e.width),t)}catch(s){console.error(s),o(s);return}finally{a(t)}})})}