aboutsummaryrefslogtreecommitdiff
path: root/apps/extension
diff options
context:
space:
mode:
authorDhravya Shah <[email protected]>2025-02-18 20:43:29 -0700
committerDhravya Shah <[email protected]>2025-02-18 20:43:29 -0700
commitf6c2e220a39974c3075b4d7308d2aaa23fc31b78 (patch)
tree859335dcdf7b823fe60a2d0d21bdd258731fd61c /apps/extension
parentfirefox support (diff)
downloadsupermemory-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.json10
-rw-r--r--apps/extension/src/background.ts1
-rw-r--r--apps/extension/src/firefox/content.ts9
-rw-r--r--apps/extension/src/twitter.ts22
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
);
};