diff --git a/apps/an-extension/background.ts b/apps/an-extension/background.ts index 798d5018..3428b484 100644 --- a/apps/an-extension/background.ts +++ b/apps/an-extension/background.ts @@ -1 +1,26 @@ -console.log('Hello from the background script!') +chrome.runtime.onInstalled.addListener(function () { + let context = 'selection'; + let title = "Supermemory - Save Highlight"; + chrome.contextMenus.create({ + title: title, + contexts: ['selection'], + id: context, + }); +}); + +chrome.contextMenus.onClicked.addListener(function (info, tab) { + if (info.menuItemId === 'selection') { + console.log(info.pageUrl) + chrome.tabs.sendMessage(tab?.id || 1, info.selectionText); + console.log(info.selectionText) + + // you can add a link to a cf worker or whatever u want + // fetch("", { + // method: "POST", + // headers: { "Content-Type": "application/json" }, + // body: JSON.stringify({ + // data: info.selectionText, + // }), + // }); + } +}); diff --git a/apps/an-extension/content/ContentApp.tsx b/apps/an-extension/content/ContentApp.tsx index a0715969..8773c71d 100644 --- a/apps/an-extension/content/ContentApp.tsx +++ b/apps/an-extension/content/ContentApp.tsx @@ -1,29 +1,26 @@ -import React from 'react' -import reactLogo from '../public/react.png' -import tailwindBg from '../public/tailwind_bg.png' -import typescriptLogo from '../public/typescript.png' -import tailwindLogo from '../public/tailwind.png' -import chromeWindowBg from '../public/chromeWindow.png' +import React, { useEffect } from "react"; +import tailwindBg from "../public/tailwind_bg.png"; export default function ContentApp() { - const [isdialogOpen, setIsDialogOpen] = React.useState(true) + const [text, setText] = React.useState(""); - if (!isdialogOpen) { - return ( -
- -
- ) - } + useEffect(() => { + const messageListener = (message: any) => { + setText(message); + setTimeout(() => setText(""), 2000); + }; + + chrome.runtime.onMessage.addListener(messageListener); + return () => { + chrome.runtime.onMessage.removeListener(messageListener); + }; + }, []); return ( -
-
+
+
@@ -37,51 +34,12 @@ export default function ContentApp() {
-
- React logo -
+
- TypeScript logo -
+
- Tailwind logo -
+

- This is a content script running React, TypeScript, and - Tailwind.css. + Saved: {text}

-

- Learn more about creating cross-browser extensions by{' '} - - . -

-
-
- Chrome window screenshot
- ) + ); } diff --git a/apps/an-extension/content/content.tsx b/apps/an-extension/content/content.tsx index 01569724..d9e5a4ed 100644 --- a/apps/an-extension/content/content.tsx +++ b/apps/an-extension/content/content.tsx @@ -1,4 +1,3 @@ -import React from 'react' import ReactDOM from 'react-dom/client' import ContentApp from './ContentApp' import('./base.css') @@ -7,13 +6,10 @@ import('./content.css') setTimeout(initial, 1000) function initial() { - // Create a new div element and append it to the document's body const rootDiv = document.createElement('div') rootDiv.id = 'extension-root' document.body.appendChild(rootDiv) - // Use `createRoot` to create a root, then render the component - // Note that `createRoot` takes the container DOM node, not the React element const root = ReactDOM.createRoot(rootDiv) root.render() } diff --git a/apps/an-extension/index.html b/apps/an-extension/index.html new file mode 100644 index 00000000..bb4c07c7 --- /dev/null +++ b/apps/an-extension/index.html @@ -0,0 +1,11 @@ + + + + + + God Bless Vanilla JavaScript!!! + + +

hello World! Follow @supermemoryai

+ + \ No newline at end of file diff --git a/apps/an-extension/manifest.json b/apps/an-extension/manifest.json index a270fb66..9c31c9c9 100644 --- a/apps/an-extension/manifest.json +++ b/apps/an-extension/manifest.json @@ -1,15 +1,21 @@ { + "name": "Supermemory.ai-Extension", + "description": "Uses the chrome.contextMenus API to customize the context menu.", + "version": "0.1", + "permissions": [ + "contextMenus" + ], "manifest_version": 3, - "version": "1.0", - "name": "an-extension", - "description": "An extension template using React and TypeScript. This template includes a content script using Tailwind.css. To see it in action, visit https://extension.js.org.", + "action": { + "default_popup": "index.html" + }, "background": { "service_worker": "./background.ts" }, "content_scripts": [ { "matches": [ - "https://extension.js.org/*" + "" ], "js": [ "./content/content.tsx" @@ -17,7 +23,7 @@ } ], "icons": { - "16": "public/icon/icon_16.png", - "48": "public/icon/icon_48.png" + "16": "public/icon/logo(16).png", + "48": "public/icon/logo(48).png" } } \ No newline at end of file diff --git a/apps/an-extension/public/chromeWindow.png b/apps/an-extension/public/chromeWindow.png deleted file mode 100644 index da525dd8..00000000 Binary files a/apps/an-extension/public/chromeWindow.png and /dev/null differ diff --git a/apps/an-extension/public/icon/icon_16.png b/apps/an-extension/public/icon/icon_16.png deleted file mode 100644 index 651139b5..00000000 Binary files a/apps/an-extension/public/icon/icon_16.png and /dev/null differ diff --git a/apps/an-extension/public/icon/icon_48.png b/apps/an-extension/public/icon/icon_48.png deleted file mode 100644 index 73b36f0f..00000000 Binary files a/apps/an-extension/public/icon/icon_48.png and /dev/null differ diff --git a/apps/an-extension/public/icon/logo(16).png b/apps/an-extension/public/icon/logo(16).png new file mode 100644 index 00000000..3c1610b0 Binary files /dev/null and b/apps/an-extension/public/icon/logo(16).png differ diff --git a/apps/an-extension/public/icon/logo(48).png b/apps/an-extension/public/icon/logo(48).png new file mode 100644 index 00000000..de5a6d2e Binary files /dev/null and b/apps/an-extension/public/icon/logo(48).png differ diff --git a/apps/an-extension/public/react.png b/apps/an-extension/public/react.png deleted file mode 100644 index 9080fddd..00000000 Binary files a/apps/an-extension/public/react.png and /dev/null differ diff --git a/apps/an-extension/public/tailwind.png b/apps/an-extension/public/tailwind.png deleted file mode 100644 index 83ed5e12..00000000 Binary files a/apps/an-extension/public/tailwind.png and /dev/null differ diff --git a/apps/an-extension/public/typescript.png b/apps/an-extension/public/typescript.png deleted file mode 100644 index 93614694..00000000 Binary files a/apps/an-extension/public/typescript.png and /dev/null differ