USOS dark mode

dark mode of USOS

当前为 2023-09-12 提交的版本,查看 最新版本

// ==UserScript==
// @name         USOS dark mode
// @namespace    https://greasyfork.org/en/users/901750-gooseob
// @version      1.4.1
// @description  dark mode of USOS
// @author       GooseOb
// @license      MIT
// @match        https://usosweb.uni.lodz.pl/*
// @icon         https://www.google.com/s2/favicons?sz=64&domain=usosweb.uni.lodz.pl
// @grant        none
// ==/UserScript==

(function(){// index.ts
var applyStyles = async (el, cssText) => {
  if (!el)
    return;
  const styles = new CSSStyleSheet;
  await styles.replace(cssText);
  el.adoptedStyleSheets.push(styles);
};
var hamburger = document.querySelector("menu-top")?.shadowRoot.querySelector("menu-top-hamburger")?.shadowRoot;
var copyright = document.querySelector("usos-copyright")?.shadowRoot;
applyStyles(document, ":root { --font-color-reverse: #000; --background-reverse: #ccc; --background: #222; --background-secondary: #333; --font-color: #fff; --grey: #999; } html, main-panel, #uwb-main-column .uwb-white-content, .ua-tooltip.ua-tooltip-badge .tooltipster-box, .ua-tooltip.ua-tooltip-default .tooltipster-box, .uwb-sidepanel, .wrtext table.grey > * > :is(tr.even, tr.strong) > td, .usos-ui table.grey > * > tr > td, .usos-ui table.wrnav tr.even_row td { background-color: var(--background); } p { mix-blend-mode: difference; } body { background: #111; } #footer-logo, #search_logo, .radio { filter: contrast(0.5); } usos-module-link-tile:hover, #uwb-side-column, .wrtext table.grey > * > tr > td, .usos-ui table.grey > * > :is(tr.even, tr.strong) > td, .usos-ui table.grey > *.autostrong > tr:nth-child(odd) > td, .usos-ui table.wrnav tr.odd_row td { background-color: var(--background-secondary); } usos-module-link-tile { background-color: #111; } .schedimg { filter: invert(1); } .usos-ui :is(input[type=");
applyStyles(hamburger, "#hamburger { filter: invert(1); }");
applyStyles(copyright, "#layoutCopyright { color: #fff; }");
for (const el of document.querySelectorAll("usos-selector"))
  applyStyles(el.shadowRoot, "input { background-color: #000; }");
var tableColors = {
  "rgb(236, 236, 236)": "#555",
  "rgb(216, 216, 216)": "#444",
  "rgb(238, 238, 221)": "#444",
  "rgb(222, 222, 205)": "#333",
  "rgb(156, 164, 152)": "#222",
  "rgb(255, 255, 255)": "#333"
};
for (const td of document.querySelectorAll("tbody > tr > td, tbody > tr > th")) {
  const clr = tableColors[td.style.backgroundColor];
  if (clr)
    td.style.backgroundColor = clr;
}
})()