Files
player/CHANGELOG.md
T

88 lines
3.8 KiB
Markdown

# Changelog
All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
and this project follows [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased]
## [3.2.0] - 2026-02-14
### Added
- Added animated image support to `VideoPlayer` with auto-detection for `.gif`, `.webp`, `.apng`, and `.avif` sources.
- Added `mediaType` prop to `VideoPlayer` (`'auto' | 'video' | 'animated-image'`) for explicit media mode control.
- Added new `AudioPlayer` component with custom controls, keyboard shortcuts, theme support, slots, and imperative ref handle.
- Added `mediaSource` utilities: `detectPlayerMediaType`, `isAnimatedImageSource`, and `isAudioSource`.
- Added automated tests for animated image mode and the new audio player.
### Changed
- Updated public exports to include `AudioPlayer`, new media detection utilities, and new type exports (`AudioPlayerProps`, `AudioPlayerHandle`, `VideoMediaType`, `VideoMediaTypeInput`).
- Updated README and DOCUMENTATION for animated image and audio playback usage.
- Bumped package version to `3.2.0`.
## [3.1.2] - 2026-02-13
### Changed
- Included `DOCUMENTATION.md` in published package files so it is available after install.
- Bumped package version to `3.1.2`.
## [3.1.0] - 2026-02-13
### Added
- Added optional subtitle style editor via `subtitleStyleEditor` prop (`boolean | SubtitleStyleEditorConfig`).
- Added in-player subtitle style controls under `Settings > Subtitles` with real-time preview (font size, font weight, text/background colors, background opacity).
- Added explicit `Save`, `Cancel`, and `Reset` actions for subtitle style editing.
- Added subtitle style persistence to `localStorage` (saved only on `Save`) with configurable storage key.
- Added new i18n keys for subtitle style editor UI in English and Turkish.
### Changed
- Updated player context settings to include runtime subtitle style state (`setSubtitleStyle`, `saveSubtitleStyle`, `revertSubtitleStyle`).
- Updated subtitle renderer to use context-managed effective subtitle style, enabling live preview updates from settings.
- Updated example app with a feature toggle for subtitle style editor and demo persistence key.
## [3.0.1] - 2026-02-13
### Changed
- Updated `baseline-browser-mapping` to the latest version to refresh Baseline data.
### Fixed
- Fixed Vite import-analysis failures for optional stream libraries by switching to runtime dynamic imports with `@vite-ignore` in `hlsLoader`, `rtmpLoader`, and `mpegtsLoader`.
- Preserved CDN fallback behavior when `hls.js`, `flv.js`, or `mpegts.js` are not installed locally.
- Ensured examples build flow remains stable with optional streaming dependencies.
## [3.0.0] - 2026-02-13
### Added
- Added `PlayerErrorBoundary` (`src/components/ErrorBoundary.tsx`) and exported it from the public API.
- Added release validation pipeline scripts: `typecheck`, `validate:publish`, and `prepublishOnly`.
- Added Prettier setup: `.prettierrc`, `.prettierignore`, `format`, and `format:check`.
- Added `CHANGELOG.md` for release notes tracking.
### Changed
- Namespaced player CSS classes and keyframes with `sp-` prefix for stronger style isolation.
- Enabled strict TypeScript mode for library build via `tsconfig.lib.json`.
- Tightened ESLint rules for production code (`no-explicit-any` and `ban-ts-comment` warnings).
- Centralized browser/vendor and streaming runtime typings in `src/types/vendor.d.ts`.
### Fixed
- Removed remaining production `any` usage in HLS, FLV/RTMP, and MPEG-TS setup/control utilities.
- Updated internal tests and selectors to reflect namespaced CSS classes.
- Patched vulnerable transitive dependencies via `npm audit fix` (`@isaacs/brace-expansion`, `js-yaml`, `lodash`).
## [2.0.0]
### Added
- Initial modern React video player release with HLS, FLV/RTMP, and MPEG-TS support.