-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpopup.min.js
1 lines (1 loc) · 1.99 KB
/
popup.min.js
1
function handleSubmit(e) { let t = []; chrome.windows.getCurrent({ populate: !0 }, function (n) { n.tabs.forEach(function (e) { t.push(e.url) }), localStorage.setItem(e, t), console.log("stored " + e), refreshList(), refreshButtonHandler() }) } function checkAvailability(e) { for (a in localStorage) if (a === e) return console.log("not available"), !1; return console.log("available"), !0 } function refreshList() { let e = document.getElementById("show-workspace"); e.innerHTML = ""; let t = Object.keys(localStorage); if (t.length) t.map(t => { let n = document.createElement("p"); n.innerText = t; let a = document.createElement("button"); a.classList.add("eraseOutline"), a.setAttribute("id", t); let l = document.createElement("img"); l.src = "images/ic_whatshot_24px.png", a.appendChild(l); let r = document.createElement("li"); r.appendChild(n), r.appendChild(a), e.appendChild(r) }); else { let t = document.createElement("div"); t.innerText = "[ Empty ]", t.setAttribute("id", "emptyWorkspace"), e.appendChild(t) } } function refreshButtonHandler() { Array.from(document.getElementsByClassName("eraseOutline")).forEach(e => { e.addEventListener("click", () => { localStorage.getItem(e.id).split(",").forEach(e => { chrome.tabs.create({ url: e }, function () { console.log("tabs created") }) }) }) }) } function checkLimit() { let e = Object.keys(localStorage); return e.length < 15 || (console.log(e.length), !1) } refreshList(), refreshButtonHandler(), document.getElementById("submitBtn").addEventListener("click", () => { let e = "", t = document.getElementById("packname").value, n = checkAvailability(t = t.trim()), a = checkLimit(); t && n && a && t.length <= 25 ? handleSubmit(t) : e = t && !n ? "*Workspace already saved.Try another name." : t && !a ? "*Limit has reached, delete workspace to add new one." : !t || t.length <= 25 ? "*Input must not be empty" : "*Try to add name containing less than 25 characters.", document.getElementById("errorMessage").innerText = e, document.getElementById("packname").value = "" });