diff options
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/shared/types/bookmarks.ts | 10 | ||||
| -rw-r--r-- | packages/trpc/routers/bookmarks.ts | 28 |
2 files changed, 16 insertions, 22 deletions
diff --git a/packages/shared/types/bookmarks.ts b/packages/shared/types/bookmarks.ts index e5389fe6..86bbbc1a 100644 --- a/packages/shared/types/bookmarks.ts +++ b/packages/shared/types/bookmarks.ts @@ -129,17 +129,17 @@ export const zGetBookmarksRequestSchema = z.object({ tagId: z.string().optional(), listId: z.string().optional(), limit: z.number().max(MAX_NUM_BOOKMARKS_PER_PAGE).optional(), - cursor: zCursorV2.or(z.date()).nullish(), - // TODO: Remove this field once all clients are updated to use the new cursor structure. - // This is done for backward comptability. If a client doesn't send this field, we'll assume it's an old client - // and repsond with the old cursor structure. Once all clients are updated, we can remove this field and drop the old cursor structure. + cursor: zCursorV2.nullish(), + // TODO: This was done for backward comptability. At this point, all clients should be settings this to true. + // The value is currently not being used, but keeping it so that client can still set it to true for older + // servers. useCursorV2: z.boolean().optional(), }); export type ZGetBookmarksRequest = z.infer<typeof zGetBookmarksRequestSchema>; export const zGetBookmarksResponseSchema = z.object({ bookmarks: z.array(zBookmarkSchema), - nextCursor: zCursorV2.or(z.date()).nullable(), + nextCursor: zCursorV2.nullable(), }); export type ZGetBookmarksResponse = z.infer<typeof zGetBookmarksResponseSchema>; diff --git a/packages/trpc/routers/bookmarks.ts b/packages/trpc/routers/bookmarks.ts index 44ec6d7a..895e072a 100644 --- a/packages/trpc/routers/bookmarks.ts +++ b/packages/trpc/routers/bookmarks.ts @@ -564,15 +564,13 @@ export const bookmarksAppRouter = router({ ) : undefined, input.cursor - ? input.cursor instanceof Date - ? lte(bookmarks.createdAt, input.cursor) - : or( - lt(bookmarks.createdAt, input.cursor.createdAt), - and( - eq(bookmarks.createdAt, input.cursor.createdAt), - lte(bookmarks.id, input.cursor.id), - ), - ) + ? or( + lt(bookmarks.createdAt, input.cursor.createdAt), + and( + eq(bookmarks.createdAt, input.cursor.createdAt), + lte(bookmarks.id, input.cursor.id), + ), + ) : undefined, ), ) @@ -677,14 +675,10 @@ export const bookmarksAppRouter = router({ let nextCursor = null; if (bookmarksArr.length > input.limit) { const nextItem = bookmarksArr.pop()!; - if (input.useCursorV2) { - nextCursor = { - id: nextItem.id, - createdAt: nextItem.createdAt, - }; - } else { - nextCursor = nextItem.createdAt; - } + nextCursor = { + id: nextItem.id, + createdAt: nextItem.createdAt, + }; } return { bookmarks: bookmarksArr, nextCursor }; |
