metis-desk/modules/companies/src/common/dto/request/company.request.dto.ts

23 lines
777 B
TypeScript

import { z } from "zod/v4";
import { CompanyFieldsSchema, ContactFieldsSchema, SiteFieldsSchema } from "../shared/company.dto";
export const CompanyRequestSchema = CompanyFieldsSchema;
export type CompanyRequestDTO = z.infer<typeof CompanyRequestSchema>;
export const ContactRequestSchema = ContactFieldsSchema;
export type ContactRequestDTO = z.infer<typeof ContactRequestSchema>;
export const SiteRequestSchema = SiteFieldsSchema.extend({
address: SiteFieldsSchema.shape.address.optional(),
phone: SiteFieldsSchema.shape.phone.optional(),
});
export type SiteRequestDTO = z.infer<typeof SiteRequestSchema>;
export const CompanyParamsSchema = z.strictObject({ companyId: z.uuid() });
export const ChildParamsSchema = CompanyParamsSchema.extend({ id: z.uuid() });