Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
titaniumnetwork-dev
GitHub Repository: titaniumnetwork-dev/Ludicrous
Path: blob/main/pages/route.tsx
1223 views
1
import type { NextPage } from 'next'
2
import Script from 'next/script';
3
import { useRouter } from 'next/router';
4
import { useEffect, useState } from 'react';
5
6
const g: any = global || {};
7
8
const Route: NextPage = ( { config }: any ): any => {
9
var [ location, setLocation ] = useState(g.location || { href: '' });
10
var urlEnc = config.config[config.proxy].encodeUrl;
11
var enc = (e: any) => urlEnc(e).replace(new RegExp("\\/$", "g"), '');
12
13
(useEffect as any)(() => {
14
(async () => {
15
document.getElementById('proxy-frame')!.style.display = 'block';
16
17
const params: any = new URL(location.href).searchParams;
18
const engine = localStorage.getItem('__lud$engine') || 'https://www.google.com/search?q=';
19
var xor = {key: 2};
20
var url: NonNullable<any> = new self.URLSearchParams(location.search).get('query');
21
22
async function init() {if (g.openFrame) await g.openFrame(`${config.config[config.proxy].prefix}`+enc(url).replace(/\/$/g, ''), true, new URL(params.origin || location.href));document.querySelector('iframe')!.removeEventListener('load', init)};
23
24
if ('serviceWorker' in navigator) {
25
26
if (!url.startsWith('https:') && !url.startsWith('http:')) {
27
url = engine + encodeURIComponent(url);
28
}
29
30
if (localStorage.getItem('__lud$method')=='normal') {
31
open(`${config.config[config.proxy].prefix}`+enc(url).replace(/\/$/g, ''));
32
33
(document.querySelector('.frame-close') as HTMLElement)!.click();
34
} else {
35
await init();
36
}
37
} else {
38
if (localStorage.getItem('__lud$method')=='normal') {
39
open("/api/~/corrosion/"+enc(url).replace(/\/$/g, ''));
40
41
(document.querySelector('.frame-close') as HTMLElement)!.click();
42
} else {
43
g.openFrame("/api/~/corrosion/"+enc(url).replace(/\/$/g, ''), true, new URL(params.origin || location.href));
44
}
45
}
46
})();
47
}, []);
48
49
const Router = useRouter();
50
51
return (
52
<>
53
<div onLoad={() => setLocation({ href: Router.asPath })}></div>
54
</>
55
);
56
}
57
58
/*Route.getInitialProps = (load) => {
59
console.log(load)
60
return load
61
}*/
62
63
export default Route;
64