From 9ceed79cf32c896f8a998399bf1b296506b2cd4a Mon Sep 17 00:00:00 2001 From: dujinkim Date: Tue, 8 Apr 2025 03:08:19 +0000 Subject: 로그인 및 미들웨어 처리. 구조 변경 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/equip-class/validation.ts | 46 ++++++++++++++++++++++++------------------- 1 file changed, 26 insertions(+), 20 deletions(-) (limited to 'lib/equip-class/validation.ts') diff --git a/lib/equip-class/validation.ts b/lib/equip-class/validation.ts index 48698ac4..3f62fb0f 100644 --- a/lib/equip-class/validation.ts +++ b/lib/equip-class/validation.ts @@ -8,27 +8,33 @@ import { import * as z from "zod" import { getFiltersStateParser, getSortingStateParser } from "@/lib/parsers" -import { TagClasses } from "@/db/schema/vendorData"; +import { tagClasses } from "@/db/schema/vendorData"; -export const searchParamsCache = createSearchParamsCache({ - flags: parseAsArrayOf(z.enum(["advancedTable", "floatingBar"])).withDefault( - [] - ), - page: parseAsInteger.withDefault(1), - perPage: parseAsInteger.withDefault(10), - sort: getSortingStateParser().withDefault([ - { id: "createdAt", desc: true }, - ]), - code: parseAsString.withDefault(""), - label: parseAsString.withDefault(""), - - // advanced filter - filters: getFiltersStateParser().withDefault([]), - joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), - search: parseAsString.withDefault(""), - -}) +export type ExtendedTagClasses = typeof tagClasses.$inferSelect & { + projectCode: string; + projectName: string; +}; +// 검색 파라미터 캐시 정의 +export const searchParamsCache = createSearchParamsCache({ + flags: parseAsArrayOf(z.enum(["advancedTable", "floatingBar"])).withDefault([]), + page: parseAsInteger.withDefault(1), + perPage: parseAsInteger.withDefault(10), + + // 확장된 타입으로 정렬 파서 사용 + sort: getSortingStateParser().withDefault([ + { id: "createdAt", desc: true }, + ]), + // 기존 필터 옵션들 + code: parseAsString.withDefault(""), + label: parseAsString.withDefault(""), + + // 고급 필터 + filters: getFiltersStateParser().withDefault([]), + joinOperator: parseAsStringEnum(["and", "or"]).withDefault("and"), + search: parseAsString.withDefault(""), +}); -export type GetTagClassesSchema = Awaited> +// 타입 내보내기 +export type GetTagClassesSchema = Awaited>; -- cgit v1.2.3