first build commit
This commit is contained in:
21
src/lib/validations/transaction.ts
Normal file
21
src/lib/validations/transaction.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
export const transactionQuerySchema = z.object({
|
||||
accountId: z.string().optional(),
|
||||
dateFrom: z.string().optional(),
|
||||
dateTo: z.string().optional(),
|
||||
type: z.enum(['DEBIT', 'CREDIT']).optional(),
|
||||
search: z.string().optional(),
|
||||
budgetId: z.string().optional(),
|
||||
page: z.coerce.number().min(1).default(1),
|
||||
limit: z.coerce.number().min(1).max(100).default(50),
|
||||
})
|
||||
|
||||
export const updateTransactionSchema = z.object({
|
||||
notes: z.string().nullable().optional(),
|
||||
category: z.string().max(100).nullable().optional(),
|
||||
budgetId: z.string().nullable().optional(),
|
||||
})
|
||||
|
||||
export type TransactionQuery = z.infer<typeof transactionQuerySchema>
|
||||
export type UpdateTransactionInput = z.infer<typeof updateTransactionSchema>
|
||||
Reference in New Issue
Block a user