aboutsummaryrefslogtreecommitdiff
path: root/src/options/options.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/options/options.ts')
-rw-r--r--src/options/options.ts27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/options/options.ts b/src/options/options.ts
new file mode 100644
index 0000000..8574ab8
--- /dev/null
+++ b/src/options/options.ts
@@ -0,0 +1,27 @@
+type Settings = {
+ proxyEndpoint?: string;
+ proxyToken?: string;
+};
+
+const endpointInput: HTMLInputElement = document.getElementById("endpoint") as HTMLInputElement;
+const tokenInput: HTMLInputElement = document.getElementById("token") as HTMLInputElement;
+const saveBtn: HTMLButtonElement = document.getElementById("save") as HTMLButtonElement;
+const msg: HTMLElement = document.getElementById("msg") as HTMLElement;
+
+async function loadSettings(): Promise<void> {
+ const settings: Settings = await browser.storage.local.get(["proxyEndpoint", "proxyToken"]);
+ endpointInput.value = settings.proxyEndpoint ?? "";
+ tokenInput.value = settings.proxyToken ?? "";
+}
+
+async function saveSettings(): Promise<void> {
+ await browser.storage.local.set({
+ proxyEndpoint: endpointInput.value.trim(),
+ proxyToken: tokenInput.value.trim(),
+ });
+ msg.textContent = "Saved!";
+ setTimeout(() => (msg.textContent = ""), 2000);
+}
+
+saveBtn.addEventListener("click", saveSettings);
+loadSettings();