Fix pagination lint errors

This commit is contained in:
Alex Gleason 2025-02-22 19:49:43 -06:00
parent f2e2072184
commit 70f0eb3b03
No known key found for this signature in database
GPG key ID: 7211D1F99744FBB7
2 changed files with 12 additions and 3 deletions

View file

@ -1,4 +1,4 @@
import { paginated, paginatedList } from '@ditto/mastoapi/pagination';
import { paginated } from '@ditto/mastoapi/pagination';
import { NostrEvent, NostrFilter, NSchema as n } from '@nostrify/nostrify';
import { z } from 'zod';

View file

@ -1,7 +1,16 @@
import { z } from 'zod';
export interface Pagination {
max_id?: string;
min_id?: string;
since?: number;
until?: number;
limit: number;
offset: number;
}
/** Schema to parse pagination query params. */
export const paginationSchema = z.object({
export const paginationSchema: z.ZodType<Pagination> = z.object({
max_id: z.string().transform((val) => {
if (!val.includes('-')) return val;
return val.split('-')[1];
@ -11,4 +20,4 @@ export const paginationSchema = z.object({
until: z.coerce.number().nonnegative().optional().catch(undefined),
limit: z.coerce.number().catch(20).transform((value) => Math.min(Math.max(value, 0), 40)),
offset: z.coerce.number().nonnegative().catch(0),
});
}) as z.ZodType<Pagination>;