18 lines
427 B
TypeScript
18 lines
427 B
TypeScript
import { z } from "zod";
|
|
|
|
export const createTableSchema = z.object({
|
|
name: z.string().min(1),
|
|
columns: z
|
|
.array(
|
|
z.object({
|
|
name: z.string().min(1),
|
|
type: z.string().min(1),
|
|
nullable: z.boolean().default(true),
|
|
primaryKey: z.boolean().default(false),
|
|
defaultValue: z.string().nullable().optional()
|
|
})
|
|
)
|
|
.min(1),
|
|
groupSlug: z.string().min(1).optional()
|
|
});
|