-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/pages/[lang]/settings/pr.astro b/src/pages/[lang]/settings/pr.astro
deleted file mode 100644
index 3a78d05..0000000
--- a/src/pages/[lang]/settings/pr.astro
+++ /dev/null
@@ -1,261 +0,0 @@
----
-import InstalledPlugins from "@components/catalog/InstalledPlugins.svelte";
-import SettingsCard from "@components/settings/SettingsCard.astro";
-import Toast from "@components/toasts/Toast.svelte";
-import ToastWrapper from "@components/toasts/ToastWrapper.svelte";
-import Layout from "@layouts/Layout.astro";
-import SettingsLayout from "@layouts/SettingsLayout.astro";
-import SettingsSection from "@layouts/SettingsSection.astro";
-import { Icon } from "astro-icon/components";
-import { getLangFromUrl, useTranslations } from "../../../i18n/utils";
-
-const lang = getLangFromUrl(Astro.url);
-const t = useTranslations(lang);
-export function getStaticPaths() {
- const STATIC_PATHS = [
- { params: { lang: "en_US" } },
- { params: { lang: "jp" } },
- ];
- return STATIC_PATHS;
-}
-export const prerender = true;
-import { MARKETPLACE_ENABLED } from "astro:env/client";
----
-
-
-
-
-
-
-
-
-
-
-
-
- {
- MARKETPLACE_ENABLED && (
-
-
-
- )
- }
-
-
-
-
-
-
-
-
-
-
diff --git a/src/pages/[lang]/settings/tab.astro b/src/pages/[lang]/settings/tab.astro
deleted file mode 100644
index dbf5d1a..0000000
--- a/src/pages/[lang]/settings/tab.astro
+++ /dev/null
@@ -1,81 +0,0 @@
----
-import SettingsCard from "@components/settings/SettingsCard.astro";
-import Toast from "@components/toasts/Toast.svelte";
-import ToastWrapper from "@components/toasts/ToastWrapper.svelte";
-import Layout from "@layouts/Layout.astro";
-import SettingsLayout from "@layouts/SettingsLayout.astro";
-import SettingsSection from "@layouts/SettingsSection.astro";
-import { getLangFromUrl, useTranslations } from "../../../i18n/utils";
-const lang = getLangFromUrl(Astro.url);
-const t = useTranslations(lang);
-export function getStaticPaths() {
- const STATIC_PATHS = [{ params: { lang: "en_US" } }, { params: { lang: "jp" } }];
- return STATIC_PATHS;
-}
-export const prerender = true;
----
-
-
-
-
-
-
-
-
-
-
- { /* The toast notifications :D */ }
-
-
-
-
-
-
-
diff --git a/src/pages/index.astro b/src/pages/index.astro
deleted file mode 100644
index 24c50b5..0000000
--- a/src/pages/index.astro
+++ /dev/null
@@ -1,48 +0,0 @@
----
-import Loading from "@components/Loading.astro";
-import Layout from "@layouts/Layout.astro";
----
-
-
-
-
-
-
- JavaScript is required to run this app.
-
diff --git a/src/pages/loading.astro b/src/pages/loading.astro
deleted file mode 100644
index 042197b..0000000
--- a/src/pages/loading.astro
+++ /dev/null
@@ -1,27 +0,0 @@
----
-import LoadingComponent from "@components/Loading.astro";
-import Layout from "@layouts/Layout.astro";
----
-
-
-
-
-
diff --git a/src/store.js b/src/store.js
deleted file mode 100644
index c704662..0000000
--- a/src/store.js
+++ /dev/null
@@ -1,3 +0,0 @@
-import { atom } from "nanostores";
-
-export const isMobileNavOpen = atom(false);
diff --git a/src/utils/events.ts b/src/utils/events.ts
deleted file mode 100644
index 16f8a01..0000000
--- a/src/utils/events.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-function pageLoad(fn: () => void, logging?: boolean) {
- document.addEventListener("astro:page-load", () => {
- try {
- fn();
- } catch (err) {
- if (logging) {
- console.error(err);
- }
- }
- });
-}
-
-export { pageLoad };
diff --git a/src/utils/libcurl.ts b/src/utils/libcurl.ts
deleted file mode 100644
index 58c3fe1..0000000
--- a/src/utils/libcurl.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-import { WispServerURLS } from "@utils/settings/index";
-//helper for libcurl as we have to use it in multiple locations and we don't want to re-download the WASM every time
-//@ts-expect-error No types, expected. See: https://github.com/ading2210/libcurl.js for docs on how to use.
-import { libcurl } from "libcurl.js-new/bundled";
-let clientExists: boolean = false;
-async function initLibcurl() {
- if (!clientExists) {
- await libcurl.load_wasm();
- libcurl.set_websocket(WispServerURLS.default);
- console.debug("Libcurl ready?", libcurl.ready);
- clientExists = true;
- }
-}
-
-type fetchType = "json" | "text";
-
-async function fetchFromLibcurl(url: string, type: fetchType): Promise
{
- const res = await libcurl.fetch(url);
- const data = type === "json" ? await res.json() : await res.text();
- return data;
-}
-
-const client = {
- initLibcurl,
- fetchFromLibcurl
-};
-
-export { client };
diff --git a/src/utils/registerSW.ts b/src/utils/registerSW.ts
deleted file mode 100644
index e09e427..0000000
--- a/src/utils/registerSW.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-import { BareMuxConnection } from "@mercuryworkshop/bare-mux";
-import { Settings, WispServerURLS } from "./settings/index";
-function loadProxyScripts() {
- //wrap everything in a promise to avoid race conditions
- return new Promise((resolve) => {
- const conn = new BareMuxConnection("/baremux/worker.js");
- if (typeof __uv$config !== "undefined") {
- return resolve(conn);
- }
- const uvBundle = document.createElement("script");
- uvBundle.src = "/uv/uv.bundle.js";
- uvBundle.defer = true;
- document.body.appendChild(uvBundle);
- const uvConfig = document.createElement("script");
- uvConfig.src = "/uv/uv.config.js";
- uvConfig.defer = true;
- document.body.appendChild(uvConfig);
- const checkScript = setInterval(() => {
- if (typeof __uv$config !== "undefined") {
- clearInterval(checkScript);
- resolve(conn);
- }
- }, 100);
- });
-}
-
-function setTransport(conn: BareMuxConnection, transport?: string) {
- //wrap in a promise so we don't register sw until a transport is set.
- const wispServer = localStorage.getItem(Settings.ProxySettings.wispServerURL);
- return new Promise((resolve) => {
- switch (transport) {
- case "epoxy":
- conn.setTransport("/epoxy/index.mjs", [
- { wisp: wispServer ? WispServerURLS[wispServer] : WispServerURLS.default }
- ]);
- break;
- case "libcurl":
- conn.setTransport("/libcurl/index.mjs", [
- { wisp: wispServer ? WispServerURLS[wispServer] : WispServerURLS.default }
- ]);
- break;
- }
- resolve();
- });
-}
-
-function initSw() {
- //this is wrapped in a promise to mostly solve the bare-mux v1 problems
- return new Promise((resolve) => {
- if ("serviceWorker" in navigator) {
- navigator.serviceWorker.ready.then(async (reg) => {
- console.debug("Service worker ready!");
- resolve(reg);
- });
- navigator.serviceWorker.register("/sw.js", { scope: "/" });
- }
- });
-}
-
-export { initSw, setTransport, loadProxyScripts };
diff --git a/src/utils/search.ts b/src/utils/search.ts
deleted file mode 100644
index cb81095..0000000
--- a/src/utils/search.ts
+++ /dev/null
@@ -1,27 +0,0 @@
-function search(input: string, template: string) {
- try {
- // input is a valid URL:
- // eg: https://example.com, https://example.com/test?q=param
- return new URL(input).toString();
- } catch (err) {
- // input was not a valid URL
- }
-
- try {
- // input is a valid URL when http:// is added to the start:
- // eg: example.com, https://example.com/test?q=param
- const url = new URL(`http://${input}`);
- // only if the hostname has a TLD/subdomain
- if (url.hostname.includes(".")) return url.toString();
- } catch (err) {
- // input was not valid URL
- }
-
- // input may have been a valid URL, however the hostname was invalid
-
- // Attempts to convert the input to a fully qualified URL have failed
- // Treat the input as a search query
- return template.replace("%s", encodeURIComponent(input));
-}
-
-export { search };
diff --git a/src/utils/settings/index.ts b/src/utils/settings/index.ts
deleted file mode 100644
index 6fc8db7..0000000
--- a/src/utils/settings/index.ts
+++ /dev/null
@@ -1,54 +0,0 @@
-//Combine all of the other settings into one object. And export that (along with types and other things)
-import {
- AppearanceSettings,
- MarketPlaceExtras,
- PluginSettings,
- marketPlaceSettings
-} from "./marketplace/index";
-import { ProxySettings, proxySettings } from "./proxy";
-import { TabSettings, cloak, tabSettings } from "./tab";
-import {
- type AbCloaks,
- type OpenIn,
- type Package,
- type PackageType,
- type Proxy,
- type SearchEngine,
- SearchEngines,
- type TabCloaks,
- type Transport,
- WispServerURLS,
- wispUrl
-} from "./types";
-
-const Settings = {
- AppearanceSettings,
- TabSettings,
- ProxySettings,
- MarketPlaceExtras,
- PluginSettings
-};
-
-const settings = {
- marketPlaceSettings,
- tabSettings,
- proxySettings
-};
-
-//export all of the stuffs
-export {
- Settings,
- settings,
- SearchEngines,
- WispServerURLS,
- wispUrl,
- cloak,
- type TabCloaks,
- type AbCloaks,
- type OpenIn,
- type Proxy,
- type Transport,
- type PackageType,
- type Package,
- type SearchEngine
-};
diff --git a/src/utils/settings/marketplace/index.ts b/src/utils/settings/marketplace/index.ts
deleted file mode 100644
index 56603a9..0000000
--- a/src/utils/settings/marketplace/index.ts
+++ /dev/null
@@ -1,224 +0,0 @@
-//marketplace code & handlers
-import { Settings } from "../index";
-import {
- type Package,
- type PackageType,
- type Plugin,
- type PluginType,
- type SWPagePlugin,
- type SWPlugin
-} from "../types";
-const AppearanceSettings = {
- themes: "nebula||themes",
- themeName: "nebula||themeName",
- stylePayload: "nebula||stylepayload",
- video: "nebula||video",
- image: "nebula||image"
-};
-
-const PluginSettings = {
- plugins: "nebula||plugins"
-};
-
-const MarketPlaceExtras = {
- proxy: "nebula||marketplaceProxy",
- hostname: "nebula||marketplaceHostname"
-};
-
-const marketPlaceSettings = {
- install: function (p: Package, packageName: string, payload?: any) {
- return new Promise((resolve) => {
- if (p.theme) {
- let themes = localStorage.getItem(AppearanceSettings.themes) as any;
- themes ? (themes = JSON.parse(themes)) : (themes = []);
- if (!themes.find((theme: any) => theme === packageName)) {
- themes.push(packageName);
- localStorage.setItem(AppearanceSettings.themes, JSON.stringify(themes));
- this.changeTheme(false, payload, p.theme.video, p.theme.bgImage, packageName);
- }
- resolve();
- }
- if (p.plugin) {
- let plugins = localStorage.getItem(PluginSettings.plugins) as any;
- plugins ? (plugins = JSON.parse(plugins)) : (plugins = []);
- //@ts-ignore
- const plugin = plugins.find(({ name }) => name === packageName) as Plugin;
- if (!plugin) {
- plugins.push({
- name: packageName,
- src: p.plugin.src,
- type: p.plugin.type
- } as unknown as Plugin);
- localStorage.setItem(PluginSettings.plugins, JSON.stringify(plugins));
- } else if (plugin && plugin.remove) {
- plugin.remove = false;
- localStorage.setItem(Settings.PluginSettings.plugins, JSON.stringify(plugins));
- }
- resolve();
- }
- });
- },
- uninstall: function (p: PackageType, packageName: string) {
- console.log(p);
- return new Promise((resolve) => {
- if (p === "theme") {
- let items = localStorage.getItem(AppearanceSettings.themes) as any;
- items ? (items = JSON.parse(items)) : (items = []);
- if (items.find((theme: any) => theme === packageName.toLowerCase())) {
- const idx = items.indexOf(packageName.toLowerCase());
- items.splice(idx, 1);
- localStorage.setItem(AppearanceSettings.themes, JSON.stringify(items));
- this.changeTheme(true);
- }
- resolve();
- }
- if (p === "plugin-page" || p === "plugin-sw") {
- let plugins = localStorage.getItem(PluginSettings.plugins) as any;
- plugins ? (plugins = JSON.parse(plugins)) : (plugins = []);
- //@ts-ignore
- const plugin = plugins.find(({ name }) => name === packageName.toLowerCase());
- if (plugin) {
- plugin.remove = true;
- localStorage.setItem(PluginSettings.plugins, JSON.stringify(plugins));
- }
- resolve();
- }
- });
- },
- handlePlugins: function (worker: never | ServiceWorkerRegistration) {
- return new Promise((resolve) => {
- let plugins =
- JSON.parse(localStorage.getItem(Settings.PluginSettings.plugins) as string) || [];
- const swPagePlugins: SWPagePlugin[] = [];
- const swPlugins: SWPlugin[] = [];
- if (plugins.length === 0) {
- console.log("Plugin length is not greater then 0. Resolving.");
- return resolve();
- }
- plugins.forEach(async (plugin: Plugin) => {
- if (plugin.type === "page") {
- const pluginScript = await fetch(
- `/packages/${plugin.name.toLowerCase()}/${plugin.src}`
- ).then((res) => res.text());
- const script = eval(pluginScript);
- const inject = (await script()) as unknown as SWPagePlugin;
- if (plugin.remove) {
- plugins = plugins.filter(
- //@ts-ignore freaking types BRO
- ({ name }) => name !== plugin.name.toLowerCase()
- );
- swPagePlugins.push({
- remove: true,
- host: inject.host,
- html: inject.html,
- injectTo: inject.injectTo,
- type: "page"
- });
- } else {
- swPagePlugins.push({
- host: inject.host,
- html: inject.html,
- injectTo: inject.injectTo,
- type: "page"
- });
- }
- //only resolve AFTER we have postMessaged to the SW.
- worker.active?.postMessage(swPagePlugins);
- } else if (plugin.type === "serviceWorker") {
- const pluginScript = await fetch(
- `/packages/${plugin.name.toLowerCase()}/${plugin.src}`
- ).then((res) => res.text());
- const script = eval(pluginScript);
- const inject = (await script()) as unknown as SWPlugin;
- if (plugin.remove) {
- plugins = plugins.filter(
- //@ts-ignore
- ({ name }) => name !== plugin.name.toLowerCase()
- );
- swPlugins.push({
- remove: true,
- function: inject.function.toString(),
- name: plugin.name,
- events: inject.events,
- type: "serviceWorker"
- });
- } else {
- swPlugins.push({
- function: inject.function.toString(),
- name: plugin.name,
- events: inject.events,
- type: "serviceWorker"
- });
- }
- worker.active?.postMessage(swPlugins);
- }
- localStorage.setItem(Settings.PluginSettings.plugins, JSON.stringify(plugins));
- resolve();
- });
- });
- },
- changeTheme: async function (
- reset: Boolean,
- payload?: any,
- videoSource?: string,
- bgSource?: string,
- name?: string
- ) {
- async function resetCSS() {
- const stylesheet = document.getElementById("stylesheet")! as HTMLLinkElement;
- localStorage.removeItem(AppearanceSettings.stylePayload);
- localStorage.removeItem(AppearanceSettings.themeName);
- stylesheet.href = "/nebula.css";
- }
- function resetVideo() {
- localStorage.removeItem(AppearanceSettings.video);
- const source = document.getElementById("nebulaVideo")! as HTMLVideoElement;
- source.src = "";
- }
- function resetBGImage() {
- localStorage.removeItem(AppearanceSettings.image);
- const image = document.getElementById("nebulaImage")! as HTMLImageElement;
- image.style.display = "none";
- image.src = "";
- }
- if (reset === true) {
- await resetCSS();
- resetBGImage();
- resetVideo();
- }
- if (videoSource || localStorage.getItem(AppearanceSettings.video)) {
- resetBGImage();
- resetVideo();
- const source = document.getElementById("nebulaVideo")! as HTMLVideoElement;
- if (!localStorage.getItem(AppearanceSettings.video)) {
- localStorage.setItem(AppearanceSettings.video, videoSource as string);
- }
- source.src = `/packages/${name}/${videoSource ? videoSource : localStorage.getItem(AppearanceSettings.video)}`;
- }
- if (bgSource || localStorage.getItem(AppearanceSettings.image)) {
- resetVideo();
- resetBGImage();
- const image = document.getElementById("nebulaImage")! as HTMLImageElement;
- if (!localStorage.getItem(AppearanceSettings.image)) {
- localStorage.setItem(AppearanceSettings.image, bgSource as string);
- }
- image.style.display = "block";
- image.src = `/packages/${name}/${bgSource ? bgSource : localStorage.getItem(AppearanceSettings.image)}`;
- }
- if (payload) {
- const stylesheet = document.getElementById("stylesheet")! as HTMLLinkElement;
- if (localStorage.getItem(AppearanceSettings.stylePayload) !== payload) {
- localStorage.setItem(AppearanceSettings.stylePayload, payload);
- localStorage.setItem(AppearanceSettings.themeName, name as string);
- }
- stylesheet.href = `/packages/${name}/${localStorage.getItem(AppearanceSettings.stylePayload)}`;
- } else {
- if (localStorage.getItem(AppearanceSettings.stylePayload)) {
- const stylesheet = document.getElementById("stylesheet")! as HTMLLinkElement;
- stylesheet.href = `/packages/${localStorage.getItem(AppearanceSettings.themeName)}/${localStorage.getItem(AppearanceSettings.stylePayload)}`;
- }
- }
- }
-};
-
-export { AppearanceSettings, PluginSettings, MarketPlaceExtras, marketPlaceSettings };
diff --git a/src/utils/settings/marketplace/types.ts b/src/utils/settings/marketplace/types.ts
deleted file mode 100644
index 0d8ee18..0000000
--- a/src/utils/settings/marketplace/types.ts
+++ /dev/null
@@ -1,56 +0,0 @@
-//Where all of our types live. Expect to see these exported and used in other files tons.
-type PluginType = "page" | "serviceWorker";
-type MarketplacePluginType = "plugin-page" | "plugin-sw";
-type PackageType = "theme" | MarketplacePluginType;
-
-interface Plug {
- name: string;
- src: string;
- type: PluginType;
- remove?: boolean;
-}
-interface SWPagePlugin extends Omit {
- host: string;
- html: string;
- injectTo: "head" | "body";
-}
-
-type SWPluginFunction = (args: T) => void | unknown;
-
-type Events =
- "abortpayment" |
- "activate" |
- "backgroundfetchabort" |
- "backgroundfetchclick" |
- "backgroundfetchfail" |
- "backgroundfetchsuccess" |
- "canmakepayment" |
- "contentdelete" |
- "cookiechange" |
- "fetch" |
- "install" |
- "message" |
- "messageerror" |
- "notificationclick" |
- "notificationclose" |
- "paymentrequest" |
- "periodicsync" |
- "push" |
- "pushsubscriptionchange" |
- "sync"
-
-interface SWPlugin extends Omit {
- function: string | SWPluginFunction;
- events: Events[]
-}
-
-interface Package {
- theme?: {
- payload: string;
- video?: string;
- bgImage?: string;
- };
- plugin?: Plug;
-}
-
-export { type PluginType, type MarketplacePluginType, type PackageType, type Plug as Plugin, type SWPagePlugin, type SWPlugin, type Package, type SWPluginFunction }
diff --git a/src/utils/settings/marketplace/userTypes.ts b/src/utils/settings/marketplace/userTypes.ts
deleted file mode 100644
index 114b4c6..0000000
--- a/src/utils/settings/marketplace/userTypes.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-import { type SWPagePlugin, type SWPlugin, type SWPluginFunction as PluginFunction } from "./types";
-
-interface PagePlugin extends Omit {};
-interface ServiceWorkerPlugin extends Omit {};
-
-declare global {
- function entryFunc(): PagePlugin | ServiceWorkerPlugin;
-}
-
-export { type PagePlugin, type ServiceWorkerPlugin, type PluginFunction };
diff --git a/src/utils/settings/proxy.ts b/src/utils/settings/proxy.ts
deleted file mode 100644
index d5df943..0000000
--- a/src/utils/settings/proxy.ts
+++ /dev/null
@@ -1,29 +0,0 @@
-//Proxy specific settings.
-import { type OpenIn, type Proxy, type SearchEngine, type Transport } from "./types";
-const ProxySettings = {
- proxy: "nebula||proxy",
- openIn: "nebula||open",
- searchEngine: "nebula||searchEngine",
- wispServerURL: "nebula||wisp",
- transport: "nebula||transport"
-};
-
-const proxySettings = {
- changeProxy: function (proxy: Proxy | string) {
- localStorage.setItem(ProxySettings.proxy, proxy);
- },
- openIn: function (type: OpenIn | string) {
- localStorage.setItem(ProxySettings.openIn, type);
- },
- setSearchEngine: function (searchEngine: SearchEngine | string) {
- localStorage.setItem(ProxySettings.searchEngine, searchEngine);
- },
- setWispURL: function (server: string) {
- localStorage.setItem(ProxySettings.wispServerURL, server);
- },
- setTransport: function (transport: Transport | string) {
- localStorage.setItem(ProxySettings.transport, transport);
- }
-};
-
-export { ProxySettings, proxySettings };
diff --git a/src/utils/settings/tab.ts b/src/utils/settings/tab.ts
deleted file mode 100644
index fd3abce..0000000
--- a/src/utils/settings/tab.ts
+++ /dev/null
@@ -1,83 +0,0 @@
-//Tab specific settings.
-import { type AbCloaks, type TabCloaks } from "./types";
-const TabSettings = {
- tabCloak: "nebula||tabCloak",
- abblob: "nebula||abBlob"
-};
-
-function cloak(cloak: AbCloaks | string, redirect: string, url: string) {
- switch (cloak) {
- case "a:b":
- window.location.replace(redirect);
- const win = window.open();
- win!.document.body.style.margin = "0";
- win!.document.body.style.height = "100vh";
- const iframe = win!.document.createElement("iframe");
- iframe.style.border = "none";
- iframe.style.width = "100%";
- iframe.style.height = "100%";
- iframe.style.margin = "0";
- iframe.src = url;
- win!.document.body.appendChild(iframe);
- break;
- case "blob":
- const htmlContent = `
-
-
-
-
-
-
-
-
-
- `;
- window.location.replace("https://google.com");
- const blob = new Blob([htmlContent], { type: "text/html" });
- const blobURL = URL.createObjectURL(blob);
- window.open(blobURL, "_blank");
- break;
- }
-}
-
-const tabSettings = {
- cloakTab: function (cloak: TabCloaks | string) {
- const faviconElement = document.getElementById("favicon") as HTMLLinkElement;
- localStorage.setItem(TabSettings.tabCloak, cloak);
- switch (cloak) {
- case "google":
- document.title = "Google";
- faviconElement.href = "/cloaks/google.png";
- break;
- case "wikipedia":
- document.title = "Wikipedia";
- faviconElement.href = "/cloaks/wikipedia.ico";
- break;
- case "canvas":
- document.title = "Dashboard";
- faviconElement.href = "/cloaks/canvas.ico";
- break;
- case "classroom":
- document.title = "Home";
- faviconElement.href = "/cloaks/classroom.png";
- break;
- case "powerschool":
- document.title = "PowerSchool";
- faviconElement.href = "/cloaks/ps.ico";
- break;
- case "reset":
- //force a reset of favicon & title
- localStorage.setItem("nebula||tabCloak", "default");
- window.location.reload();
- default:
- return;
- }
- },
- abCloak: function (type: AbCloaks | string) {
- localStorage.setItem(TabSettings.abblob, type);
- cloak(type as AbCloaks, "https://google.com", window.location.href);
- }
-};
-export { tabSettings, TabSettings, cloak };
diff --git a/src/utils/settings/types.ts b/src/utils/settings/types.ts
deleted file mode 100644
index 98189b5..0000000
--- a/src/utils/settings/types.ts
+++ /dev/null
@@ -1,36 +0,0 @@
-import { type PackageType, type Package, type PluginType, type Plugin, type SWPagePlugin, type SWPlugin } from "./marketplace/types";
-const wispUrl = (location.protocol === "https:" ? "wss://" : "ws://") + location.host + "/wisp/";
-type TabCloaks = "default" | "google" | "wikipedia" | "canvas" | "classroom" | "powerschool";
-type AbCloaks = "a:b" | "blob";
-type OpenIn = "a:b" | "blob" | "direct" | "embed";
-type Proxy = "automatic" | "uv" | "rh";
-type Transport = "epoxy" | "libcurl";
-const SearchEngines: Record = {
- ddg: "https://duckduckgo.com/?q=%s",
- google: "https://google.com/search?q=%s",
- bing: "https://bing.com/search?q=%s"
-};
-type SearchEngine = "ddg" | "google" | "bing";
-const WispServerURLS: Record = {
- default: wispUrl,
- ruby: "wss://ruby.rubynetwork.co/wisp/"
-};
-
-
-export {
- type TabCloaks,
- type AbCloaks,
- type OpenIn,
- type Proxy,
- type Transport,
- type PackageType,
- type Package,
- type PluginType,
- type Plugin,
- type SWPagePlugin,
- type SWPlugin,
- SearchEngines,
- type SearchEngine,
- WispServerURLS,
- wispUrl
-};
diff --git a/src/utils/siteSupport.ts b/src/utils/siteSupport.ts
deleted file mode 100644
index 1f922b3..0000000
--- a/src/utils/siteSupport.ts
+++ /dev/null
@@ -1,13 +0,0 @@
-import type { Proxy } from "./settings";
-type ProxyChoices = Exclude;
-
-const SupportedSites: Record = {
- "discord.gg": "uv",
- "discord.com": "uv",
- "spotify.com": "uv",
- "spotify.link": "uv",
- "youtube.com": "uv",
- "youtu.be": "uv"
-};
-
-export { SupportedSites };
diff --git a/src/utils/toast.ts b/src/utils/toast.ts
deleted file mode 100644
index 8193332..0000000
--- a/src/utils/toast.ts
+++ /dev/null
@@ -1,28 +0,0 @@
-type ToastType = "success" | "error" | "multiline";
-type Position =
- | "top-left"
- | "top-middle"
- | "top-right"
- | "bottom-left"
- | "bottom-right"
- | "bottom-center";
-interface Props {
- toastType: ToastType;
- text: string;
- class: string;
- id?: string;
- duration?: number;
- emoji?: any;
- position?: Position;
-}
-
-function toast(query: string) {
- const wrapper = document.getElementById("toastwrapper") as HTMLDivElement;
- wrapper.classList.remove("hidden");
- //this is a really hacky solution for toast notifications LOL
- const element = document.querySelector(query) as HTMLElement;
- //click the element
- element.click();
-}
-
-export { type ToastType, type Position, type Props, toast };
diff --git a/svelte.config.js b/svelte.config.js
deleted file mode 100644
index 3b3578e..0000000
--- a/svelte.config.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import { vitePreprocess } from "@astrojs/svelte";
-
-export default {
- preprocess: vitePreprocess()
-};
diff --git a/tailwind.config.mjs b/tailwind.config.mjs
deleted file mode 100644
index 44fd4b8..0000000
--- a/tailwind.config.mjs
+++ /dev/null
@@ -1,24 +0,0 @@
-/** @type {import('tailwindcss').Config} */
-export default {
- content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
- theme: {
- colors: {
- primary: "var(--background-primary)",
- lighter: "var(--background-lighter)",
- "navbar-text-color": "var(--navbar-text-color)",
- "navbar-color": "var(--navbar-color)",
- "text-color": "var(--navbar-link-color)",
- "text-hover-color": "var(--navbar-link-hover-color)",
- input: "var(--input-background-color)",
- "input-text": "var(--input-text-color)",
- "input-border-color": "var(--input-border-color)",
- "dropdown-option-hover-color": "var(--dropdown-option-hover-color)",
- "border-color": "var(--border-color)"
- },
- fontFamily: {
- roboto: "var(--font-family), Roboto"
- },
- extend: {}
- },
- plugins: []
-};
diff --git a/tsconfig.json b/tsconfig.json
deleted file mode 100644
index 39294d7..0000000
--- a/tsconfig.json
+++ /dev/null
@@ -1,12 +0,0 @@
-{
- "extends": "astro/tsconfigs/strict",
- "include": ["src"],
- "compilerOptions": {
- "baseUrl": ".",
- "paths": {
- "@components/*": ["src/components/*"],
- "@layouts/*": ["src/layouts/*"],
- "@utils/*": ["src/utils/*"]
- }
- }
-}
diff --git a/workerware b/workerware
deleted file mode 160000
index c28ebba..0000000
--- a/workerware
+++ /dev/null
@@ -1 +0,0 @@
-Subproject commit c28ebbaacf659b570145f2ae8e1f6404d2abe8e2