import React, { useEffect, useState } from "react"; import ReactDOM from "react-dom"; import Options from "../options"; import { StolenData } from "./stolen-data"; import { useEmitter } from "../util"; import { getMemory } from "../memory"; async function getCurrentTab() { const [tab] = await browser.tabs.query({ active: true, windowId: browser.windows.WINDOW_ID_CURRENT, }); return tab; } const Sidebar = () => { const [origin, setOrigin] = useState(null); const [minValueLength, setMinValueLength] = useState(7); const [cookiesOnly, setCookiesOnly] = useState(false); const [cookiesOrOriginOnly, setCookiesOrOriginOnly] = useState(true); const [counter, setCounter] = useEmitter(getMemory()); useEffect(() => { const listener = async (data) => { console.log("tab change!"); const tab = await getCurrentTab(); const url = new URL(tab.url); if (url.origin.startsWith("moz-extension")) { return; } setOrigin(url.origin); }; browser.tabs.onUpdated.addListener(listener); return () => { browser.tabs.onUpdated.removeListener(listener); }; }); return ( <> {/*
*/} setCounter((c) => c + 1)} minValueLength={minValueLength} cookiesOnly={cookiesOnly} cookiesOrOriginOnly={cookiesOrOriginOnly} /> ); }; ReactDOM.render(, document.getElementById("app"));