# SInput

> 자동 생성 문서 — `npm run docs:gen`. 소스: 각 컴포넌트의 Props/Handle 인터페이스 + import 의존성.

### SInput

#### Props

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `value?` | `string \| number` | — | 값 (제어) |
| `type?` | `'text' \| 'password' \| 'email' \| 'number' \| 'tel' \| 'search' \| 'url'` | `'text'` | 입력 타입 |
| `size?` | `SFieldSize` | `'sm'` | 크기 |
| `icon?` | `SIconName` | — | 좌측 아이콘명 |
| `iconColor?` | `SColor` | — | 좌측 아이콘 색상 |
| `prefix?` | `ReactNode` | — | 입력 앞(좌측) 커스텀 노드 — 원본 slot="prefix" |
| `suffix?` | `ReactNode` | — | 입력 뒤(우측) 커스텀 노드 — 원본 slot="suffix" |
| `clearable?` | `boolean` | `false` | 지우기 버튼 |
| `rules?` | `Rule[]` | — | 유효성 규칙 — blur 시 자동 검증 |
| `status?` | `SFieldStatus` | — | 필드 상태 ('default' | 'pass' | 'error') |
| `focused?` | `boolean` | — | 포커스 상태 (제어/반영) |
| `hovered?` | `boolean` | — | 호버 상태 (제어/반영) |
| `inputClass?` | `string` | — | 내부 input 요소 className |
| `inputStyle?` | `CSSProperties` | — | 내부 input 요소 style |
| `label?` | `string` | — |  |
| `labelWidth?` | `number \| string` | — |  |
| `labelTooltip?` | `string` | — | 레이블 툴팁 텍스트 |
| `labelTooltipProps?` | `Partial<STooltipProps>` | — | 레이블 툴팁 상세 옵션 |
| `hint?` | `string` | — |  |
| `error?` | `boolean` | — |  |
| `errorMessage?` | `string` | — |  |
| `addonLabel?` | `string` | — |  |
| `addonAlign?` | `SFieldAddonAlign` | — | 어드온 정렬 |
| `width?` | `number \| string` | — |  |
| `disabled?` | `boolean` | `false` |  |
| `readOnly?` | `boolean` | `false` |  |
| `className?` | `string` | — |  |
| `style?` | `CSSProperties` | — |  |

#### Events

| Event | Type | Description |
|-------|------|-------------|
| `onValueChange` | `(value: string) => void` | 값 변경 (sdUpdate) — 문자열 전달 |
| `onChange` | `InputHTMLAttributes<HTMLInputElement>['onChange']` | 네이티브 onChange (form-agnostic 연동용, RHF 등) |

## Dependencies

### Used by

 - [SKeyValueTable](../SKeyValueTable)

### Depends on

- [SField](../SField)
- [SGhostButton](../SGhostButton)

### Graph

```mermaid
graph TD;
  SInput --> SField
  SInput --> SGhostButton
  SKeyValueTable --> SInput
  style SInput fill:#f9f,stroke:#333,stroke-width:4px
```
