infamous-test 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/settings.local.json +11 -0
- package/baremux/index.js +2 -0
- package/baremux/index.mjs +2 -0
- package/baremux/worker.js +136 -0
- package/index.html +1117 -0
- package/libcurl/index.cjs +6471 -0
- package/libcurl/index.js +6471 -0
- package/libcurl/index.mjs +6452 -0
- package/package.json +17 -0
- package/start.html +53 -0
- package/uv/sw.js +45 -0
- package/uv/uv.bundle.js +8 -0
- package/uv/uv.client.js +5 -0
- package/uv/uv.config.js +27 -0
- package/uv/uv.handler.js +2 -0
- package/uv/uv.sw.js +48 -0
package/package.json
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "infamous-test",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": "Infamous - A state of the art unblocked games website",
|
|
5
|
+
"main": "index.html",
|
|
6
|
+
"files": [
|
|
7
|
+
"*"
|
|
8
|
+
],
|
|
9
|
+
"keywords": [
|
|
10
|
+
"games",
|
|
11
|
+
"proxy",
|
|
12
|
+
"ultraviolet",
|
|
13
|
+
"scramjet"
|
|
14
|
+
],
|
|
15
|
+
"author": "Infamous Team",
|
|
16
|
+
"license": "AGPL-3.0"
|
|
17
|
+
}
|
package/start.html
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8">
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
6
|
+
<title>infamous</title>
|
|
7
|
+
<style>
|
|
8
|
+
* { margin: 0; padding: 0; box-sizing: border-box; }
|
|
9
|
+
body {
|
|
10
|
+
background: #1a0b11;
|
|
11
|
+
color: white;
|
|
12
|
+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
|
|
13
|
+
display: flex;
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
align-items: center;
|
|
16
|
+
justify-content: center;
|
|
17
|
+
min-height: 100vh;
|
|
18
|
+
}
|
|
19
|
+
h1 {
|
|
20
|
+
font-size: 4rem;
|
|
21
|
+
background: linear-gradient(to bottom right, #e2588d, #c44ac4);
|
|
22
|
+
-webkit-background-clip: text;
|
|
23
|
+
-webkit-text-fill-color: transparent;
|
|
24
|
+
background-clip: text;
|
|
25
|
+
margin-bottom: 1rem;
|
|
26
|
+
}
|
|
27
|
+
p { color: rgba(255,255,255,0.6); margin-bottom: 2rem; }
|
|
28
|
+
.btn {
|
|
29
|
+
background: linear-gradient(135deg, #e2588d, #c44ac4);
|
|
30
|
+
color: white;
|
|
31
|
+
padding: 1rem 2rem;
|
|
32
|
+
border-radius: 15px;
|
|
33
|
+
text-decoration: none;
|
|
34
|
+
font-weight: 600;
|
|
35
|
+
transition: transform 0.2s, box-shadow 0.2s;
|
|
36
|
+
}
|
|
37
|
+
.btn:hover {
|
|
38
|
+
transform: scale(1.05);
|
|
39
|
+
box-shadow: 0 10px 30px rgba(226, 88, 141, 0.4);
|
|
40
|
+
}
|
|
41
|
+
</style>
|
|
42
|
+
<script>
|
|
43
|
+
// Auto-redirect to index.html with launch parameter
|
|
44
|
+
const basePath = window.location.pathname.replace(/\/start\.html$/, '');
|
|
45
|
+
window.location.href = basePath + '/index.html?launch=1';
|
|
46
|
+
</script>
|
|
47
|
+
</head>
|
|
48
|
+
<body>
|
|
49
|
+
<h1>infamous</h1>
|
|
50
|
+
<p>redirecting...</p>
|
|
51
|
+
<a class="btn" href="index.html?launch=1">Click here if not redirected</a>
|
|
52
|
+
</body>
|
|
53
|
+
</html>
|
package/uv/sw.js
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
// UV Service Worker for unpkg deployment
|
|
2
|
+
// Dynamically detects base path
|
|
3
|
+
|
|
4
|
+
const currentPath = self.location.pathname;
|
|
5
|
+
let basePath = '';
|
|
6
|
+
const uvIndex = currentPath.indexOf('/uv/');
|
|
7
|
+
if (uvIndex > 0) {
|
|
8
|
+
basePath = currentPath.substring(0, uvIndex);
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
importScripts(basePath + '/uv/uv.bundle.js');
|
|
12
|
+
importScripts(basePath + '/uv/uv.config.js');
|
|
13
|
+
importScripts(__uv$config.sw || basePath + '/uv/uv.sw.js');
|
|
14
|
+
|
|
15
|
+
const uv = new UVServiceWorker();
|
|
16
|
+
let config = {
|
|
17
|
+
blocklist: new Set(),
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
async function handleRequest(event) {
|
|
21
|
+
if (uv.route(event)) {
|
|
22
|
+
if (config.blocklist.size !== 0) {
|
|
23
|
+
let decodedUrl = new URL(__uv$config.decodeUrl(new URL(event.request.url).pathname.slice(__uv$config.prefix.length)));
|
|
24
|
+
if (config.blocklist.has(decodedUrl.hostname)) {
|
|
25
|
+
return new Response("", { status: 404 });
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
return await uv.fetch(event);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
return await fetch(event.request);
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
self.addEventListener('fetch', (event) => {
|
|
35
|
+
event.respondWith(handleRequest(event));
|
|
36
|
+
});
|
|
37
|
+
|
|
38
|
+
self.addEventListener("message", (event) => {
|
|
39
|
+
config = event.data;
|
|
40
|
+
});
|
|
41
|
+
|
|
42
|
+
self.addEventListener("activate", () => {
|
|
43
|
+
const bc = new BroadcastChannel("UvServiceWorker");
|
|
44
|
+
bc.postMessage("Active");
|
|
45
|
+
});
|