From 906d196c04ea2b1715fd87535c6b269a05486550 Mon Sep 17 00:00:00 2001 From: DIVISIONSolar Date: Thu, 29 Feb 2024 13:51:12 -0500 Subject: [PATCH] add files --- README.md | 40 ----- package-lock.json | 6 +- package.json | 4 +- public/404.html | 81 ++++------ public/5QEvQJ.png | Bin 0 -> 17064 bytes public/cloak.js | 17 +++ public/error.js | 10 +- public/gethost.php | 4 + public/import.css | 75 +++++++++ public/importhost.js | 14 ++ public/index.css | 261 ++++++++++++++++++-------------- public/index.html | 180 ++++++++-------------- public/index.js | 10 +- public/other/credits/index.html | 26 ++++ public/register-sw.js | 15 +- public/uv/uv.config.js | 2 +- 16 files changed, 402 insertions(+), 343 deletions(-) delete mode 100644 README.md create mode 100644 public/5QEvQJ.png create mode 100644 public/cloak.js create mode 100644 public/gethost.php create mode 100644 public/import.css create mode 100644 public/importhost.js create mode 100644 public/other/credits/index.html diff --git a/README.md b/README.md deleted file mode 100644 index abe179e..0000000 --- a/README.md +++ /dev/null @@ -1,40 +0,0 @@ -

- -

Ultraviolet-Static

- -Static files/assets used to spin up an Ultraviolet website. - -## Install in [Ultraviolet-App](https://github.com/titaniumnetwork-dev/Ultraviolet-App.git) - -See [Ultraviolet-App's Wiki](https://github.com/titaniumnetwork-dev/Ultraviolet-App/wiki/Customizing-your-frontend). - -## Usage outside of Ultraviolet-App/Static hosting - -### Ultraviolet scripts - -This repository doesn't serve any Ultraviolet scripts. It has a `uv.config.js` to show how Ultraviolet is intended to work with this demo. Ultraviolet-App automatically merges our `uv.config.js` with the remaining UV scripts (`uv.sw.js`, `uv.client.js`, etc). **Some work has to be done in order to make this repository standalone.** - -Here's how to get the remaining scripts for the purpose of hosting this repository: - -1. Go to the [Ultraviolet releases](https://github.com/titaniumnetwork-dev/Ultraviolet/releases/) -2. Find the latest release -3. Download the latest tarball (eg. `titaniumnetwork-dev-ultraviolet-x.x.x.tgz`) -4. Open the tarball, navigate to the `dist` directory, and extract all the scripts with the exception of `uv.config.js` (we already have a configuration) into the `public/uv/` directory in this repository. - You may see `.map` files. These are used for debugging. If they're too large, you can omit them without any errors. - - Do not copy `uv.config.js` from the archive! - -### Bare server - -You will need to point your Bare server to an external one/a different directory (if you're using reverse proxy software). - -1. Open `public/uv/config.js` -2. Find the `bare` field -3. Replace `"/bare/"` with the address of your Bare server - A Bare server address hosts the Bare server. For example, to use the Holy Unblocker Bare server at https://uv.holyubofficial.net/ you would update your config to look like this: - - ```js - bare: "https://uv.holyubofficial.net/", - ``` - - You can open Bare server addresses in your browser. You should see something containing fields like the project description, memory usage, supported versions, and the runtime/language. diff --git a/package-lock.json b/package-lock.json index aae6189..f523040 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,18 @@ { - "name": "ultraviolet-static", + "name": "Revela-Frontend", "version": "1.0.2", "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "ultraviolet-static", + "name": "Revela-Frontend", "version": "1.0.2", "devDependencies": { "eslint": "^8.23.0", "prettier": "^2.7.1" }, "peerDependencies": { - "@titaniumnetwork-dev/ultraviolet": "^2.0.0" + "@RevelaNetwork/Revela": "^2.0.0" } }, "node_modules/@eslint/eslintrc": { diff --git a/package.json b/package.json index 351df42..d58ef62 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "ultraviolet-static", + "name": "Revela-Frontend", "main": "lib/index.js", "version": "1.0.2", "type": "module", @@ -8,7 +8,7 @@ "lib" ], "peerDependencies": { - "@titaniumnetwork-dev/ultraviolet": "^2.0.0" + "@RevelaNetwork/Revela-Frontend": "^2.0.0" }, "devDependencies": { "eslint": "^8.23.0", diff --git a/public/404.html b/public/404.html index 270191d..a7e1888 100644 --- a/public/404.html +++ b/public/404.html @@ -1,51 +1,36 @@ - - - - Ultraviolet | Error - - - - - - - - -
-

Ultraviolet | Error

-
-
-

The server could not route your request.

-

- - -
- - - - - - - + + + + Revela | Error + + + + + + + + + +
+

Revela | Error

+
+
+

The server could not route your request. Try refreshing?

+

+ + +
+ + + + + + + + \ No newline at end of file diff --git a/public/5QEvQJ.png b/public/5QEvQJ.png new file mode 100644 index 0000000000000000000000000000000000000000..7e795eda1c7cde7d5aebf84c887dc42418a9d96c GIT binary patch literal 17064 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 G`TqbY1RE3p literal 0 HcmV?d00001 diff --git a/public/cloak.js b/public/cloak.js new file mode 100644 index 0000000..b5d6af6 --- /dev/null +++ b/public/cloak.js @@ -0,0 +1,17 @@ +function cloak() { + const newWindow = window.open('about:blank'); + const iframe = newWindow.document.createElement('iframe'); + newWindow.document.body.style.margin = '0'; + iframe.style.width = '100%'; + iframe.style.height = '100%'; + iframe.style.position = 'fixed'; + iframe.style.top = '0'; + iframe.style.left = '0'; + iframe.style.zIndex = '99999'; + iframe.style.border = 'none'; + + newWindow.document.body.style.overflow = 'hidden'; + newWindow.document.body.appendChild(iframe); + iframe.src = window.location.href; + window.location.replace('https://classroom.google.com/') +} \ No newline at end of file diff --git a/public/error.js b/public/error.js index 626ab57..d645e25 100644 --- a/public/error.js +++ b/public/error.js @@ -1,10 +1,10 @@ "use strict"; -const error = document.getElementById("uv-error"); -const errorCode = document.getElementById("uv-error-code"); -const registerButton = document.getElementById("uv-register-sw"); +const error = document.getElementById("rv-error"); +const errorCode = document.getElementById("rv-error-code"); +const registerButton = document.getElementById("rv-register-sw"); if (location.pathname.startsWith(__uv$config.prefix)) { - error.textContent = "Error: The service worker is not registered."; + error.textContent = "Error: The seuvice worker is not registered."; registerButton.classList.add("show"); } @@ -13,7 +13,7 @@ registerButton.addEventListener("click", async () => { await registerSW(); location.reload(); } catch (err) { - error.textContent = "Failed to register service worker."; + error.textContent = "Failed to register seuvice worker. Try refreshing?"; errorCode.textContent = err.toString(); registerButton.classList.remove("show"); } diff --git a/public/gethost.php b/public/gethost.php new file mode 100644 index 0000000..4bb3273 --- /dev/null +++ b/public/gethost.php @@ -0,0 +1,4 @@ + diff --git a/public/import.css b/public/import.css new file mode 100644 index 0000000..f95c9dc --- /dev/null +++ b/public/import.css @@ -0,0 +1,75 @@ +@import url("https://fonts.bunny.net/css?family=abril-fatface:400|rubik:600,800i,900i"); + +body { + font-family: Abril-Fatface, Rubik; + margin: 0; + background: #111; + display: flex; + flex-direction: column; + min-height: 100vh; +} + +/* Styles for the container */ +.container { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + height: 100vh; +} + +/* Styles for the image */ +.image { + max-width: 300px; +} + +/* Styles for the paragraph */ +.paragraph h2 { + color: white; + margin-top: 25px; + text-align: center; +} + +/* Styles for the buttons */ +.buttons { + display: flex; + justify-content: center; + margin-top: 5px; +} + +.buttons button { + margin: 0 10px; +} + +/* Styles for the search bar */ +.search-bar { + margin-top: -20px; + text-align: center; +} + +/* Styles for Ad Banner */ +.ad-banner { + display: flex; + justify-content: center; + align-items: center; + margin-top: 100px; /* Adjusted margin-top */ + /* margin-bottom: -200px; */ +} + +.ad-banner img { + width: 512px; + height: 64px; + border-radius: 10px; /* Rounded corners */ +} + +/* Styles for the footers */ +.footer { + display: flex; + justify-content: center; + align-items: center; + height: 60px; + background-color: #f5f5f5; + width: 100%; + position: fixed; + bottom: 0; +} \ No newline at end of file diff --git a/public/importhost.js b/public/importhost.js new file mode 100644 index 0000000..87864d3 --- /dev/null +++ b/public/importhost.js @@ -0,0 +1,14 @@ +// Specify the URL of the PHP file +const phpFileUrl = './gethost.php'; + +// Fetch the content of the PHP file +fetch(phpFileUrl) + .then(response => response.text()) + .then(content => { + // Update the content of the .node-id element + const nodeIdElement = document.querySelector('.node-id'); + nodeIdElement.textContent = content; + }) + .catch(error => { + console.error('Error fetching PHP file:', error); + }); diff --git a/public/index.css b/public/index.css index 8b6d905..363f029 100644 --- a/public/index.css +++ b/public/index.css @@ -1,45 +1,15 @@ -@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,300;0,400;0,500;1,300;1,400&display=swap"); - -body { - font-family: "Roboto", Arial, Helvetica, sans-serif; - margin: 0; - background: #111; - display: flex; - flex-direction: column; - min-height: 100vh; -} - -.fa-magnifying-glass { - color: white; -} - -.flex-center { - display: flex; - justify-content: center; -} - -.header-center { - align-items: center; - flex-direction: column; - margin-top: 10%; -} - -.left-margin { - margin: 0px 16px; -} - -#uv-error { +#rv-error { color: #ff6666 !important; white-space: pre-wrap; } -#uv-error-code { +#rv-error-code { font-size: 12px; color: #fff; font-family: "Courier New", Courier, monospace; } -#uv-register-sw { +#rv-register-sw { color: white; background: #555555; cursor: pointer; @@ -51,124 +21,181 @@ body { display: none; } -#uv-register-sw:active { +#rv-register-sw:active { background: #333333; } -#uv-register-sw.show { +#rv-register-sw.show { display: block; } -.logo { - width: 150px; - height: 150px; -} - -.logo-wrapper .text { - font-size: 75px; - color: #fff; -} - -.logo-wrapper h1 { - color: white; -} - -footer { - margin: 0 5vw; - margin-top: auto; - display: flex; - flex-direction: column; - line-height: 30px; - margin-bottom: 20px; -} - -footer > div { - display: flex; - justify-content: left; - align-items: center; - flex-wrap: wrap; - margin-bottom: 15px; -} - -footer a, -footer span { - margin: 0 15px; - text-decoration: none; - color: #fff; - font-size: 15px; -} - -footer a { - cursor: pointer; -} - -footer a:hover { - text-decoration: underline; -} - -.desc p { - width: 560px; - color: rgba(253, 253, 253, 0.514); -} - -#uv-address { +.search-bar input[type="text"] { background: none; font-family: inherit; padding: 0px 17px; height: 48px; - border: 1px solid rgb(255, 255, 255, 0.2); + border: 1px solid rgba(255, 255, 255, 0.2); color: var(--text-color); border-radius: 3px; outline: none; width: 350px; - margin-top: 5px; + margin-top: 50px; border-radius: 50px; color: #fff; transition: border-radius 0.1s; } -#uv-address:focus { +.search-bar input[type="text"]:focus { border: 1px solid rgba(253, 253, 253, 0.514); border-radius: 6px; } -.credit { - border-radius: 10px; - padding: 10px; - display: block; - border: #fff 1px solid; - color: #fff; +.footer { + background: #111; + margin-top: auto; + width: 93%; + align-self: center; + height: 80px; display: flex; - flex-wrap: wrap; - margin-bottom: 15px; + justify-content: center; + align-items: center; } -.credit label { - margin-left: auto; - margin-right: 15px; +.cloaker { + background: none; + font-family: inherit; + padding: 0px 17px; + height: 32px; + border: 1px solid rgb(255, 255, 255, 0.2); + color: var(--text-color); + border-radius: 3px; + outline: none; + width: 150px; + margin-top: 5px; + border-radius: 50px; + color: #fff; + transition: border-radius 0.1s; + margin-top: auto; + display: flex; + justify-content: center; + align-items: center; + display: inline-block; + position: relative; } -.credit a, -.credit label { - color: white; - text-decoration: underline; - text-align: right; +.cloaker::before { + content: ""; + position: absolute; + top: -5px; + right: -5px; + bottom: -5px; + left: -5px; } -.credit pre { - display: none; - width: 100%; +.games { + background: none; + font-family: inherit; + padding: 0px 17px; + height: 32px; + border: 1px solid rgb(255, 255, 255, 0.2); + color: var(--text-color); + border-radius: 3px; + outline: none; + width: 160px; + margin-top: 5px; + border-radius: 50px; + color: #fff; + transition: border-radius 0.1s; + margin-top: auto; + display: flex; + justify-content: center; + align-items: center; + position: relative; } -.credit label::after { - content: "show license"; - cursor: pointer; +.games::before { + content: ""; + position: absolute; + top: -5px; + right: -5px; + bottom: -5px; + left: -5px; } -.credit input:checked + label::after { - content: "hide license"; +.node { + background: none; + font-family: inherit; + padding: 0px 17px; + height: 32px; + border: 1px solid rgb(255, 255, 255, 0.2); + color: var(--text-color); + border-radius: 3px; + outline: none; + width: 165px; + margin-top: 5px; + border-radius: 50px; + color: #fff; + transition: border-radius 0.1s; + margin-top: auto; + display: flex; + align-items: center; /* Align the text and span vertically */ + margin-bottom: 20px; + margin-right: 20px; + position: relative; } -.credit input:checked ~ pre { - display: block; +.node::before { + content: ""; + position: absolute; + top: -5px; + right: -5px; + bottom: -5px; + left: -5px; } + +.node-id { + margin-left: 5px; /* Add margin between "Node ID:" and the ID */ +} + +.stats { + background: none; + font-family: inherit; + padding: 0px 17px; + height: 32px; + border: 1px solid rgb(255, 255, 255, 0.2); + color: var(--text-color); + border-radius: 3px; + outline: none; + width: 150px; + margin-top: 5px; + border-radius: 50px; + color: #fff; + transition: border-radius 0.1s; + margin-top: auto; + display: flex; + justify-content: center; + align-items: center; + margin-bottom: 20px; +} + +.credits { + background: none; + font-family: inherit; + padding: 0px 17px; + height: 32px; + border: 1px solid rgb(255, 255, 255, 0.2); + color: var(--text-color); + border-radius: 3px; + outline: none; + width: 150px; + margin-top: 5px; + border-radius: 50px; + color: #fff; + transition: border-radius 0.1s; + margin-top: auto; + display: flex; + justify-content: center; + align-items: center; + margin-right: 20px; /* Add margin to the right side */ + margin-bottom: 20px; /* Add margin to the bottom */ +} \ No newline at end of file diff --git a/public/index.html b/public/index.html index b6f133d..7ace2cd 100644 --- a/public/index.html +++ b/public/index.html @@ -1,119 +1,71 @@ - - - - - Ultraviolet | Sophisticated Web Proxy - - - - - - - - - - - - - - - -
- -

Ultraviolet | TN

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+

A Sophisticated Web Proxy that allows you to browse the web anonymously and securely.

-
+ + diff --git a/public/index.js b/public/index.js index 19c0d97..9bbf774 100644 --- a/public/index.js +++ b/public/index.js @@ -2,23 +2,23 @@ /** * @type {HTMLFormElement} */ -const form = document.getElementById("uv-form"); +const form = document.getElementById("rv-form"); /** * @type {HTMLInputElement} */ -const address = document.getElementById("uv-address"); +const address = document.getElementById("rv-address"); /** * @type {HTMLInputElement} */ -const searchEngine = document.getElementById("uv-search-engine"); +const searchEngine = document.getElementById("rv-search-engine"); /** * @type {HTMLParagraphElement} */ -const error = document.getElementById("uv-error"); +const error = document.getElementById("rv-error"); /** * @type {HTMLPreElement} */ -const errorCode = document.getElementById("uv-error-code"); +const errorCode = document.getElementById("rv-error-code"); form.addEventListener("submit", async (event) => { event.preventDefault(); diff --git a/public/other/credits/index.html b/public/other/credits/index.html new file mode 100644 index 0000000..a26e470 --- /dev/null +++ b/public/other/credits/index.html @@ -0,0 +1,26 @@ + + + + + + + Revela | Credits + + + + + + + + + +
+

Revela | Credits

+
+
+

Our backend: Ultraviolet

+
+ + + \ No newline at end of file diff --git a/public/register-sw.js b/public/register-sw.js index 37c8ea2..a0f6df1 100644 --- a/public/register-sw.js +++ b/public/register-sw.js @@ -5,7 +5,7 @@ const stockSW = "/uv/sw.js"; /** - * List of hostnames that are allowed to run serviceworkers on http:// + * List of hostnames that are allowed to run serviceworkers on http: */ const swAllowedHostnames = ["localhost", "127.0.0.1"]; @@ -14,15 +14,14 @@ const swAllowedHostnames = ["localhost", "127.0.0.1"]; * Used in 404.html and index.html */ async function registerSW() { - if (!navigator.serviceWorker) { - if ( - location.protocol !== "https:" && - !swAllowedHostnames.includes(location.hostname) - ) - throw new Error("Service workers cannot be registered without https."); + if ( + location.protocol !== "https:" && + !swAllowedHostnames.includes(location.hostname) + ) + throw new Error("Service workers cannot be registered without https."); + if (!navigator.serviceWorker) throw new Error("Your browser doesn't support service workers."); - } // Ultraviolet has a stock `sw.js` script. await navigator.serviceWorker.register(stockSW, { diff --git a/public/uv/uv.config.js b/public/uv/uv.config.js index 72dca7f..0e29e55 100644 --- a/public/uv/uv.config.js +++ b/public/uv/uv.config.js @@ -1,4 +1,4 @@ -// This file overwrites the stock UV config.js +// This file overwrites the stock uv config.js self.__uv$config = { prefix: "/uv/service/",