UNPKG

@vulog/aima-core

Version:

15 lines (14 loc) 470 B
// src/index.ts import { z } from "zod"; var 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 } : {} }); }; export { createPaginableOptionsSchema };