diff options
| author | MohamedBassem <me@mbassem.com> | 2024-02-12 20:50:12 +0000 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-02-12 20:50:12 +0000 |
| commit | 6e6d2c3cbc860d0024e9631b01eeef55b47933a5 (patch) | |
| tree | 33cf443237fcc757f8f22436f861652d369d6330 /packages/browser-extension/src/SavePage.tsx | |
| parent | e2bdccd483677cd60a92f4b0308bd2e4a0c02bfb (diff) | |
| download | karakeep-6e6d2c3cbc860d0024e9631b01eeef55b47933a5.tar.zst | |
WIP: Implement saving page functionality in browser extension
Diffstat (limited to 'packages/browser-extension/src/SavePage.tsx')
| -rw-r--r-- | packages/browser-extension/src/SavePage.tsx | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/packages/browser-extension/src/SavePage.tsx b/packages/browser-extension/src/SavePage.tsx new file mode 100644 index 00000000..c66cc0ad --- /dev/null +++ b/packages/browser-extension/src/SavePage.tsx @@ -0,0 +1,40 @@ +import { useEffect, useState } from "react"; +import { Settings } from "./settings"; + +export default function SavePage({ settings }: { settings: Settings }) { + const [loading, setLoading] = useState(true); + const [error, setError] = useState<string | undefined>(undefined); + + async function runFetch() { + const resp = await fetch( + `${settings.address}/api/trpc/bookmarks.bookmarkLink`, + { + method: "POST", + }, + ); + + if (!resp.ok) { + setError("Something went wrong: " + (await resp.json())); + } + setLoading(false); + } + + useEffect(() => { + runFetch(); + }, []); + + if (loading) { + return <div>Loading ...</div>; + } + + if (error) { + return <div className="text-red-500">{error} ...</div>; + } + + return ( + <div> + SAVED! + <button onClick={runFetch}> Reload </button> + </div> + ); +} |
