# SForm

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

### SForm

#### Props

| Prop | Type | Default | Description |
|------|------|---------|-------------|
| `formClass?` | `string` | — | form 엘리먼트에 추가할 클래스 (sd-form formClass 대응) |
| `children?` | `ReactNode` | — |  |
| `className?` | `string` | — |  |
| `style?` | `CSSProperties` | — |  |

#### Events

| Event | Type | Description |
|-------|------|-------------|
| `onSubmit` | `() => void` | 모든 필드 검증 통과 후 발생 (sd-form sdSubmit 대응) |
| `onValidationError` | `(error: SFormValidationError) => void` | 검증 실패 시 실패한 필드 name 목록 전달 (sd-form sdValidationError 대응) |

#### Methods (ref)

| Method | Type | Description |
|--------|------|-------------|
| `validate` | `() => boolean` | 등록된 모든 필드를 검증하고 통과 여부를 반환 |
| `resetValidation` | `() => void` | 모든 필드의 검증 상태만 초기화 (값은 소비자 소유) |
| `reset` | `() => void` | resetValidation 별칭 — sd-form sdReset 대응. 값 리셋은 소비자(value/onChange) 책임 |
| `focusFirstInvalid` | `() => void` | 첫 번째 실패 필드로 포커스 이동 |

