options.js 972 B

123456789101112131415161718192021222324252627282930
  1. document.addEventListener("DOMContentLoaded", restore);
  2. document.getElementById("save").addEventListener("click", save);
  3. const DEFAULT_SETTINGS = {
  4. delay: 7,
  5. blacklist: ["*.unbl.ink", "moz-extension://", "*.google.com", "gmail.com", "*.chatgpt.com", "*.ebay.com", "*.amazon.com"],
  6. paused: false,
  7. };
  8. function restore() {
  9. browser.storage.local.get(DEFAULT_SETTINGS, (items) => {
  10. document.getElementById("delay").value = items.delay;
  11. document.getElementById("blacklist").value = items.blacklist.join("\n");
  12. });
  13. }
  14. function save() {
  15. const delay = parseInt(document.getElementById("delay").value, 10);
  16. const blacklist = document
  17. .getElementById("blacklist")
  18. .value.split("\n")
  19. .map((x) => x.trim())
  20. .filter(Boolean);
  21. browser.storage.local.set({ delay, blacklist }, () => {
  22. const status = document.getElementById("status");
  23. status.textContent = "Settings saved.";
  24. setTimeout(() => (status.textContent = ""), 1500);
  25. });
  26. }