23 lines
777 B
TypeScript
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() });
|