From c4e90a50abe962218e04d284ea5df6829185d3c0 Mon Sep 17 00:00:00 2001 From: Percs <83934299+Percslol@users.noreply.github.com> Date: Sun, 14 Jul 2024 15:57:48 -0500 Subject: [PATCH] make scramjet shared object cleaner --- src/client/shared.ts | 26 ++++++++++++++++---------- src/shared/index.ts | 26 ++++++++++++++++---------- src/types.d.ts | 26 ++++++++++++++++---------- src/worker/index.ts | 7 ++++--- 4 files changed, 52 insertions(+), 33 deletions(-) diff --git a/src/client/shared.ts b/src/client/shared.ts index b6dce8e..596b3bd 100644 --- a/src/client/shared.ts +++ b/src/client/shared.ts @@ -1,12 +1,18 @@ export const { - encodeUrl, - decodeUrl, - rewriteHeaders, - rewriteHtml, - rewriteSrcset, - rewriteJs, - rewriteCss, - rewriteWorkers, - isScramjetFile, - BareClient + util: { + isScramjetFile, + BareClient + }, + url: { + encodeUrl, + decodeUrl, + }, + rewrite: { + rewriteCss, + rewriteHtml, + rewriteSrcset, + rewriteJs, + rewriteHeaders, + rewriteWorkers, + } } = self.$scramjet.shared; \ No newline at end of file diff --git a/src/shared/index.ts b/src/shared/index.ts index c00c4e9..bed99aa 100644 --- a/src/shared/index.ts +++ b/src/shared/index.ts @@ -12,14 +12,20 @@ if (!self.$scramjet) { self.$scramjet = {} } self.$scramjet.shared = { - encodeUrl, - decodeUrl, - rewriteCss, - rewriteHtml, - rewriteSrcset, - rewriteJs, - rewriteHeaders, - rewriteWorkers, - isScramjetFile, - BareClient + util: { + isScramjetFile, + BareClient + }, + url: { + encodeUrl, + decodeUrl, + }, + rewrite: { + rewriteCss, + rewriteHtml, + rewriteSrcset, + rewriteJs, + rewriteHeaders, + rewriteWorkers, + } } \ No newline at end of file diff --git a/src/types.d.ts b/src/types.d.ts index 88388d2..48a58bf 100644 --- a/src/types.d.ts +++ b/src/types.d.ts @@ -12,16 +12,22 @@ declare global { interface Window { $scramjet: { shared: { - encodeUrl: typeof encodeUrl, - decodeUrl: typeof decodeUrl, - rewriteCss: typeof rewriteCss, - rewriteHtml: typeof rewriteHtml, - rewriteSrcset: typeof rewriteSrcset, - rewriteJs: typeof rewriteJs, - rewriteHeaders: typeof rewriteHeaders, - rewriteWorkers: typeof rewriteWorkers, - BareClient: typeof BareClient, - isScramjetFile: typeof isScramjetFile, + url: { + encodeUrl: typeof encodeUrl, + decodeUrl: typeof decodeUrl, + } + rewrite: { + rewriteCss: typeof rewriteCss, + rewriteHtml: typeof rewriteHtml, + rewriteSrcset: typeof rewriteSrcset, + rewriteJs: typeof rewriteJs, + rewriteHeaders: typeof rewriteHeaders, + rewriteWorkers: typeof rewriteWorkers, + } + util: { + BareClient: typeof BareClient, + isScramjetFile: typeof isScramjetFile, + } } config: { prefix: string; diff --git a/src/worker/index.ts b/src/worker/index.ts index ac7a525..165fd4b 100644 --- a/src/worker/index.ts +++ b/src/worker/index.ts @@ -8,11 +8,11 @@ declare global { } self.ScramjetServiceWorker = class ScramjetServiceWorker { - client: typeof self.$scramjet.shared.BareClient.prototype; + client: typeof self.$scramjet.shared.util.BareClient.prototype; config: typeof self.$scramjet.config; constructor(config = self.$scramjet.config) { - this.client = new self.$scramjet.shared.BareClient(); + this.client = new self.$scramjet.shared.util.BareClient(); if (!config.prefix) config.prefix = "/scramjet/"; this.config = config; } @@ -24,7 +24,8 @@ self.ScramjetServiceWorker = class ScramjetServiceWorker { async fetch({ request }: FetchEvent) { const urlParam = new URLSearchParams(new URL(request.url).search); - const { encodeUrl, decodeUrl, rewriteHeaders, rewriteHtml, rewriteJs, rewriteCss, rewriteWorkers } = self.$scramjet.shared; + const { encodeUrl, decodeUrl } = self.$scramjet.shared.url; + const { rewriteHeaders, rewriteHtml, rewriteJs, rewriteCss, rewriteWorkers } = self.$scramjet.shared.rewrite; if (urlParam.has("url")) { return Response.redirect(encodeUrl(urlParam.get("url"), new URL(urlParam.get("url"))))