개요
키워드 또는 URL로 쿠팡 상품을 검색하는 화면.
진입 조건
| 조건 | 설명 |
| 홈 검색 영역 터치 | 홈 → 검색 |
| 검색 아이콘 터치 | 어느 화면에서든 |
상단 검색 바
UI 구성
| 요소 | 위치 | 설명 |
| 뒤로가기 (<) | 좌측 | 이전 화면 복귀 |
| 검색 입력창 | 중앙 | 텍스트 필드 |
| 삭제 (x) | 입력창 내 우측 | 1글자 이상 입력 시 노출 |
| 검색 (돋보기) | 우측 | 검색 실행 버튼 |
| 마이크 | 우측 끝 | 음성 검색 |
입력창 상태
| 상태 | Placeholder | 우측 버튼 |
| 비어있음 | "상품을 검색해보세요" | 검색 + 마이크 |
| 입력 중 | - | 삭제(x) + 검색 + 마이크 |
동작
| 액션 | 결과 |
| 입력창 터치 | 키보드 자동 노출 + 포커스 |
| 텍스트 입력 | 자동완성 목록 표시 |
| URL 입력 | URL 검색 안내 표시 |
| 검색 (돋보기) 터치 | 검색 실행 → 검색 결과 이동 |
| 엔터 키 | 검색 실행 → 검색 결과 이동 |
| 삭제 (x) 터치 | 입력 텍스트 전체 삭제 |
| 뒤로가기 (<) | 이전 화면 복귀 |
| 배경 터치 | 키보드 내림 |
음성 검색
진입
마이크 버튼 터치
동작
| 순서 | 내용 |
| 1 | 마이크 권한 확인 (없으면 요청) |
| 2 | STT (Speech-to-Text) 실행 |
| 3 | 음성 → 텍스트 변환 |
| 4 | 입력창에 텍스트 자동 입력 |
| 5 | 자동완성 또는 검색 실행 |
권한 요청
| 상태 | 처리 |
| 권한 없음 | OS 권한 요청 팝업 |
| 권한 거부 | "마이크 권한이 필요합니다" 안내 |
접근성
| 항목 | 처리 |
| 버튼 | "음성으로 검색, 버튼" |
| 녹음 중 | "음성을 듣고 있습니다..." |
| 완료 | 변환된 텍스트 읽기 |
최근 검색어
노출 조건
- 검색 입력창이 비어있을 때
- 최근 검색어가 1개 이상 있을 때
UI 구성
| 요소 | 내용 |
| 섹션 타이틀 | "최근 검색어" |
| 검색어 목록 | 세로 리스트 |
| 개별 삭제 | 각 항목 우측 (x) 버튼 |
동작
| 액션 | 결과 |
| 검색어 터치 | 해당 검색어로 검색 실행 |
| (x) 터치 | 해당 검색어 삭제 |
데이터 저장
| 항목 | 내용 |
| 저장 위치 | 로컬 (UserDefaults) |
| 최대 개수 | 10개 |
| 저장 시점 | 검색 실행 시 |
| 중복 처리 | 기존 항목 삭제 후 최상단 추가 |
접근성
| 항목 | 처리 |
| 검색어 읽기 | "검색어명, 최근 검색어" |
| 삭제 버튼 | "검색어명 삭제, 버튼" |
자동완성
노출 조건
- 검색 입력창에 1글자 이상 입력 시
- URL 패턴이 아닌 경우
UI 구성
| 요소 | 내용 |
| 추천 목록 | 세로 리스트 (최대 5개) |
| 채우기 버튼 | 각 항목 우측 (↗) |
동작
| 액션 | 결과 |
| 추천어 텍스트 터치 | 해당 검색어로 검색 실행 |
| (↗) 터치 | 입력창에 텍스트 채우기 (검색 실행 X) |
API 호출
| 항목 | 내용 |
| 디바운싱 | 300ms |
| 엔드포인트 | GET /search/autocomplete?q=검색어 |
접근성
| 항목 | 처리 |
| 추천어 읽기 | "추천어명, 검색 추천" |
| 채우기 버튼 | "추천어명 입력창에 채우기, 버튼" |
URL 검색 (Link Search)
감지 조건
- 입력 텍스트에 URL 패턴 포함 시
- 패턴: http://, https://, www., coupang.com
UI 구성
| 요소 | 내용 |
| 안내 텍스트 | "링크로 상품 검색하기" |
| 화살표 | (↗) 우측 |
동작
| 액션 | 결과 |
| "링크로 상품 검색하기" 터치 | URL 크롤링 → 상품 상세 이동 |
| 검색 버튼 터치 | URL 크롤링 → 상품 상세 이동 |
에러 처리
| 상황 | 처리 |
| 잘못된 URL | "올바른 쿠팡 링크가 아닙니다" |
| 상품 없음 | "상품을 찾을 수 없습니다" |
| 네트워크 오류 | "연결 상태를 확인해주세요" |
접근성
| 항목 | 처리 |
| 안내 | "링크로 상품 검색하기, 버튼" |
| 로딩 중 | "링크에서 상품을 찾는 중입니다" |
접근성 종합
화면 진입 시
- 입력창에 자동 포커스
- 키보드 자동 노출
- "검색창, 텍스트 필드. 상품을 검색해보세요"
포커스 순서
뒤로가기 → 검색 입력창 → 삭제 → 검색 → 마이크 → 검색어 목록
키보드
- 엔터 키: 검색 실행
- 입력 시 실시간 자동완성 안내