@battle-racing/br-common-lib
Version:
Common library for all Battle Racing Repositorios
19 lines (18 loc) • 784 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.responseSchema = exports.successResponseSchema = exports.errorResponseSchema = void 0;
const zod_1 = require("zod");
exports.errorResponseSchema = zod_1.z.object({
status: zod_1.z.literal('error'),
code: zod_1.z.number(),
errorType: zod_1.z.string(),
message: zod_1.z.string(),
});
const successResponseSchema = (itemSchema) => zod_1.z.object({
status: zod_1.z.literal('success'),
code: zod_1.z.literal(200),
data: itemSchema.optional(),
});
exports.successResponseSchema = successResponseSchema;
const responseSchema = (itemSchema) => zod_1.z.union([(0, exports.successResponseSchema)(itemSchema), exports.errorResponseSchema]);
exports.responseSchema = responseSchema;