aboutsummaryrefslogtreecommitdiffstats
path: root/packages/web/lib/api.ts
diff options
context:
space:
mode:
authorMohamedBassem <me@mbassem.com>2024-02-09 01:50:35 +0000
committerMohamedBassem <me@mbassem.com>2024-02-09 01:57:31 +0000
commit08a5694e451218f1bcb2ad9eb42fd93250afbb96 (patch)
tree2cc2351f26b0ab98268db4bc463c0c3aa3f78a3b /packages/web/lib/api.ts
parentc5bfa5000f178475d0b019b5a960916134b2ecfb (diff)
downloadkarakeep-08a5694e451218f1bcb2ad9eb42fd93250afbb96.tar.zst
[refactor] Extract the bookmark model to be a high level model to support other type of bookmarks
Diffstat (limited to 'packages/web/lib/api.ts')
-rw-r--r--packages/web/lib/api.ts19
1 files changed, 10 insertions, 9 deletions
diff --git a/packages/web/lib/api.ts b/packages/web/lib/api.ts
index 56686cde..8ee08601 100644
--- a/packages/web/lib/api.ts
+++ b/packages/web/lib/api.ts
@@ -2,9 +2,9 @@
import { ZodTypeAny, z } from "zod";
import {
- ZNewBookmarkedLinkRequest,
- zGetLinksResponseSchema,
-} from "./types/api/links";
+ ZNewBookmarkRequest,
+ zGetBookmarksResponseSchema,
+} from "./types/api/bookmarks";
import serverConfig from "./config";
@@ -57,24 +57,25 @@ async function doRequest<T>(
}
export default class APIClient {
- static async getLinks() {
- return await doRequest(`/links`, zGetLinksResponseSchema, {
+ static async getBookmarks() {
+ return await doRequest(`/bookmarks`, zGetBookmarksResponseSchema, {
next: { tags: ["links"] },
});
}
static async bookmarkLink(url: string) {
- const body: ZNewBookmarkedLinkRequest = {
+ const body: ZNewBookmarkRequest = {
+ type: "link",
url,
};
- return await doRequest(`/links`, undefined, {
+ return await doRequest(`/bookmarks`, undefined, {
method: "POST",
body: JSON.stringify(body),
});
}
- static async unbookmarkLink(linkId: string) {
- return await doRequest(`/links/${linkId}`, undefined, {
+ static async deleteBookmark(id: string) {
+ return await doRequest(`/bookmarks/${id}`, undefined, {
method: "DELETE",
});
}