* Add setTracks instance method
setTracksToPlay always starts playing the first track, so embedders who want
to swap the source without autoplaying had to dispose() and create a new
instance. setTracks replaces the playlist, stops any current playback, and
loads the first track (like initialTracks) without playing it.
* Add changelog entry and cite version in docs
* Add onMediaError instance method
When a track fails to load or decode, Webamp logs the error and continues as
if the track had ended, so embedders could not tell an unplayable file from
the end of a track.
ElementSource now emits an "error" event with the MediaError code, which
Media re-emits and the media middleware dispatches as MEDIA_ERROR. The new
webamp.onMediaError(cb) subscribes to it. The existing behavior of treating
the error as the end of the track is unchanged.
* Fix lint and type errors in onMediaError test
* Add changelog entry and cite version in docs
- Bump package.json and Webamp.VERSION to 2.3.0
- Move changelog Unreleased items into 2.3.0 section
- Update "unreleased" references in docs to v2.3.0
- Switch all examples from renderWhenReady to renderInto
- Update multipleMilkdropPresets to use stable @^2 instead of @next
- Update lazy example to webamp@^2.3.0
- Update release skill with version bump and changelog steps
Co-Authored-By: Claude Opus 4.6 <[email protected]>
* Webamp optionally fully contained into a DOM element
* Fix spelling
* Reenable updating search index for uploads
* Replace contained flag on renderWhenReady with a new method. Add docs
---------
Co-authored-by: Jordan Eldredge <[email protected]>