68 lines
3.1 KiB
Text
68 lines
3.1 KiB
Text
---
|
|
import Input from "@components/UI/Input.astro";
|
|
import Dropdown from "@components/UI/Dropdown.astro";
|
|
|
|
import { i18n } from "@i18n/utils";
|
|
const t = i18n.inferLangUseTranslations(Astro.url);
|
|
|
|
const proxyList = [
|
|
{ name: t("settings.proxy.auto"), value: "auto" },
|
|
{ name: t("ultraviolet"), value: "ultraviolet" },
|
|
{ name: "Rammerhead", value: "rammerhead" },
|
|
];
|
|
|
|
const searchEngineList = [
|
|
{ name: "Google", value: "google" },
|
|
{ name: "Bing", value: "bing" },
|
|
{ name: "Brave", value: "brave" },
|
|
{ name: "Searx", value: "searx" },
|
|
];
|
|
|
|
const openPageWith = [
|
|
{ name: t("settings.proxy.openPageWith.embed"), value: "embed" },
|
|
{ name: "About:Blank", value: "about:blank" },
|
|
{ name: t("settings.proxy.openPageWith.newTab"), value: "newTab" },
|
|
];
|
|
|
|
const transportsList = [
|
|
{ name: "Epoxy", value: "/epoxy/index.mjs" },
|
|
{ name: "Libcurl", value: "/libcurl/index.mjs" },
|
|
{ name: "Bare", value: "/baremod/index.mjs" },
|
|
];
|
|
|
|
const wispURLList = [
|
|
{ name: "Alu (US)", value: "wss://aluu.xyz/wisp/" },
|
|
{ name: "Nebula (US)", value: "wss://nebulaproxy.io/wisp/" },
|
|
];
|
|
---
|
|
|
|
<div class="settings-container">
|
|
<div class="setting__selected-proxy">
|
|
<label for="dropdown__selected-proxy" aria-label="Selected Proxy" class="setting-label">{t("settings.proxy.selectedProxy")}</label>
|
|
<Dropdown buttonNameDefault="Ultraviolet" dropdownList={proxyList} localStorageKey="proxy" id="dropdown__selected-proxy" />
|
|
</div>
|
|
<div class="setting__search-engine">
|
|
<label for="dropdown__search-engine" aria-label="Search Engine" class="setting-label">{t("settings.proxy.searchEngine")}</label>
|
|
<Dropdown buttonNameDefault="Google" dropdownList={searchEngineList} localStorageKey="search" id="dropdown__search-engine" />
|
|
</div>
|
|
<div class="setting__open_with">
|
|
<label for="dropdown__open-with" aria-label="Open Page With" class="setting-label">{t("settings.proxy.openPageWith")}</label>
|
|
<Dropdown buttonNameDefault={t("settings.proxy.openPageWith.embed")} dropdownList={openPageWith} localStorageKey="openpage" id="dropdown__open-with" />
|
|
</div>
|
|
<div class="setting__wisp_url">
|
|
<label for="dropdown__wisp-url" aria-label="Wisp URL" for="dropdown__wisp-url" class="setting-label">{t("settings.proxy.wispURL")}</label>
|
|
<Dropdown buttonNameDefault={wispURLList[0].name} dropdownList={wispURLList} localStorageKey="wisp" id="dropdown__wisp-url" />
|
|
</div>
|
|
<div class="setting__bare_url">
|
|
<label aria-label="Bare Server URL" for="bare-url-input" class="setting-label">{t("settings.proxy.bareURL")}</label>
|
|
<Input height="50px" inputName="bare-url" />
|
|
</div>
|
|
<div class="setting__transport">
|
|
<label for="dropdown__transport" aria-label="Wisp Transport" class="setting-label">{t("settings.proxy.transport")}</label>
|
|
<Dropdown buttonNameDefault="Epoxy" dropdownList={transportsList} localStorageKey="transport" id="dropdown__transport" />
|
|
</div>
|
|
</div>
|
|
<div class="setting__searxng-url">
|
|
<label aria-label="SearXNG URL" for="searxng-url-input" class="setting-label">{t("settings.proxy.searxngURL")}</label>
|
|
<Input height="50px" inputName="searxng-url" defaultTextContent="https://searxng.site/" />
|
|
</div>
|