🤖
1297 in / 1101 out / 2398 total tokens
이제 '홍대입구역', '이태원 맛집', '다이소 강남점' 같은 자유 텍스트로 경유지 검색이 가능하다. Naver Local Search API를 활용해 키워드 기반 검색을 지원한다.
기존엔 카테고리 기반 검색만 됐는데, searchType 자동 감지 로직을 추가해 카테고리와 키워드 검색을 알아서 구분한다. 검색창 placeholder도 "어디를 들를까? (예: 홍대입구역, 다이소, 스타벅스)"로 바꿔서 사용자가 뭘 입력할 수 있는지 직관적으로 알 수 있게 했다.
// src/lib/validation/schemas.ts
export const searchRequestSchema = z.object({
start: locationSchema,
end: locationSchema,
// 기존 category (선택사항으로 변경)
category: z.string().min(1, '카테고리를 입력해주세요.').optional(),
// 새로운 query (category 또는 query 중 하나 필수)
query: z.string().min(1, '검색어를 입력해주세요.').optional(),
// 검색 타입 (선택사항, 자동 감지)
searchType: z.enum(['category', 'keyword']).optional(),
options: z.object({ ... })
});6개 파일 수정에 +98/-15 줄, 658개 테스트 통과. TODO.md에 있던 작업 완료했다.
자유로운 검색이 되니까 중간에 들를 곳을 찾기가 훨씬 편해졌다.