push new update, + Notices UI fixes

This commit is contained in:
SethBurkart123
2023-11-24 17:19:11 +11:00
parent 8c9d36f4d6
commit 9527853606
58 changed files with 499 additions and 1 deletions
+154
View File
File diff suppressed because one or more lines are too long
+8
View File
@@ -0,0 +1,8 @@
/*!
localForage -- Offline Storage, Improved
Version 1.10.0
https://localforage.github.io/localForage
(c) 2013-2017 Mozilla, Apache License 2.0
*/
/*! @license DOMPurify 3.0.6 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.6/LICENSE */
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
(()=>{"use strict";function e(t){const o=new Date;let a=`https://newsapi.org/v2/everything?domains=abc.net.au&from=${o.getFullYear()+"-"+(o.getMonth()+1)+"-"+(o.getDate()-1)}&apiKey=17c0da766ba347c89d094449504e3080`;fetch(a).then((e=>e.json())).then((o=>{"rateLimited"==o.code?(a+="%00",e()):t({news:o})}))}chrome.runtime.onMessage.addListener(((a,n,s)=>{switch(a.type){case"reloadTabs":chrome.tabs.query({},(function(e){for(let t of e)t.title.includes("SEQTA Learn")&&chrome.tabs.reload(t.id)}));break;case"currentTab":return chrome.tabs.query({active:!0,currentWindow:!0},(function(e){chrome.tabs.sendMessage(e[0].id,a,(function(e){s(e)}))})),!0;case"githubTab":chrome.tabs.create({url:"github.com/SethBurkart123/EvenBetterSEQTA"});break;case"setDefaultStorage":o(t);break;case"addPermissions":void 0!==chrome.declarativeContent&&chrome.declarativeContent.onPageChanged.removeRules(void 0,(()=>{})),chrome.permissions.request({permissions:["declarativeContent"],origins:["*://*/*"]},(e=>{e&&([].forEach((e=>{chrome.declarativeContent.onPageChanged.addRules([e])})),alert("Permissions granted. Reload SEQTA pages to see changes. If this workaround doesn't work, please contact the developer. It will be an easy fix"))}));break;case"sendNews":return e(s),!0;default:console.log("Unknown request type")}}));const t={onoff:!0,animatedbk:!0,bksliderinput:50,transparencyEffects:!1,lessonalert:!0,notificationcollector:!0,defaultmenuorder:[],menuitems:{},menuorder:[],subjectfilters:{},selectedColor:"linear-gradient(40deg, rgba(201,61,0,1) 0%, RGBA(170, 5, 58, 1) 100%)",DarkMode:!0,shortcuts:[{name:"YouTube",enabled:!1},{name:"Outlook",enabled:!0},{name:"Office",enabled:!0},{name:"Spotify",enabled:!1},{name:"Google",enabled:!0},{name:"DuckDuckGo",enabled:!1},{name:"Cool Math Games",enabled:!1},{name:"SACE",enabled:!1},{name:"Google Scholar",enabled:!1},{name:"Gmail",enabled:!1},{name:"Netflix",enabled:!1},{name:"Education Perfect",enabled:!1}],customshortcuts:[]};function o(e){for(var t in e)chrome.storage.local.set({[t]:e[t]})}chrome.runtime.onInstalled.addListener((function(e){chrome.storage.local.remove(["justupdated"]),chrome.storage.local.get(null,(function(e){var a=e;const n=Object.assign({},t,a);!function(e){for(let o in e)if("object"==typeof e[o])if(void 0===t[o].length)n[o]=Object.assign({},t[o],a[o]);else{let e=t[o].length;n[o]=Object.assign({},t[o],a[o]);let s=[];for(let t=0;t<e;t++)s.push(n[o][t]);n[o]=s}}(t),e.customshortcuts&&(n.customshortcuts=e.customshortcuts),o(n)})),e.reason,"update"==e.reason&&(chrome.storage.local.set({justupdated:!0}),chrome.storage.local.get(null,(function(e){let t=!1;if(e.shortcuts&&e.shortcuts.length>0&&"Name"in e.shortcuts[0]&&(t=!0,e.shortcuts=e.shortcuts.map((e=>({name:e.Name,enabled:e.enabled})))),e.shortcuts&&e.shortcuts.length>0)for(let o of e.shortcuts)"educationperfect"!==o.name&&"Education Perfect"!==o.name||(t=!0,o.name="Education Perfect");t&&chrome.storage.local.set({shortcuts:e.shortcuts},(function(){console.log("Migration completed.")}))})))}))})();
File diff suppressed because one or more lines are too long
+31
View File
@@ -0,0 +1,31 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Background Fetcher</title>
<style>
body {
margin: 0 !important;
}
video, img {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
object-fit: cover;
}
</style>
</head>
<body>
<!-- Container for the media -->
<div id="media-container">
<!-- Will be populated dynamically -->
</div>
<script src="background.js"></script>
</body>
</html>
+1
View File
@@ -0,0 +1 @@
const openDB=()=>new Promise(((e,t)=>{const o=indexedDB.open("MyDatabase",1);o.onerror=()=>t(o.error),o.onsuccess=()=>e(o.result),o.onupgradeneeded=e=>{e.target.result.createObjectStore("backgrounds",{keyPath:"id"})}})),readData=async()=>{const e=localStorage.getItem("selectedBackground");if(!e)return console.log("No selected background in local storage."),null;const t=(await openDB()).transaction("backgrounds","readonly").objectStore("backgrounds").get(e);return await new Promise(((e,o)=>{t.onsuccess=()=>e(t.result),t.onerror=()=>o(t.error)}))},updateBackground=async()=>{try{const e=await readData();if(!e){console.log("No data found in IndexedDB.");const e=document.getElementById("media-container").querySelector(".current-media");return void(e&&e.remove())}const t=URL.createObjectURL(e.blob),o=document.getElementById("media-container");let a;"image"===e.type?(a=document.createElement("img"),a.src=t,a.alt="Uploaded content"):"video"===e.type&&(a=document.createElement("video"),a.src=t,a.autoplay=!0,a.loop=!0,a.muted=!0);const r=o.querySelector(".current-media");r&&(r.classList.remove("current-media"),r.classList.add("old-media")),a.classList.add("current-media"),o.appendChild(a),setTimeout((()=>{const e=o.querySelector(".old-media");e&&e.remove()}),100)}catch(e){console.error("An error occurred:",e)}},main=async()=>{await updateBackground(),window.addEventListener("storage",(async e=>{"selectedBackground"===e.key&&await updateBackground()}))};document.addEventListener("DOMContentLoaded",main);
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,60 @@
/*!
* html2canvas 1.4.1 <https://html2canvas.hertzen.com>
* Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
* Released under MIT License
*/
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
/**
* @license React
* react-dom.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* react-jsx-runtime.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* react.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
/**
* @license React
* scheduler.production.min.js
*
* Copyright (c) Facebook, Inc. and its affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 591 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

View File
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"css/css/documentload.js","mappings":";;AAAA;AACA;AACA;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA","sources":["webpack://betterseqtaplus/webpack/bootstrap","webpack://betterseqtaplus/webpack/runtime/make namespace object","webpack://betterseqtaplus/./src/css/documentload.scss?3b2e"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""}
View File
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"css/css/iframe.js","mappings":";;AAAA;AACA;AACA;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA","sources":["webpack://betterseqtaplus/webpack/bootstrap","webpack://betterseqtaplus/webpack/runtime/make namespace object","webpack://betterseqtaplus/./src/css/iframe.scss?d081"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""}
View File
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"css/css/injected.js","mappings":";;AAAA;AACA;AACA;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA","sources":["webpack://betterseqtaplus/webpack/bootstrap","webpack://betterseqtaplus/webpack/runtime/make namespace object","webpack://betterseqtaplus/./src/css/injected.scss?e544"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""}
+3
View File
@@ -0,0 +1,3 @@
html{background:#161616 !important;background-color:#161616;font-family:Rubik,Roboto !important}
/*# sourceMappingURL=documentload.css.map*/
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"css/documentload.css","mappings":"AAiBA","sources":["webpack://betterseqtaplus/./src/css/documentload.scss"],"sourcesContent":["/* \n * This file is part of EvenBetterSEQTA.\n *\n * EvenBetterSEQTA is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * EvenBetterSEQTA is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with EvenBetterSEQTA. If not, see <https://www.gnu.org/licenses/>.\n */\n\nhtml {\n background: #161616 !important;\n background-color: #161616;\n font-family: Rubik, Roboto !important;\n}\n"],"names":[],"sourceRoot":""}
+3
View File
@@ -0,0 +1,3 @@
html,p,div,span{color:#fff !important;text-shadow:1px 1px 2px #161616,0 0 1em #161616}body{background-color:rgba(0,0,0,0) !important}blockquote.forward>.preamble{color:rgba(255,255,255,.7) !important}blockquote.forward>.preamble>.date>.value,blockquote.forward>.preamble>.sender>.value{color:rgba(255,255,255,.7) !important}blockquote.forward>.preamble>.date>.label,blockquote.forward>.preamble>.sender>.label{color:rgba(255,255,255,.7) !important}table th{background-color:#161616}::-webkit-scrollbar{width:10px;height:10px;transition:1s}::-webkit-scrollbar-track{background-color:rgba(0,0,0,0)}::-webkit-scrollbar-thumb{border-radius:10rem !important}::-webkit-scrollbar-corner{background:none}.forward{border-radius:1rem}.preamble{border-top-left-radius:1rem;border-top-right-radius:1rem}
/*# sourceMappingURL=iframe.css.map*/
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"css/iframe.css","mappings":"AAiBA","sources":["webpack://betterseqtaplus/./src/css/iframe.scss"],"sourcesContent":["/* \n * This file is part of EvenBetterSEQTA.\n *\n * EvenBetterSEQTA is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 3 of the License, or\n * (at your option) any later version.\n *\n * EvenBetterSEQTA is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with EvenBetterSEQTA. If not, see <https://www.gnu.org/licenses/>.\n */\n\nhtml, p, div, span {\n color: white !important;\n text-shadow: 1px 1px 2px #161616, 0 0 1em #161616;\n}\n\nbody {\n background-color: transparent !important;\n}\n\nblockquote.forward > .preamble {\n color: rgba(255, 255, 255, 0.7) !important;\n}\n\nblockquote.forward > .preamble > .date > .value, blockquote.forward > .preamble > .sender > .value {\n color: rgba(255, 255, 255, 0.7) !important;\n}\n\nblockquote.forward > .preamble > .date > .label, blockquote.forward > .preamble > .sender > .label {\n color: rgba(255, 255, 255, 0.7) !important;\n}\n\ntable th {\n background-color: #161616;\n}\n\n::-webkit-scrollbar {\n width: 10px;\n height: 10px;\n transition: 1s;\n}\n\n::-webkit-scrollbar-track {\n background-color: transparent;\n}\n\n::-webkit-scrollbar-thumb {\n border-radius: 10rem !important;\n}\n\n::-webkit-scrollbar-corner {\n background: none;\n}\n\n.forward {\n border-radius: 1rem;\n}\n\n.preamble {\n border-top-left-radius: 1rem;\n border-top-right-radius: 1rem;\n}"],"names":[],"sourceRoot":""}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Binary file not shown.

After

Width:  |  Height:  |  Size: 273 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 141 KiB

+6
View File
@@ -0,0 +1,6 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/
/******/
/******/ })()
;
+28
View File
@@ -0,0 +1,28 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ // The require scope
/******/ var __webpack_require__ = {};
/******/
/************************************************************************/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
/*!*****************************!*\
!*** ./src/css/iframe.scss ***!
\*****************************/
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin
/******/ })()
;
//# sourceMappingURL=iframe.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"csscss/iframe.js","mappings":";;AAAA;AACA;AACA;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA","sources":["webpack://betterseqtaplus/webpack/bootstrap","webpack://betterseqtaplus/webpack/runtime/make namespace object","webpack://betterseqtaplus/./src/css/iframe.scss?d081"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""}
+28
View File
@@ -0,0 +1,28 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/ // The require scope
/******/ var __webpack_require__ = {};
/******/
/************************************************************************/
/******/ /* webpack/runtime/make namespace object */
/******/ (() => {
/******/ // define __esModule on exports
/******/ __webpack_require__.r = (exports) => {
/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
/******/ }
/******/ Object.defineProperty(exports, '__esModule', { value: true });
/******/ };
/******/ })();
/******/
/************************************************************************/
var __webpack_exports__ = {};
/*!*******************************!*\
!*** ./src/css/injected.scss ***!
\*******************************/
__webpack_require__.r(__webpack_exports__);
// extracted by mini-css-extract-plugin
/******/ })()
;
//# sourceMappingURL=injected.js.map
+1
View File
@@ -0,0 +1 @@
{"version":3,"file":"csscss/injected.js","mappings":";;AAAA;AACA;AACA;;;;ACFA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;ACNA","sources":["webpack://betterseqtaplus/webpack/bootstrap","webpack://betterseqtaplus/webpack/runtime/make namespace object","webpack://betterseqtaplus/./src/css/injected.scss?e544"],"sourcesContent":["// The require scope\nvar __webpack_require__ = {};\n\n","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","// extracted by mini-css-extract-plugin\nexport {};"],"names":[],"sourceRoot":""}
+6
View File
@@ -0,0 +1,6 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/
/******/
/******/ })()
;
+6
View File
@@ -0,0 +1,6 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/
/******/
/******/ })()
;
+6
View File
@@ -0,0 +1,6 @@
/******/ (() => { // webpackBootstrap
/******/ "use strict";
/******/
/******/
/******/ })()
;
+6
View File
@@ -0,0 +1,6 @@
@font-face {
font-family: 'IconFamily';
src: local('IconFamily') local('Icon Family') url('/fonts/IconFamily.woff') format('woff');
font-weight: normal;
font-style: normal;
}
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 518 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 877 B

+15
View File
@@ -0,0 +1,15 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vite + React + TS</title>
<script type="module" crossorigin src="/client/public/client.js"></script>
<link rel="stylesheet" href="/client/rsc/css/index.css">
</head>
<body class="">
<div id="ExtensionPopup"></div>
</body>
</html>
+79
View File
@@ -0,0 +1,79 @@
{
"manifest_version": 3,
"name": "BetterSEQTA+",
"version": "3.2.1.1",
"description": "Make SEQTA usable and beautiful! A fork of BetterSEQTA to continue development and add WAY more features!!!",
"icons": {
"32": "icons/icon-32.png",
"48": "icons/icon-48.png",
"64": "icons/icon-64.png"
},
"action": {
"browser_style": true,
"default_popup": "popup/info.html",
"default_icon": {
"32": "icons/icon-32.png",
"48": "icons/icon-48.png",
"64": "icons/icon-64.png"
}
},
"permissions": ["tabs", "notifications", "storage"],
"host_permissions": ["https://newsapi.org/", "*://*/*"],
"background": {
"service_worker": "background.js"
},
"optional_permissions": ["declarativeContent"],
"content_scripts": [
{
"matches": ["https://*/*"],
"js": ["purify.min.js", "SEQTA.js"],
"run_at": "document_start"
}
],
"web_accessible_resources": [
{
"resources": ["icons/*"],
"matches": ["*://*/*"]
},
{
"resources": ["fonts/*"],
"matches": ["*://*/*"]
},
{
"resources": ["images/*"],
"matches": ["*://*/*"]
},
{
"resources": ["css/*"],
"matches": ["*://*/*"]
},
{
"resources": ["popup/*"],
"matches": ["*://*/*"]
},
{
"resources": ["client.js"],
"matches": ["*://*/*"]
},
{
"resources": ["index.css"],
"matches": ["*://*/*"]
},
{
"resources": ["interface/*"],
"matches": ["*://*/*"]
},
{
"resources": ["client/*"],
"matches": ["*://*/*"]
},
{
"resources": ["resources/*"],
"matches": ["*://*/*"]
},
{
"resources": ["backgrounds/*"],
"matches": ["*://*/*"]
}
]
}
+15
View File
@@ -0,0 +1,15 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<link rel="icon" type="image/svg+xml" href="/vite.svg" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Vite + React + TS</title>
<script type="module" crossorigin src="/client/public/client.js"></script>
<link rel="stylesheet" href="/client/rsc/css/index.css">
</head>
<body class="standalone">
<div id="ExtensionPopup"></div>
</body>
</html>
+14
View File
@@ -0,0 +1,14 @@
.hide {
opacity: 0;
pointer-events: none;
}
.outside-container {
margin: 0;
overflow: hidden;
position: absolute;
right: 10px;
top: 80px;
height: 590px;
z-index: 20;
}
+2
View File
File diff suppressed because one or more lines are too long
+1
View File
@@ -0,0 +1 @@
/*! @license DOMPurify 3.0.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.3/LICENSE */
Binary file not shown.
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"manifest_version": 3, "manifest_version": 3,
"name": "BetterSEQTA+", "name": "BetterSEQTA+",
"version": "3.2.1.1", "version": "3.2.2",
"description": "Make SEQTA usable and beautiful! A fork of BetterSEQTA to continue development and add WAY more features!!!", "description": "Make SEQTA usable and beautiful! A fork of BetterSEQTA to continue development and add WAY more features!!!",
"icons": { "icons": {
"32": "icons/icon-32.png", "32": "icons/icon-32.png",
+4
View File
@@ -138,6 +138,10 @@ function OpenWhatsNewPopup() {
String.raw` String.raw`
<div class="whatsnewTextContainer" style="height: 50%;overflow-y: scroll;"> <div class="whatsnewTextContainer" style="height: 50%;overflow-y: scroll;">
<h1>3.2.2 - Minor Improvements</h1>
<li>Added Settings open-close animation</li>
<li>Minor Bug Fixes</li>
<h1>3.2.0 - Custom Themes</h1> <h1>3.2.0 - Custom Themes</h1>
<li>Added transparency (blur) effects</li> <li>Added transparency (blur) effects</li>
<li>Added custom themes</li> <li>Added custom themes</li>
+3
View File
@@ -521,6 +521,9 @@ div > ol:has(.uiFileHandlerWrapper) {
background-image: unset !important; background-image: unset !important;
color: white !important; color: white !important;
} }
.notices-container input {
border: none;
}
#main > .notices > .notice > .label, #main > .notices > .notice > .staff, #main > .notices > .notice > h2 { #main > .notices > .notice > .label, #main > .notices > .notice > .staff, #main > .notices > .notice > h2 {
color: var(--text-primary); color: var(--text-primary);
color: var(--colour); color: var(--colour);