메뉴 관리 기능 추가
This commit is contained in:
21
server/utils/admin-navigation-input.js
Normal file
21
server/utils/admin-navigation-input.js
Normal file
@@ -0,0 +1,21 @@
|
||||
import { z } from 'zod'
|
||||
|
||||
export const adminNavigationItemInputSchema = z.object({
|
||||
id: z.string().optional().nullable(),
|
||||
label: z.string().trim().min(1),
|
||||
url: z.string().trim().min(1).regex(/^(\/|https?:\/\/)/),
|
||||
location: z.enum(['primary', 'footer']),
|
||||
sortOrder: z.coerce.number().int().min(0).default(0),
|
||||
isVisible: z.boolean().default(true)
|
||||
})
|
||||
|
||||
export const adminNavigationInputSchema = z.object({
|
||||
items: z.array(adminNavigationItemInputSchema)
|
||||
})
|
||||
|
||||
/**
|
||||
* 관리자 네비게이션 입력값 정리
|
||||
* @param {unknown} body - 요청 본문
|
||||
* @returns {import('zod').SafeParseReturnType<unknown, Object>} 검증 결과
|
||||
*/
|
||||
export const parseAdminNavigationInput = (body) => adminNavigationInputSchema.safeParse(body)
|
||||
Reference in New Issue
Block a user