forked from icd/rentgen
Wprowadza infrastrukturę umożliwiającą budowanie rozszerzenia dla Chrome i Firefox z jednej bazy kodu. Mapuje różnice w API między przeglądarkami na ujednolicone interfejsy. ZMIANY: * lib/browser-api/types.ts - typy oparte na analizie rzeczywistego użycia API w kodzie * lib/browser-api/firefox.ts - adapter mapujący browser.* na BrowserAPI * lib/browser-api/chrome.ts - adapter mapujący chrome.* na BrowserAPI * lib/browser-api/index.ts - build-time selection adaptera na podstawie TARGET KLUCZOWE RÓŻNICE OBSŁUŻONE: - Firefox: browser.browserAction.* vs Chrome: chrome.action.* - Firefox: browser.tabs.* vs Chrome: chrome.tabs.* - Firefox: browser.cookies.* vs Chrome: chrome.cookies.* - Firefox: browser.webRequest.* vs Chrome: chrome.webRequest.* TYPY OPARTE NA FAKTYCZNYM UŻYCIU: Przeanalizowano 4 pliki używające browser API: - memory.ts: badge, webRequest, cookies, extension API - toolbar.tsx: tabs.query, tabs.onUpdated, windows.WINDOW_ID_CURRENT - tab-dropdown.tsx: tabs.query - util.ts: tabs.query STATUS: Preparatory change - istniejący kod pozostaje niezmieniony. Kolejne commity będą refaktorować pliki do używania nowej abstrakcji. TARGET: Umożliwienie > rentgen@0.1.10 build:firefox > TARGET=firefox node esbuild.config.js Add-on was built i > rentgen@0.1.10 build:chrome > TARGET=chrome node esbuild.config.js Add-on was built