Make it my own to self host
This commit is contained in:
parent
cea48a6584
commit
3032a81915
@ -14,5 +14,11 @@
|
|||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"vite-plugin-pwa": "^0.21.1"
|
"vite-plugin-pwa": "^0.21.1"
|
||||||
|
},
|
||||||
|
"packageManager": "pnpm@10.5.2+sha512.da9dc28cd3ff40d0592188235ab25d3202add8a207afbedc682220e4a0029ffbff4562102b9e6e46b4e3f9e8bd53e6d05de48544b0c57d4b0179e22c76d1199b",
|
||||||
|
"pnpm": {
|
||||||
|
"onlyBuiltDependencies": [
|
||||||
|
"esbuild"
|
||||||
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
29
src/bang.ts
29
src/bang.ts
@ -1,6 +1,15 @@
|
|||||||
// This file was (mostly) ripped from https://duckduckgo.com/bang.js
|
// This file was (mostly) ripped from https://duckduckgo.com/bang.js
|
||||||
|
|
||||||
export const bangs = [
|
export const bangs = [
|
||||||
|
{
|
||||||
|
c: "Online Services",
|
||||||
|
d: "search.gibbyb.com",
|
||||||
|
r: 0,
|
||||||
|
s: "GibbyB",
|
||||||
|
sc: "Search",
|
||||||
|
t: "sg",
|
||||||
|
u: "https://search.gibbyb.com/?q={{{s}}}",
|
||||||
|
},
|
||||||
{
|
{
|
||||||
c: "AI",
|
c: "AI",
|
||||||
d: "www.t3.chat",
|
d: "www.t3.chat",
|
||||||
@ -10,24 +19,6 @@ export const bangs = [
|
|||||||
t: "t3",
|
t: "t3",
|
||||||
u: "https://www.t3.chat/new?q={{{s}}}",
|
u: "https://www.t3.chat/new?q={{{s}}}",
|
||||||
},
|
},
|
||||||
{
|
|
||||||
c: "Tech",
|
|
||||||
d: "www.01net.com",
|
|
||||||
r: 4,
|
|
||||||
s: "01net",
|
|
||||||
sc: "Downloads (apps)",
|
|
||||||
t: "01net",
|
|
||||||
u: "http://www.01net.com/recherche/recherche.php?searchstring={{{s}}}&chaine=home",
|
|
||||||
},
|
|
||||||
{
|
|
||||||
c: "Entertainment",
|
|
||||||
d: "www.bmw2002faq.com",
|
|
||||||
r: 0,
|
|
||||||
s: "BMW 2002 FAQ",
|
|
||||||
sc: "Forum",
|
|
||||||
t: "02faq",
|
|
||||||
u: "https://www.bmw2002faq.com/search/?q={{{s}}}",
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
c: "Entertainment",
|
c: "Entertainment",
|
||||||
d: "boxofficemojo.com",
|
d: "boxofficemojo.com",
|
||||||
@ -93872,7 +93863,7 @@ export const bangs = [
|
|||||||
r: 46,
|
r: 46,
|
||||||
s: "Sourcegraph",
|
s: "Sourcegraph",
|
||||||
sc: "Programming",
|
sc: "Programming",
|
||||||
t: "sg",
|
t: "srcg",
|
||||||
u: "https://sourcegraph.com/search?q={{{s}}}",
|
u: "https://sourcegraph.com/search?q={{{s}}}",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -99,6 +99,7 @@ textarea {
|
|||||||
border-radius: 4px;
|
border-radius: 4px;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background: #f5f5f5;
|
background: #f5f5f5;
|
||||||
|
text-align: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
.copy-button {
|
.copy-button {
|
||||||
|
16
src/main.ts
16
src/main.ts
@ -6,13 +6,12 @@ function noSearchDefaultPageRender() {
|
|||||||
app.innerHTML = `
|
app.innerHTML = `
|
||||||
<div style="display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100vh;">
|
<div style="display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100vh;">
|
||||||
<div class="content-container">
|
<div class="content-container">
|
||||||
<h1>Und*ck</h1>
|
<h1>Bang</h1>
|
||||||
<p>DuckDuckGo's bang redirects are too slow. Add the following URL as a custom search engine to your browser. Enables <a href="https://duckduckgo.com/bang.html" target="_blank">all of DuckDuckGo's bangs.</a></p>
|
|
||||||
<div class="url-container">
|
<div class="url-container">
|
||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
class="url-input"
|
class="url-input"
|
||||||
value="https://unduck.link?q=%s"
|
value="bang.gbrown.org?q=%s"
|
||||||
readonly
|
readonly
|
||||||
/>
|
/>
|
||||||
<button class="copy-button">
|
<button class="copy-button">
|
||||||
@ -20,13 +19,6 @@ function noSearchDefaultPageRender() {
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<footer class="footer">
|
|
||||||
<a href="https://t3.chat" target="_blank">t3.chat</a>
|
|
||||||
•
|
|
||||||
<a href="https://x.com/theo" target="_blank">theo</a>
|
|
||||||
•
|
|
||||||
<a href="https://github.com/t3dotgg/unduck" target="_blank">github</a>
|
|
||||||
</footer>
|
|
||||||
</div>
|
</div>
|
||||||
`;
|
`;
|
||||||
|
|
||||||
@ -35,7 +27,7 @@ function noSearchDefaultPageRender() {
|
|||||||
const urlInput = app.querySelector<HTMLInputElement>(".url-input")!;
|
const urlInput = app.querySelector<HTMLInputElement>(".url-input")!;
|
||||||
|
|
||||||
copyButton.addEventListener("click", async () => {
|
copyButton.addEventListener("click", async () => {
|
||||||
await navigator.clipboard.writeText(urlInput.value);
|
await navigator.clipboard.writeText("https://" + urlInput.value);
|
||||||
copyIcon.src = "/clipboard-check.svg";
|
copyIcon.src = "/clipboard-check.svg";
|
||||||
|
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
@ -44,7 +36,7 @@ function noSearchDefaultPageRender() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const LS_DEFAULT_BANG = localStorage.getItem("default-bang") ?? "g";
|
const LS_DEFAULT_BANG = localStorage.getItem("default-bang") ?? "sg";
|
||||||
const defaultBang = bangs.find((b) => b.t === LS_DEFAULT_BANG);
|
const defaultBang = bangs.find((b) => b.t === LS_DEFAULT_BANG);
|
||||||
|
|
||||||
function getBangredirectUrl() {
|
function getBangredirectUrl() {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user