aboutsummaryrefslogtreecommitdiffstats
path: root/packages/shared
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-01-05 12:01:42 +0000
committerMohamed Bassem <me@mbassem.com>2025-01-05 12:01:42 +0000
commit1f5d5668b7558ec4d0a77129041cba3ba6d72cb7 (patch)
tree547276fbc89d5337c2f32ff6bcb37abe05f5c5dc /packages/shared
parentce16eda75f4d93646e485b7115398e81e7c88acc (diff)
downloadkarakeep-1f5d5668b7558ec4d0a77129041cba3ba6d72cb7.tar.zst
feat: Expose the search functionality in the REST API
Diffstat (limited to 'packages/shared')
-rw-r--r--packages/shared/types/bookmarks.ts12
1 files changed, 12 insertions, 0 deletions
diff --git a/packages/shared/types/bookmarks.ts b/packages/shared/types/bookmarks.ts
index 8ee523a6..a1e39280 100644
--- a/packages/shared/types/bookmarks.ts
+++ b/packages/shared/types/bookmarks.ts
@@ -195,3 +195,15 @@ export const zManipulatedTagSchema = z
message: "You must provide either a tagId or a tagName",
path: ["tagId", "tagName"],
});
+
+export const zSearchBookmarksCursor = z.discriminatedUnion("ver", [
+ z.object({
+ ver: z.literal(1),
+ offset: z.number(),
+ }),
+]);
+export const zSearchBookmarksRequestSchema = z.object({
+ text: z.string(),
+ limit: z.number().max(MAX_NUM_BOOKMARKS_PER_PAGE).optional(),
+ cursor: zSearchBookmarksCursor.nullish(),
+});