-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpopup.js
48 lines (39 loc) · 1.94 KB
/
popup.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
import { cancelDelete, confirmDelete, triggerDelete } from "./components/deleteGroup.js";
import { openGroup, showTabsInGroup } from "./components/groupActions.js";
import { loadGroups } from "./components/loadGroups.js";
import { saveAllTabs, saveCurrentTab } from "./components/saveTabs.js";
document.addEventListener("DOMContentLoaded", () => {
const saveTabsButton = document.getElementById("saveTabsButton");
const addAllTabsButton = document.getElementById("addAllTabsButton");
const closeTabsPopupButton = document.getElementById("closeTabsPopup");
const clearAllButton = document.getElementById("clearAllButton");
// Load saved groups when the popup is opened
loadGroups();
saveTabsButton.addEventListener("click", saveCurrentTab);
addAllTabsButton.addEventListener("click", saveAllTabs);
closeTabsPopupButton.addEventListener("click", () => {
document.getElementById("tabsPopup").classList.add("hidden");
});
document.getElementById("groupList").addEventListener("click", (e) => {
const groupName = e.target.getAttribute("data-group-name");
if (e.target.classList.contains("open-group")) {
openGroup(groupName);
} else if (e.target.classList.contains("delete-group")) {
triggerDelete(groupName);
} else if (e.target.classList.contains("show-tabs")) {
showTabsInGroup(groupName);
}
});
// Confirm delete action
document.querySelector(".confirm-delete").addEventListener("click", () => {
const groupName = document.querySelector(".confirm-delete").getAttribute("data-group-name");
confirmDelete(groupName);
});
// Cancel delete action
document.querySelector(".cancel-delete").addEventListener("click", cancelDelete);
// Clear all groups when the "Clear All" button is clicked
clearAllButton.addEventListener("click", (e) => {
e.preventDefault();
triggerDelete(null);
});
});