diff options
| author | Dhravya Shah <[email protected]> | 2025-02-18 20:43:29 -0700 |
|---|---|---|
| committer | Dhravya Shah <[email protected]> | 2025-02-18 20:43:29 -0700 |
| commit | f6c2e220a39974c3075b4d7308d2aaa23fc31b78 (patch) | |
| tree | 859335dcdf7b823fe60a2d0d21bdd258731fd61c /apps/extension | |
| parent | firefox support (diff) | |
| download | supermemory-firefox-support.tar.xz supermemory-firefox-support.zip | |
unable to get the message throughfirefox-support
Diffstat (limited to 'apps/extension')
| -rw-r--r-- | apps/extension/manifest.json | 10 | ||||
| -rw-r--r-- | apps/extension/src/background.ts | 1 | ||||
| -rw-r--r-- | apps/extension/src/firefox/content.ts | 9 | ||||
| -rw-r--r-- | apps/extension/src/twitter.ts | 22 |
4 files changed, 30 insertions, 12 deletions
diff --git a/apps/extension/manifest.json b/apps/extension/manifest.json index c938209a..58d9f759 100644 --- a/apps/extension/manifest.json +++ b/apps/extension/manifest.json @@ -31,6 +31,16 @@ "http://supermemory.com/*" ] }, + "firefox:content_scripts": [{ + "matches": [ + "http://localhost:3000/*", + "https://supermemory.ai/*", + "https://beta.supermemory.ai/*", + "http://supermemory.com/*" + ], + "js": ["src/firefox/content.ts"] + } + ], "icons": { "16": "images/icon/16.png", "32": "images/icon/32.png", diff --git a/apps/extension/src/background.ts b/apps/extension/src/background.ts index b02d027f..74bb0f09 100644 --- a/apps/extension/src/background.ts +++ b/apps/extension/src/background.ts @@ -154,7 +154,6 @@ registerMessageHandler<MessageType>( target: { tabId: currentTab.id }, files: ["scripts/content.js"], }); - } catch (error) { console.error("Error injecting content script:", error); } diff --git a/apps/extension/src/firefox/content.ts b/apps/extension/src/firefox/content.ts new file mode 100644 index 00000000..73e20004 --- /dev/null +++ b/apps/extension/src/firefox/content.ts @@ -0,0 +1,9 @@ +const handleWindowMessage = (event: MessageEvent) => { + if (event.data.action === "exportBookmarks") { + console.log("Received exportBookmarks message via postMessage"); + chrome.runtime.sendMessage({ action: "exportBookmarks" }); + } +}; + + window.addEventListener("message", handleWindowMessage); + diff --git a/apps/extension/src/twitter.ts b/apps/extension/src/twitter.ts index 09118973..53af9b4a 100644 --- a/apps/extension/src/twitter.ts +++ b/apps/extension/src/twitter.ts @@ -366,6 +366,16 @@ const getBookmarks = async (cursor = "", totalImported = 0, allTweets = []) => { }; export const setupTwitterHeaderListener = () => { + const extraOptions = + chrome.runtime.getManifest().manifest_version === 2 + ? ["blocking", "requestHeaders"] + : ["requestHeaders"]; + + // Add extraHeaders only if we're on a Chromium-based browser + if (!navigator.userAgent.includes("Firefox")) { + extraOptions.push("extraHeaders"); + } + chrome.webRequest.onBeforeSendHeaders.addListener( (details) => { try { @@ -426,16 +436,6 @@ export const setupTwitterHeaderListener = () => { const cookie = getHeaderValue("cookie"); const csrf = getHeaderValue("x-csrf-token"); - // // Validate required headers - // if (!auth || !cookie || !csrf) { - // console.warn("Missing required headers", { - // hasAuth: !!auth, - // hasCookie: !!cookie, - // hasCsrf: !!csrf, - // }); - // return; - // } - // Only update storage if values have changed if ( result.cookie !== cookie || @@ -465,6 +465,6 @@ export const setupTwitterHeaderListener = () => { } }, { urls: ["*://x.com/*", "*://twitter.com/*"] }, - ["requestHeaders", "extraHeaders"] + extraOptions ); }; |