diff options
author | ManeraKai <manerakai@protonmail.com> | 2022-01-30 15:38:55 +0300 |
---|---|---|
committer | ManeraKai <manerakai@protonmail.com> | 2022-01-30 15:38:55 +0300 |
commit | d1ec4ac2af2d644b0b493818bf698dc314d45d25 (patch) | |
tree | 8004530f5752cbb508bb64cb872e0ba7b698e557 /src/pages/options/twitter.js | |
parent | Updating options UI (diff) | |
download | libredirect-d1ec4ac2af2d644b0b493818bf698dc314d45d25.zip |
Splitted options.js
Diffstat (limited to 'src/pages/options/twitter.js')
-rw-r--r-- | src/pages/options/twitter.js | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/pages/options/twitter.js b/src/pages/options/twitter.js new file mode 100644 index 00000000..8bd5affa --- /dev/null +++ b/src/pages/options/twitter.js @@ -0,0 +1,53 @@ +import twitterHelper from "../../assets/javascripts/helpers/twitter.js"; +import commonHelper from "../../assets/javascripts/helpers/common.js"; +import shared from "./shared.js"; + +const nitterInstances = twitterHelper.redirects; +let nitterInstance = document.getElementById("nitter-instance"); +let disableNitter = document.getElementById("disable-nitter"); +let nitterRandomPool = document.getElementById("nitter-random-pool"); +let removeTwitterSW = document.getElementById("remove-twitter-sw"); + +browser.storage.sync.get( + [ + "nitterInstance", + "disableNitter", + "nitterRandomPool", + "removeTwitterSW", + ], + (result) => { + nitterInstance.value = result.nitterInstance || ""; + disableNitter.checked = !result.disableNitter; + nitterRandomPool.value = result.nitterRandomPool || commonHelper.filterInstances(nitterInstances); + removeTwitterSW.checked = !result.removeTwitterSW; + let id = "nitter-instance" + let instances = nitterRandomPool.value.split(',') + shared.autocompletes.push({ id: id, instances: instances }) + shared.autocomplete(document.getElementById(id), instances); + } +) + +const nitterInstanceChange = commonHelper.debounce( + () => { + if (nitterInstance.checkValidity()) { + browser.storage.sync.set({ + nitterInstance: shared.parseURL(nitterInstance.value), + }); + } + }, + 500) +nitterInstance.addEventListener("input", nitterInstanceChange); + + +disableNitter.addEventListener("change", (event) => { + browser.storage.sync.set({ disableNitter: !event.target.checked }); +}); + +removeTwitterSW.addEventListener("change", (event) => { + browser.storage.sync.set({ removeTwitterSW: !event.target.checked }); +}); + +const nitterRandomPoolChange = commonHelper.debounce(() => { + browser.storage.sync.set({ nitterRandomPool: nitterRandomPool.value }); +}, 500); +nitterRandomPool.addEventListener("input", nitterRandomPoolChange); |