mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-19 19:04:41 +00:00
- Create Pi Reader browser extension for Chrome/Firefox - Chrome uses Side Panel API, Firefox uses Sidebar Action API - Supports both browsers with separate manifests and unified codebase - Built with mini-lit components and Tailwind CSS v4 - Features model selection dialog with Ollama support - Hot reload development server watches both browser builds - Add useDefineForClassFields: false to fix LitElement reactivity
23 lines
660 B
TypeScript
23 lines
660 B
TypeScript
// Declare browser global for Firefox
|
|
declare const browser: any;
|
|
|
|
// Detect browser type
|
|
const isFirefox = typeof browser !== "undefined" && typeof browser.runtime !== "undefined";
|
|
const browserAPI = isFirefox ? browser : chrome;
|
|
|
|
// Open side panel/sidebar when extension icon is clicked
|
|
browserAPI.action.onClicked.addListener((tab: chrome.tabs.Tab) => {
|
|
if (isFirefox) {
|
|
// Firefox: Toggle the sidebar
|
|
if (typeof browser !== "undefined" && browser.sidebarAction) {
|
|
browser.sidebarAction.toggle();
|
|
}
|
|
} else {
|
|
// Chrome: Open the side panel
|
|
if (tab.id && chrome.sidePanel) {
|
|
chrome.sidePanel.open({ tabId: tab.id });
|
|
}
|
|
}
|
|
});
|
|
|
|
export {};
|