Files
archived-linsa/web/components/routes/link/form/schema.ts
marshennikovaolga 9321eb59ee link title editing
2024-08-11 01:27:59 +03:00

21 lines
563 B
TypeScript

import { z } from "zod"
import { isUrl } from "@/lib/utils"
export const createLinkSchema = z.object({
title: z.string().min(1, { message: "Title can't be empty" }),
originalUrl: z.string().refine(isUrl, { message: "Only links are allowed" }),
description: z.string().optional(),
topic: z.string().optional(),
isLink: z.boolean().default(true),
meta: z
.object({
url: z.string(),
title: z.string(),
favicon: z.string(),
description: z.string().optional().nullable()
})
.optional()
.nullable(),
completed: z.boolean().default(false)
})