diff options
author | sowgro <tpoke.ferrari@gmail.com> | 2024-11-07 12:40:42 -0500 |
---|---|---|
committer | sowgro <tpoke.ferrari@gmail.com> | 2024-11-07 12:40:42 -0500 |
commit | 03b7ccaa5c152c8d7ed73374be8ad4d4d034845b (patch) | |
tree | 7ce20a5749018fbe82c85ee1bd7c2a5c5083eb4b /extension/src/Body.tsx | |
parent | 958ab3cd5edad8b48a3fa49e0f151b3285abdbfa (diff) | |
download | bookmarks-home-03b7ccaa5c152c8d7ed73374be8ad4d4d034845b.tar.gz bookmarks-home-03b7ccaa5c152c8d7ed73374be8ad4d4d034845b.tar.bz2 bookmarks-home-03b7ccaa5c152c8d7ed73374be8ad4d4d034845b.zip |
Implement sorting and refactor
Diffstat (limited to 'extension/src/Body.tsx')
-rw-r--r-- | extension/src/Body.tsx | 56 |
1 files changed, 0 insertions, 56 deletions
diff --git a/extension/src/Body.tsx b/extension/src/Body.tsx deleted file mode 100644 index 2a46a67..0000000 --- a/extension/src/Body.tsx +++ /dev/null @@ -1,56 +0,0 @@ -import React, {useEffect, useState} from "react"; -import SettingsEditor from "./SettingsEditor.tsx"; -import imageUrl from "./assets/settings.svg" -import BookmarkTreeNode = browser.bookmarks.BookmarkTreeNode; -import FolderBody from "./FolderBody.tsx"; -import {defaultSettings, ISettings, loadSettings, writeSettings} from "./Settings.ts"; -import {getBrowser} from "./main.tsx"; - -export const Settings = - React.createContext<[ISettings, (arg0: ISettings) => void]>([ - defaultSettings, - () => {} -]); - -function Body() { - const [settingsOpen, setSettingsOpen] = useState(false); - const [settings, setSettings] = useState<ISettings>(defaultSettings); - const [bookmarkTree, setBookmarkTree] = useState<BookmarkTreeNode[]>([]) - const [ogBookmarkTree, setOgBookmarkTree] = useState<BookmarkTreeNode[] | null>([]) - useEffect(() => { - loadSettings().then(r => { - setSettings(r); - }) - getBrowser().bookmarks.getTree().then(t => { - setOgBookmarkTree(t); - }) - }, []) - useEffect(() => { - writeSettings(settings); - if (settings?.rootFolder) { - getBrowser().bookmarks.getSubTree(settings.rootFolder).then(t => { - setBookmarkTree(t); - }); - } else { - getBrowser().bookmarks.getTree().then(t => { - setBookmarkTree(t); - }) - } - }, [settings]); - - return ( - <Settings.Provider value={[settings!, setSettings]}> - {(() => {switch (settings.backgroundMode) { - case "color": return (<style>{"body {background-color: " + settings.backgroundColor + "; }"}</style>) - case "image": return (<style>{"body {background-image: url(\"" + settings.backgroundImage + "\"); }"}</style>) - }})()} - <button id="settings-button" onClick={_ => setSettingsOpen(!settingsOpen)}> - <img alt="open settings" src={imageUrl}/> - </button> - <SettingsEditor tree={ogBookmarkTree!} isOpen={[settingsOpen, setSettingsOpen]}/> - {bookmarkTree[0] && (<FolderBody data={bookmarkTree[0]}/>)} - </Settings.Provider> - ) -} - -export default Body
\ No newline at end of file |