diff --git a/companion/extension/entrypoints/background/index.ts b/companion/extension/entrypoints/background/index.ts index 0b863d0f72..d48cf40b19 100644 --- a/companion/extension/entrypoints/background/index.ts +++ b/companion/extension/entrypoints/background/index.ts @@ -277,7 +277,8 @@ function getTabsAPI(): typeof chrome.tabs | null { // Get action API with cross-browser support function getActionAPI(): typeof chrome.action | null { const api = getBrowserAPI(); - return api?.action || null; + // Safari uses browserAction (Manifest V2), Chrome uses action (Manifest V3) + return api?.action || (api as any)?.browserAction || null; } // Check if the URL is a restricted page where content scripts can't run diff --git a/companion/wxt.config.ts b/companion/wxt.config.ts index a79b13b472..5bd7a4eabb 100644 --- a/companion/wxt.config.ts +++ b/companion/wxt.config.ts @@ -59,7 +59,12 @@ export default defineConfig({ name: "Cal.com Companion", version: "1.7.5", description: "Your calendar companion for quick booking and scheduling", - permissions: ["activeTab", "storage", "identity"], + permissions: [ + "activeTab", + "storage", + // Safari doesn't support Chrome's identity API + ...(browserTarget !== "safari" ? ["identity"] : []), + ], host_permissions: [ "https://companion.cal.com/*", "https://api.cal.com/*",