31 lines
1.1 KiB
Markdown
31 lines
1.1 KiB
Markdown
# Search Command
|
|
|
|
## 목적
|
|
|
|
문서, API, 컴포넌트, 위젯을 키워드로 빠르게 찾고 바로 이동할 수 있는 통합 검색 모달입니다.
|
|
|
|
## 공통 설계 원칙
|
|
|
|
- 샘플(`samples`)을 제외한 컴포넌트와 위젯에는 API 호출이나 화면 전용 로직을 직접 넣지 않습니다.
|
|
- 컴포넌트와 위젯은 최대한 멍청하게 설계하고, 직관적인 props를 받아 직관적인 UI 동작만 수행합니다.
|
|
- 기능 처리와 비즈니스 로직은 `src/features` 또는 해당 화면 전용 패키지 레벨에서 담당합니다.
|
|
- 공통 컴포넌트와 위젯은 여러 곳에서 재사용되므로, 수정 시에는 기존 동작을 바꾸지 않는 범위에서만 보완합니다.
|
|
|
|
## 특징
|
|
|
|
- `AutoComplete` 기반 추천 드롭다운
|
|
- 모달 오픈 시 입력창 자동 포커스
|
|
- `Enter`, 항목 선택, 바깥 클릭, `Esc`로 닫기/이동
|
|
- 모바일 상단 제스처와 연결 가능
|
|
|
|
## 주요 props
|
|
|
|
- `open`
|
|
- `options`
|
|
- `onClose`
|
|
|
|
## 샘플/연결
|
|
|
|
- `src/components/search/SearchCommandModal.tsx`
|
|
- `src/layer/search/context/SearchLayerContext.tsx`
|