First working version. Use at your own risk. #FaceScrub
Leave all Facebook groups at once
1. Go to facebook.com/groups/joins/
2. Open the developer console, paste the code and execute it by pressing enter
3. Wait
4. Done.
5. Optional: Let me know how it went.
```javascript
let waitForElemToExist = async (selector) => {
const elem = document.querySelector(selector)
if (elem) return elem
return new Promise(resolve => {
const observer = new MutationObserver(() => {
const elem = document.querySelector(selector)
if (elem) {
resolve(elem)
observer.disconnect()
}
})
observer.observe(document.body, {
subtree: true,
childList: true,
})
})
}
let sleep = (ms) => {
return new Promise((resolve) => setTimeout(resolve, ms*1000))
}
let leave_groups = async () => {
// select groups with button
let groups = [...document.querySelectorAll(`[role="main"] > div [role="listitem"] > div [role="button"]`)]
// click button
for (const group of groups) {
group.click()
await waitForElemToExist('[role="menuitem"]')
_ = [...document.querySelectorAll('[role="menuitem"]')].slice(-1)[0].click()
await waitForElemToExist('[role="dialog"] [role="button"]')
_ = [...document.querySelectorAll('[role="dialog"] [role="button"]')].slice(-1)[0].click()
await (sleep(1))
}
}
leave_groups()
```