diff options
| author | MohamedBassem <me@mbassem.com> | 2024-03-05 18:27:38 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-03-05 18:44:15 +0000 |
| commit | e6570dd7ec5d7aea3c3d0c0235476a1227bbe71f (patch) | |
| tree | 69ee48d5dc6a5e5b95a1ff7f91ea90c8a66e97e4 /packages/browser-extension/src/NotConfiguredPage.tsx | |
| parent | 56c5236245359987e7a729979de3892bbee70852 (diff) | |
| download | karakeep-e6570dd7ec5d7aea3c3d0c0235476a1227bbe71f.tar.zst | |
extension: Instead of manually creating api keys, let users exchange their username passwords for one
Diffstat (limited to 'packages/browser-extension/src/NotConfiguredPage.tsx')
| -rw-r--r-- | packages/browser-extension/src/NotConfiguredPage.tsx | 35 |
1 files changed, 31 insertions, 4 deletions
diff --git a/packages/browser-extension/src/NotConfiguredPage.tsx b/packages/browser-extension/src/NotConfiguredPage.tsx index ef73f149..a5b9c734 100644 --- a/packages/browser-extension/src/NotConfiguredPage.tsx +++ b/packages/browser-extension/src/NotConfiguredPage.tsx @@ -1,14 +1,41 @@ +import { useEffect, useState } from "react"; import { useNavigate } from "react-router-dom"; +import usePluginSettings from "./utils/settings"; export default function NotConfiguredPage() { const navigate = useNavigate(); + + const { settings, setSettings } = usePluginSettings(); + + const [error, setError] = useState(""); + const [serverAddress, setServerAddress] = useState(settings.address); + useEffect(() => { + setServerAddress(settings.address); + }, [settings.address]); + + const onSave = () => { + if (serverAddress == "") { + setError("Server address is required"); + return; + } + setSettings((s) => ({ ...s, address: serverAddress })); + navigate("/signin"); + }; + return ( <div className="flex flex-col space-y-2"> <span>To use the plugin, you need to configure it first.</span> - <button - className="bg-black text-white" - onClick={() => navigate("/options")} - > + <p className="text-red-500">{error}</p> + <div className="flex gap-2"> + <label className="my-auto">Server Address</label> + <input + name="address" + value={serverAddress} + className="h-8 flex-1 rounded-lg border border-gray-300 p-2" + onChange={(e) => setServerAddress(e.target.value)} + /> + </div> + <button className="bg-black text-white" onClick={onSave}> Configure </button> </div> |
