first commit

This commit is contained in:
2026-01-17 14:17:42 +05:30
commit 0f194eb9e7
328 changed files with 73544 additions and 0 deletions

View File

@@ -0,0 +1,23 @@
import { z } from 'zod'
export const productSchema = z.object({
name: z.string().min(1, 'Product name is required'),
description: z.string().optional(),
price: z.number().positive('Price must be positive'),
discount: z.number().min(0).max(100).default(0),
images: z.array(z.string().url()).default([]),
stock: z.number().int().min(0).default(0),
categoryId: z.string().min(1, 'Category is required'),
sku: z.string().min(1, 'SKU is required'),
slug: z.string().min(1, 'Slug is required')
})
export const categorySchema = z.object({
name: z.string().min(1, 'Category name is required'),
description: z.string().optional(),
image: z.string().url().optional(),
isActive: z.boolean().default(true)
})
export type ProductInput = z.infer<typeof productSchema>
export type CategoryInput = z.infer<typeof categorySchema>