@tmlmobilidade/types
Version:
19 lines (18 loc) • 651 B
JavaScript
/* * */
import { DocumentSchema } from './_common/document.js';
import { z } from 'zod';
/* * */
export const ZoneSchema = DocumentSchema.extend({
border_color: z.string(),
border_opacity: z.number(),
border_width: z.number(),
code: z.string(),
created_at: z.coerce.date(),
fill_color: z.string(),
fill_opacity: z.number(),
geojson: z.record(z.any()), // TODO: Validate GeoJSON
is_locked: z.boolean(),
name: z.string(),
});
export const CreateZoneSchema = ZoneSchema.omit({ _id: true, created_at: true, updated_at: true });
export const UpdateZoneSchema = CreateZoneSchema.omit({ created_by: true }).partial();