diff options
author | Tyler Ferrari <69283684+Sowgro@users.noreply.github.com> | 2024-12-17 11:25:44 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-17 11:25:44 -0500 |
commit | 69b7a1fae3aa7ed474877889cd68b8a6415480d7 (patch) | |
tree | 6b3d111f4bc0915e36937476177a2bf8f67c2fb3 /extension/src/components/BMEditor.tsx | |
parent | a2689fd6ed8f39d4aee98ad193973c743ec1ae4d (diff) | |
parent | 1ca4340e46f7fec3d2689cb8a3c60f9018ead048 (diff) | |
download | bookmarks-home-69b7a1fae3aa7ed474877889cd68b8a6415480d7.tar.gz bookmarks-home-69b7a1fae3aa7ed474877889cd68b8a6415480d7.tar.bz2 bookmarks-home-69b7a1fae3aa7ed474877889cd68b8a6415480d7.zip |
Merge pull request #2 from ATO-b2/drag-n-drop
Drag n drop
Diffstat (limited to 'extension/src/components/BMEditor.tsx')
-rw-r--r-- | extension/src/components/BMEditor.tsx | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/extension/src/components/BMEditor.tsx b/extension/src/components/BMEditor.tsx new file mode 100644 index 0000000..1ac72c6 --- /dev/null +++ b/extension/src/components/BMEditor.tsx @@ -0,0 +1,55 @@ +import React, {useContext, useEffect, useState} from "react"; +import CloseIcon from "../assets/close.svg?react" +import {ActiveEdit} from "./Body.tsx"; +import {getBrowser} from "../main.tsx"; +import RadioButtonGroup from "./RadioButtonGroup.tsx"; + + +function BMEditor() { + const [activeEdit, setActiveEdit] = useContext(ActiveEdit); + + const [iconOptions, setIconOptions] = useState<string[]>([]); + + useEffect(() => { + if (!activeEdit) return; + getBrowser().storage.local.get("icon-aval-"+activeEdit.id).then( r => { + setIconOptions(r["icon-aval-"+activeEdit.id]); + }); + }, [activeEdit]); + + if (!activeEdit) return; + + let isFolder = activeEdit && activeEdit.children && activeEdit.children.length > 0; + return ( + <div id="settings-menu" className={activeEdit ? "open" : "closed"}> + <button id="settings-close" onClick={_ => setActiveEdit(null)}> + <CloseIcon/> + </button> + + <h1>Edit {isFolder ? "Folder" : "Bookmark"}</h1> + + <h3>Name</h3> + <input type={"text"} defaultValue={activeEdit?.title} onChange={e => { + getBrowser().bookmarks.update(activeEdit!.id, {title: e.target.value}) + }}/> + + {!isFolder && (<> + <h3>URL</h3> + <input type={"url"} defaultValue={activeEdit?.url} onChange={e => { + getBrowser().bookmarks.update(activeEdit!.id, {url: e.target.value}) + }}/> + </>)} + + <h3>Icon</h3> + {/*<RadioButtonGroup value={undefined}>*/} + {iconOptions && iconOptions.map(s => + // <option value={s}> + <img src={s}/> + // </option> + )} + {/*</RadioButtonGroup>*/} + </div> + ); +} + +export default BMEditor;
\ No newline at end of file |