@syngrisi/syngrisi
Version:
Syngrisi - Visual Testing Tool
19 lines (16 loc) • 713 B
text/typescript
import { z } from 'zod';
export const createCheckParamsSchema = z.object({
branch: z.string().min(1),
appName: z.string().min(1),
suitename: z.string().min(1),
testid: z.string().regex(/^[a-f0-9]{24}$/), // Regex for 24 hex characters
name: z.string().min(1),
viewport: z.string().regex(/^\d+x\d+$/), // "WidthxHeight" format
browserName: z.string().min(1),
browserVersion: z.string().min(1),
browserFullVersion: z.string(),
os: z.string().min(1),
hashcode: z.string().min(64), // SHA256 (64 chars) or SHA512 (128 chars)
toleranceThreshold: z.coerce.number().min(0).max(100).optional(),
});
export type createCheckParam = z.infer<typeof createCheckParamsSchema>;