diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2024-10-15 23:20:33 -0400 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2024-10-15 23:20:33 -0400 |
commit | f24cfc32734a168254f0c0e4889a989bb69ee444 (patch) | |
tree | 629f0eddce0442283084e2e1910f661ed0e8a1c0 | |
parent | 0eb5b8dcd94453e0aed45001e29761bd1d6c0b0e (diff) | |
download | bookmarks-home-f24cfc32734a168254f0c0e4889a989bb69ee444.tar.gz bookmarks-home-f24cfc32734a168254f0c0e4889a989bb69ee444.tar.bz2 bookmarks-home-f24cfc32734a168254f0c0e4889a989bb69ee444.zip |
populate widgets with actual bookmarks
-rw-r--r-- | bookmarks-home/src/App.tsx | 16 | ||||
-rw-r--r-- | bookmarks-home/src/main.tsx | 21 | ||||
-rw-r--r-- | bookmarks-home/tsconfig.app.tsbuildinfo | 1 | ||||
-rw-r--r-- | extension/.gitignore (renamed from bookmarks-home/.gitignore) | 0 | ||||
-rw-r--r-- | extension/README.md (renamed from bookmarks-home/README.md) | 0 | ||||
-rw-r--r-- | extension/eslint.config.js (renamed from bookmarks-home/eslint.config.js) | 4 | ||||
-rw-r--r-- | extension/index.html (renamed from bookmarks-home/index.html) | 0 | ||||
-rw-r--r-- | extension/package-lock.json (renamed from bookmarks-home/package-lock.json) | 0 | ||||
-rw-r--r-- | extension/package.json (renamed from bookmarks-home/package.json) | 0 | ||||
-rw-r--r-- | extension/public/icons/icon-128.png (renamed from bookmarks-home/public/icons/icon-128.png) | bin | 3401 -> 3401 bytes | |||
-rw-r--r-- | extension/public/icons/icon-32.png (renamed from bookmarks-home/public/icons/icon-32.png) | bin | 930 -> 930 bytes | |||
-rw-r--r-- | extension/public/icons/icon-48.png (renamed from bookmarks-home/public/icons/icon-48.png) | bin | 1306 -> 1306 bytes | |||
-rw-r--r-- | extension/public/manifest.json (renamed from bookmarks-home/public/manifest.json) | 10 | ||||
-rw-r--r-- | extension/src/Bookmark.tsx (renamed from bookmarks-home/src/Bookmark.tsx) | 3 | ||||
-rw-r--r-- | extension/src/Folder.tsx (renamed from bookmarks-home/src/Folder.tsx) | 0 | ||||
-rw-r--r-- | extension/src/index.css (renamed from bookmarks-home/src/index.css) | 3 | ||||
-rw-r--r-- | extension/src/main.tsx | 45 | ||||
-rw-r--r-- | extension/src/vite-env.d.ts (renamed from bookmarks-home/src/vite-env.d.ts) | 0 | ||||
-rw-r--r-- | extension/tsconfig.app.json (renamed from bookmarks-home/tsconfig.app.json) | 0 | ||||
-rw-r--r-- | extension/tsconfig.app.tsbuildinfo | 1 | ||||
-rw-r--r-- | extension/tsconfig.json (renamed from bookmarks-home/tsconfig.json) | 0 | ||||
-rw-r--r-- | extension/tsconfig.node.json (renamed from bookmarks-home/tsconfig.node.json) | 0 | ||||
-rw-r--r-- | extension/tsconfig.node.tsbuildinfo (renamed from bookmarks-home/tsconfig.node.tsbuildinfo) | 0 | ||||
-rw-r--r-- | extension/vite.config.ts (renamed from bookmarks-home/vite.config.ts) | 0 | ||||
-rw-r--r-- | widgets.tsx | 19 |
25 files changed, 61 insertions, 62 deletions
diff --git a/bookmarks-home/src/App.tsx b/bookmarks-home/src/App.tsx deleted file mode 100644 index e634cbe..0000000 --- a/bookmarks-home/src/App.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import Bookmark from "./Bookmark.tsx"; -import Folder from "./Folder.tsx" - -function App() { - return ( - <Folder name="root"> - <Bookmark name="Best website ever" url="https://sowgro.net/"/> - <Bookmark name="Google" url="https://google.com/"/> - <Folder name="subfolder"> - <Bookmark name="example" url="https://example.com"/> - </Folder> - </Folder> - ) -} - -export default App diff --git a/bookmarks-home/src/main.tsx b/bookmarks-home/src/main.tsx deleted file mode 100644 index f2d58d4..0000000 --- a/bookmarks-home/src/main.tsx +++ /dev/null @@ -1,21 +0,0 @@ -import { StrictMode } from 'react' -import { createRoot } from 'react-dom/client' -import App from './App.tsx' -import './index.css' - -createRoot(document.getElementById('root')!).render( - <StrictMode> - <App /> - </StrictMode>, -) - -chrome.bookmarks.getTree((tree) => { - console.log(tree) -}); - -// chrome.bookmarks.create( -// {'parentId': '0', 'title': 'Bookmarks Extension'}, -// function (newFolder) { -// console.log("added folder: " + newFolder.title); -// }, -// );
\ No newline at end of file diff --git a/bookmarks-home/tsconfig.app.tsbuildinfo b/bookmarks-home/tsconfig.app.tsbuildinfo deleted file mode 100644 index 81827de..0000000 --- a/bookmarks-home/tsconfig.app.tsbuildinfo +++ /dev/null @@ -1 +0,0 @@ -{"root":["./src/App.tsx","./src/main.tsx","./src/vite-env.d.ts"],"version":"5.6.2"}
\ No newline at end of file diff --git a/bookmarks-home/.gitignore b/extension/.gitignore index a547bf3..a547bf3 100644 --- a/bookmarks-home/.gitignore +++ b/extension/.gitignore diff --git a/bookmarks-home/README.md b/extension/README.md index 74872fd..74872fd 100644 --- a/bookmarks-home/README.md +++ b/extension/README.md diff --git a/bookmarks-home/eslint.config.js b/extension/eslint.config.js index 092408a..94ff93a 100644 --- a/bookmarks-home/eslint.config.js +++ b/extension/eslint.config.js @@ -7,7 +7,7 @@ import tseslint from 'typescript-eslint' export default tseslint.config( { ignores: ['dist'] }, { - extends: [js.configs.recommended, ...tseslint.configs.recommended], + // extends: [js.configs.recommended, ...tseslint.configs.recommended], files: ['**/*.{ts,tsx}'], languageOptions: { ecmaVersion: 2020, @@ -18,7 +18,7 @@ export default tseslint.config( 'react-refresh': reactRefresh, }, rules: { - ...reactHooks.configs.recommended.rules, + // ...reactHooks.configs.recommended.rules, 'react-refresh/only-export-components': [ 'warn', { allowConstantExport: true }, diff --git a/bookmarks-home/index.html b/extension/index.html index 1bd99ac..1bd99ac 100644 --- a/bookmarks-home/index.html +++ b/extension/index.html diff --git a/bookmarks-home/package-lock.json b/extension/package-lock.json index a514e6c..a514e6c 100644 --- a/bookmarks-home/package-lock.json +++ b/extension/package-lock.json diff --git a/bookmarks-home/package.json b/extension/package.json index 620e922..620e922 100644 --- a/bookmarks-home/package.json +++ b/extension/package.json diff --git a/bookmarks-home/public/icons/icon-128.png b/extension/public/icons/icon-128.png Binary files differindex 9cad318..9cad318 100644 --- a/bookmarks-home/public/icons/icon-128.png +++ b/extension/public/icons/icon-128.png diff --git a/bookmarks-home/public/icons/icon-32.png b/extension/public/icons/icon-32.png Binary files differindex 85d54b8..85d54b8 100644 --- a/bookmarks-home/public/icons/icon-32.png +++ b/extension/public/icons/icon-32.png diff --git a/bookmarks-home/public/icons/icon-48.png b/extension/public/icons/icon-48.png Binary files differindex 3ec5e14..3ec5e14 100644 --- a/bookmarks-home/public/icons/icon-48.png +++ b/extension/public/icons/icon-48.png diff --git a/bookmarks-home/public/manifest.json b/extension/public/manifest.json index 79615c5..cd012dc 100644 --- a/bookmarks-home/public/manifest.json +++ b/extension/public/manifest.json @@ -13,6 +13,14 @@ }, "author": "Owen Howell, Tyler Ferrari, Ariel Levy; students at RIT", "permissions": [ - "bookmarks" + "bookmarks", + "favicon" + ], + "web_accessible_resources": [ + { + "resources": ["_favicon/*"], + "matches": ["<all_urls>"], + "extension_ids": ["*"] + } ] } diff --git a/bookmarks-home/src/Bookmark.tsx b/extension/src/Bookmark.tsx index bb25e9e..d9652a4 100644 --- a/bookmarks-home/src/Bookmark.tsx +++ b/extension/src/Bookmark.tsx @@ -1,12 +1,13 @@ interface BookmarkProps { name: string; url: string; + icon: string; } function Bookmark(props: BookmarkProps) { return( <a className="bookmark" href={props.url}> - <img alt="Bookmark icon" src={""}></img> + <img alt="Bookmark icon" src={props.icon}></img> <span>{props.name}</span> </a> ); diff --git a/bookmarks-home/src/Folder.tsx b/extension/src/Folder.tsx index e831e62..e831e62 100644 --- a/bookmarks-home/src/Folder.tsx +++ b/extension/src/Folder.tsx diff --git a/bookmarks-home/src/index.css b/extension/src/index.css index 0644da2..63a2a92 100644 --- a/bookmarks-home/src/index.css +++ b/extension/src/index.css @@ -4,7 +4,8 @@ border-width: 2px; border-style: solid; border-color: black; - padding: 5px; + padding: 2px; + margin: 2px; } .folder > div { diff --git a/extension/src/main.tsx b/extension/src/main.tsx new file mode 100644 index 0000000..36df6f6 --- /dev/null +++ b/extension/src/main.tsx @@ -0,0 +1,45 @@ +import { createRoot } from 'react-dom/client' +import './index.css' +import Folder from "./Folder.tsx"; +import BookmarkTreeNode = chrome.bookmarks.BookmarkTreeNode; +import Bookmark from "./Bookmark.tsx"; + +chrome.bookmarks.getTree((tree) => { + createRoot(document.getElementById('root')!).render(createFolder(tree[0])) +}); + +function createFolder(lev: BookmarkTreeNode) { + return ( + <Folder name={lev.title}> + { + lev.children ? lev.children.map(item => { + if (item.children) { + return createFolder(item) + } else { + return <Bookmark name={item.title} url={item.url ? item.url : ""} icon={faviconURL(item.url)} /> + } + }) : <span>err</span> + } + </Folder> + ) +} + +function faviconURL(u: string | undefined) { + if (!u) { + return ""; + } + u = new URL(u).origin.toString(); + const url = new URL(chrome.runtime.getURL("/_favicon/")); + url.searchParams.set("pageUrl", u); + url.searchParams.set("size", "32"); + console.log(u) + return url.toString(); +} + + +// chrome.bookmarks.create( +// {'parentId': '0', 'title': 'Bookmarks Extension'}, +// function (newFolder) { +// console.log("added folder: " + newFolder.title); +// }, +// );
\ No newline at end of file diff --git a/bookmarks-home/src/vite-env.d.ts b/extension/src/vite-env.d.ts index 11f02fe..11f02fe 100644 --- a/bookmarks-home/src/vite-env.d.ts +++ b/extension/src/vite-env.d.ts diff --git a/bookmarks-home/tsconfig.app.json b/extension/tsconfig.app.json index f0a2350..f0a2350 100644 --- a/bookmarks-home/tsconfig.app.json +++ b/extension/tsconfig.app.json diff --git a/extension/tsconfig.app.tsbuildinfo b/extension/tsconfig.app.tsbuildinfo new file mode 100644 index 0000000..a21fd05 --- /dev/null +++ b/extension/tsconfig.app.tsbuildinfo @@ -0,0 +1 @@ +{"root":["./src/Bookmark.tsx","./src/Folder.tsx","./src/main.tsx","./src/vite-env.d.ts"],"version":"5.6.2"}
\ No newline at end of file diff --git a/bookmarks-home/tsconfig.json b/extension/tsconfig.json index 1ffef60..1ffef60 100644 --- a/bookmarks-home/tsconfig.json +++ b/extension/tsconfig.json diff --git a/bookmarks-home/tsconfig.node.json b/extension/tsconfig.node.json index 0d3d714..0d3d714 100644 --- a/bookmarks-home/tsconfig.node.json +++ b/extension/tsconfig.node.json diff --git a/bookmarks-home/tsconfig.node.tsbuildinfo b/extension/tsconfig.node.tsbuildinfo index 98ef2f9..98ef2f9 100644 --- a/bookmarks-home/tsconfig.node.tsbuildinfo +++ b/extension/tsconfig.node.tsbuildinfo diff --git a/bookmarks-home/vite.config.ts b/extension/vite.config.ts index 0eaa701..0eaa701 100644 --- a/bookmarks-home/vite.config.ts +++ b/extension/vite.config.ts diff --git a/widgets.tsx b/widgets.tsx deleted file mode 100644 index 138779b..0000000 --- a/widgets.tsx +++ /dev/null @@ -1,19 +0,0 @@ -function Bookmark(url: string, img: string, name: string) { - return( - <a class="bookmark" href={url}> - <img src={img}></img> - <span>{name}</span> - </a> - ); -} - -function Folder(children: any, name: string) { - return( - <div class="folder"> - <span>{name}</span> - <div> - {children} - </div> - </div> - ) -}
\ No newline at end of file |