UNPKG

@battle-racing/br-common-lib

Version:

Common library for all Battle Racing Repositorios

35 lines (34 loc) 1.51 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.paginatedRacingTeamSummarySchema = exports.paginatedRacingTeamSchema = exports.racingTeamSummarySchema = exports.filterRacingTeamSchema = exports.updateRacingTeamSchema = exports.createRacingTeamSchema = exports.racingTeamSchema = void 0; const zod_1 = require("zod"); const pagination_1 = require("../pagination"); exports.racingTeamSchema = zod_1.z.object({ id: zod_1.z.string(), name: zod_1.z.string().min(3).max(50), imageUrl: zod_1.z.url().optional(), adminUserId: zod_1.z.string(), createdAt: zod_1.z.date(), updatedAt: zod_1.z.date(), }); exports.createRacingTeamSchema = exports.racingTeamSchema.omit({ id: true, createdAt: true, updatedAt: true, adminUserId: true, }); exports.updateRacingTeamSchema = exports.racingTeamSchema.partial(); exports.filterRacingTeamSchema = zod_1.z.object({ name: zod_1.z.string().optional(), adminUserId: zod_1.z.string().optional(), page: zod_1.z.coerce.number().min(1).default(1), limit: zod_1.z.coerce.number().min(1).max(100).default(10), cursor: zod_1.z.string().optional(), }); exports.racingTeamSummarySchema = exports.racingTeamSchema.pick({ id: true, name: true, imageUrl: true, }); exports.paginatedRacingTeamSchema = (0, pagination_1.paginatedResponseSchema)(exports.racingTeamSchema); exports.paginatedRacingTeamSummarySchema = (0, pagination_1.paginatedResponseSchema)(exports.racingTeamSummarySchema);