diff options
| author | MohamedBassem <me@mbassem.com> | 2024-03-05 15:14:38 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-03-05 15:14:38 +0000 |
| commit | 9490a3a616f526ee7b495abab27af111df16bbb4 (patch) | |
| tree | 9c2ef6f51d534f728f3bcff8d4146afdfdf4464f /packages/browser-extension/src/Layout.tsx | |
| parent | 4ddfd0e322d79fb1b3b6603a252c0f3fa5a98270 (diff) | |
| download | karakeep-9490a3a616f526ee7b495abab27af111df16bbb4.tar.zst | |
extension: Allow deleting and opening newly saved bookmarks
Diffstat (limited to 'packages/browser-extension/src/Layout.tsx')
| -rw-r--r-- | packages/browser-extension/src/Layout.tsx | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/packages/browser-extension/src/Layout.tsx b/packages/browser-extension/src/Layout.tsx new file mode 100644 index 00000000..b7768d1a --- /dev/null +++ b/packages/browser-extension/src/Layout.tsx @@ -0,0 +1,51 @@ +import { Outlet } from "react-router-dom"; +import { Home, RefreshCw, Settings, X } from "lucide-react"; +import { useNavigate } from "react-router-dom"; +import usePluginSettings from "./utils/settings"; + +export default function Layout() { + const navigate = useNavigate(); + const [settings, _1, _2, _3, isInit] = usePluginSettings(); + if (!isInit) { + return <div className="p-4">Loading ... </div>; + } + + if (!settings.apiKey || !settings.address) { + navigate("/notconfigured"); + return; + } + + return ( + <div className="flex flex-col space-y-2"> + <div className="rounded-md bg-yellow-100 p-4"> + <Outlet /> + </div> + <hr /> + <div className="flex justify-between space-x-3"> + <div className="my-auto"> + <a + className="flex gap-2 text-black" + target="_blank" + href={`${settings.address}/dashboard/bookmarks`} + > + <Home /> + <span className="text-md my-auto">Bookmarks</span> + </a> + </div> + <div className="flex space-x-3"> + {process.env.NODE_ENV == "development" && ( + <button onClick={() => navigate(0)}> + <RefreshCw className="w-4" /> + </button> + )} + <button onClick={() => navigate("/options")}> + <Settings className="w-4" /> + </button> + <button onClick={() => window.close()}> + <X className="w-4" /> + </button> + </div> + </div> + </div> + ); +} |
