Track and save on groceries
at main 23 lines 561 B view raw
1import z from "zod/v4"; 2import { pageOptions, paginated } from "./pagination.js"; 3 4export const Brand = z 5 .object({ 6 id: z.coerce.number().int().min(0), 7 name: z.string(), 8 }) 9 .meta({ 10 title: "Brand", 11 description: "Brand schema", 12 examples: [{ id: 1, name: "Nopro" }], 13 }); 14export const CreateBrand = Brand.omit({ 15 id: true, 16}).meta({ 17 title: "CreateBrand", 18 description: "Create brand schema", 19 examples: [{ name: "Nopro" }], 20}); 21 22export const BrandsQuery = pageOptions(Brand, Brand.shape.id); 23export const Brands = paginated(Brand);