aboutsummaryrefslogtreecommitdiff
path: root/extension/src/FolderButton.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'extension/src/FolderButton.tsx')
-rw-r--r--extension/src/FolderButton.tsx25
1 files changed, 25 insertions, 0 deletions
diff --git a/extension/src/FolderButton.tsx b/extension/src/FolderButton.tsx
new file mode 100644
index 0000000..b0115de
--- /dev/null
+++ b/extension/src/FolderButton.tsx
@@ -0,0 +1,25 @@
+import BookmarkTreeNode = browser.bookmarks.BookmarkTreeNode;
+import FolderBody from "./FolderBody.tsx";
+import folderIcon from "./assets/folder.svg"
+import folderIconOpen from "./assets/folder_open.svg"
+import {useState} from "react";
+
+function FolderButton(props: {data: BookmarkTreeNode}) {
+
+ const [folderOpen, setFolderOpen] = useState(false);
+
+ return(
+ <>
+ <a className={"bookmark draggable"} onClick={() => setFolderOpen(!folderOpen)}>
+ <img alt="Folder icon" src={folderOpen ? folderIconOpen : folderIcon}/>
+ <span>{props.data.title}</span>
+ </a>
+ { folderOpen
+ && props.data.children
+ && props.data.children.length > 1
+ && (<FolderBody data={props.data}/>)}
+ </>
+);
+}
+
+export default FolderButton \ No newline at end of file