@klever-one/web-sdk
Version:
Web SDK for integrating real-time room management and streaming functionality into web applications
220 lines (137 loc) • 5.21 kB
Markdown
# 변경 로그
이 프로젝트의 모든 주요 변경 사항은 이 파일에 기록됩니다.
이 형식은 [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)를 기반으로 하며,
이 프로젝트는 [유의적 버전](https://semver.org/spec/v2.0.0.html)을 따릅니다.
## [미출시]
### Added
- 말하기 중지(stopSpeaking) API 추가 예정
- 행동 실행(executeAction) API 추가 예정
### Changed
- 기존 함수 이름 및 타입 개선 예정
- 번들 최적화
## [0.1.0-beta.15] - 2025-11-12
### Added
- 볼륨 제어 API (`setVolume()`) 추가
- 줌 제어 API (`sendZoomIn()`, `sendZoomOut()`) 추가
- 대화 초기화 API (`resetConversation()`) 추가
- API 문서 추가 (볼륨 제어, 줌 제어, 대화 초기화)
### Changed
- React 컴포넌트 UI 개선
- HTML 예제 UI 개선
### Fixed
- ConversationManager 대화 초기화 상태 버그 수정
- `resetState()`에서 `isStreaming` 플래그 초기화
- 스트리밍 타임아웃 정리 추가
- 대화 중 초기화 시 안전한 상태 전환 처리
- 진행 중인 녹음/TTS 자동 중지
- 순차적 상태 정리 (녹음 → 스트리밍 → 상태 초기화)
## [0.1.0-beta.14] - 2025-10-28
### Fixed
- RoomManager 에러 처리 개선
- HTTP 상태 코드 등 내부 구현 세부사항 외부 노출 방지
- 중복 에러 처리 제거
- React 컴포넌트 UI/UX 개선
- TailwindCSS v4 의존성 제거
- CSS injection 시스템 유지 및 `.klever-one-sdk` 스코핑 개선
## [0.1.0-beta.13] - 2025-10-27
### Changed
- TypeScript import 타입 분리 최적화
- 모든 타입 import에 `type` 키워드 명시 (inline-type-imports 패턴)
- ESLint `@typescript-eslint/consistent-type-imports` 규칙 추가
- 번들 크기 최적화 및 타입 시스템 개선
- 명시적 `(props: Props): JSX.Element` 제거
### Fixed
- ConnectionManager 메모리 누수 방지 개선
- 연결 종료 후 debounced 함수 호출 방지 로직 추가
- `userEventHandler.cancel()` 호출로 대기 중인 호출 취소
- 이벤트 미등록 상태에서 타이머 시작 방지
- SSR Safe
### Improved
- 데이터 채널 전송 로직 개선
- `emitToDataChannel()` 메서드로 데이터 채널 전송 중앙화
- 일관된 에러 핸들링 및 로깅 적용
- 코드 유지보수성 향상
## [0.1.0-beta.12] - 2025-10-16
### Fixed
- React 18 호환성 개선
- React JSX 런타임 외부 의존성 처리 (`react/jsx-runtime`, `react/jsx-dev-runtime`)
- React 중복 로드로 인한 `ReactCurrentOwner` 런타임 오류 수정
- Vite 빌드 설정에서 React 외부화(externalization) 최적화
### Changed
- React 컴포넌트 타입 정의 개선
- `React.FC<Props>` 패턴에서 명시적 `(props: Props): JSX.Element` 패턴으로 변경
- React 18 StrictMode 및 Concurrent Mode 호환성 향상
- SSR(Server-Side Rendering) 안전성 개선
## [0.1.0-beta.11] - 2025-10-15
### Added
- 세션 타임아웃 이벤트 시스템 (`ROOM_SESSION_TIMEOUT`)
- `onRoomSessionTimeout` 콜백 추가 (세션 타임아웃 시 자동 알림)
- 세션 타임아웃 발생 시 자동 연결 해제 기능
## [0.1.0-beta.10] - 2025-09-24
### Added
- 마이크 권한 오류 이벤트 시스템 (`RECORDER_ERROR`)
- 마이크 권한 거부 시 사용자 알림 기능
- RecorderService 오류 유형 분류 (permission/technical/system)
### Fixed
- 마이크 권한 거부 시 연결 상태가 disconnected로 변경되는 문제 수정
- RecorderService 이벤트 미방출 문제 수정 (ConnectionEventBus 연동)
- 권한 오류와 시스템 오류 분리 처리
## [0.1.0-beta.9] - 2025-09-22
### Changed
- 문서 및 README.md 수정
- 자리비움 5분뒤 스트리밍 연결 종료 변경
## [0.1.0-beta.8] - 2025-09-19
### Added
- WebRTC 오디오 트랙 고정
### Changed
- 문서 및 README.md 수정
- 예시 HTML viewport 수정
## [0.1.0-beta.7] - 2025-09-18
### Changed
- 문서 및 README.md 수정
## [0.1.0-beta.6] - 2025-09-17
### Added
- 타입 export 추가
### Changed
- 일부 라이브러리 devDependencies로 변경
- 대화 스트리밍 개선 (+백그라운드 동작)
## [0.1.0-beta.5] - 2025-09-16
### Changed
- 기존 함수 이름 개선
- 타입 개선, 데드 코드 제거
- 환영인사 기본 비활성화
## [0.1.0-beta.4] - 2025-09-15
### Added
- 아이콘 컴포넌트 추가 (`docs-site/src/hooks/`, `src/react-lib/components/icons/`)
- HTML 사용법 및 WebView 통합 문서 추가
- Vanilla JS 사용법 문서 추가
- Room Service 오류 처리 추가
### Changed
- 문서 사이트 메인 페이지 UI 개선 (278줄 → 간소화)
- 전체 문서 내용 개선 및 예시 코드 업데이트
- 패키지 의존성 최적화 (406줄 감소)
- 컴포넌트 import 경로 정리
- cn 유틸리티 함수 제거
- Vite 설정 개선
### Fixed
- React 컴포넌트 import 경로 수정
- 예시 파일 업데이트 (mobile, webview HTML)
## [0.1.0-beta.3] - 2025-09-12
### Changed
- `README.md` 파일 설명 개선
## [0.1.0-beta.2] - 2025-09-12
### Added
- Klever One Web SDK 최초 배포