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

23 lines
777 B
TypeScript
Raw Normal View History

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