UNPKG

@vulog/aima-core

Version:

Shared types and Zod schema helpers for pagination and patch actions.

14 lines (13 loc) 478 B
import { z } from "zod"; //#region src/index.ts const createPaginableOptionsSchema = (optionsSchema, sortSchema = z.string().optional()) => { return z.object({ page: z.number().int().nonnegative().default(0), pageSize: z.number().int().positive().lte(1e3).default(100), sort: sortSchema, sortDirection: z.enum(["ASC", "DESC"]).optional().default("ASC"), ...optionsSchema ? { filters: optionsSchema } : {} }); }; //#endregion export { createPaginableOptionsSchema };