All notable changes to this project will be documented in this file. Dates are displayed in UTC.
Generated by auto-changelog
.
- testing this one
3c304bb
11 April 2024
11 April 2024
11 April 2024
- feat: add Mux + hls.js support back in
#1769
- fix: dynamic Mux import
#1758
- docs: fix demo URL
#1752
- docs: readme updates, next-video callout
#1751
- chore(cd): remove --changelog b/c auto-changelog
#1750
- feat: add Mux player
#1748
- chore(github-pages): add demo preview
#1747
- chore: remove unneeded config files
#1744
- Add aria-label to Preview component
#1705
- Add Deno-specific browser check
#1632
- docs: fix badges
#1735
- fix: cjs interop require default pita
#1722
- fix: repo url
#1709
- fix: pkg repository.url
#1708
- chore: add CD workflow
#1706
- chore: use Node matrix with 16.x, 18.x, 20.x
#1688
- docs: update demo App.js link
#1689
- fix: modernize build using esbuild
#1684
- Fix #1604 - FilePlayer does not work if I passed an array of urls
#1612
- fix:
src
sttribute become "undefinded" ifurl
is an array#1648
- Adding keepPlaying to other player types
#1639
- CI
#1654
- Swap out broken youtube URL
#1659
- Add keepPlaying to seekTo
#1620
- Added forceDisableHls option for FilePlayer
#1625
- added onPlaybackQualityChange prop
#1636
- Update the list of supported YouTube domains
#1599
- Added Vimeo Muteability
#1588
- Add forceSafariHLS option for FilePlayer
#1560
- fix: standalone has side effects
#1586
- Update light prop usage re: new feature in PR#1405
#1510
- Extending valid DailyMotion URL regex Fix #1430
#1516
- Add
"sideEffects": false
topackage.json
#1524
- responsive CSS fix
#1533
- add unbundled es6 build with jsx file extensions
#1537
- Replace Vimeo default preview thumbnail
#1553
- fix typo
#1558
- fix: empty src attr in StrictMode
#1538
- Add event playbackratechange on vimeo player
#1502
- feat: allow auto play on mixcloud player
#1467
- Fix onProgress not firing in Strict Mode
#1465
- Generate a file
dist/ReactPlayer.standalone-module.js
ES6 module#1425
- ability to pass a component in light prop
#1405
- (fix): clear video src to prevent old video from continue to load
#1360
- apply interface onProgressProps at base.d.ts
#1342
- don't stack event listeners
#1186
- Add flvjs error handling, pass it to props onError method.
#1426
- Allow parameters after entry_id on kaltura
#1432
- adds support for youtube short urls
#1438
- Added .m4b extension to AUDIO_EXTENSIONS
#1415
- Adjust listener for kaltura
#1226
- update default HLS version to latest release
#1402
- Make pre-publish.js ES5 compatible
#1393
- fix: Add exception handling when seekTo is called with amount value 0
#1372
- Add onSeek support to Twitch player
#1354
- Add attributes in FacebookConfig type
#1351
- handle setPlaybackRate error
#1223
- Add onPlaybackRateChange callback prop
#1224
- Ability to pass null to previewTabIndex
#1256
- Add media attribute to source tag in file player
#1269
- fix: don't defer MediaStream
#1230
- add title attribute to vimeo iframe
#1229
- Add oEmbedUrl as changeable prop
#1333
- update video extenstions to accept media fragments for time
#1213
- Add type for wrapper in base.d.ts
#1234
- Make facebook config type properties optional
#1314
- Adds previewTabIndex property to light mode
#1169
- Update YouTube URL pattern (#1170)
#1171
- Support Kaltura's HTML5 player
#1082
- fix: ensure lazy typedefs mirror defaults
#1153
- fix: nullify srcObject instead of calling removeAttribute
#1145
- updated basic types with fallback
#1144
- fix: remove srcObject attribute if next uri is not a MediaStream
#1121
- added soundcloud playlist preview button for demo page so developers can know it also supports sc playlists
#1113
- Add missing FLV props to TS defs
#1122
- FEAT: customize fallback through props for lazy loading
#1133
- fix: add playIcon prop to TS declaration
#1084
- Parse start time from twitch url
#1046
- Add explicit comment to set muted to true for autoplay
#1036
- Updates the default version of dash.js, hls.js
#1056
- Fix canPlayFile to support blob uri, fix #1023
#1041
- Update CONTRIBUTING.md
#1017
- Add twitch config interface
#996
- Fixes youtube player playsinline variable type
#989
- Add descriptive text to Controls section
#982
- added missing type for 'getSecondsLoaded'
#977
- Make force disabling PIP dependent on prop
#964
- vimeo: listen for bufferring events and handle with matching callbacks
#975
- Hide wistia controls with controls prop
#937
- dash deprecated method fix for different versions.
#933
- wistia config types updated
#931
- Add Wistia player id to support multiple players
#905
- Match YouTube User Uploads
#877
- Destroy previous vidyard player before creating new one
#894
- Adds the missing default data for the selected player
#864
- fix for soundcloud direct file link
#803
- Update documented default hls.js version to 0.13.1
#806
- Move @ava/babel to devDependencies
#794
- Bump handlebars from 4.2.0 to 4.5.3
#771
- Add showPreview() method to ReactPlayer typings
#785
- Support to set custom facebook version
#745
- fixes #733
#736
- Add PIP support for Safari
#716
- Properly delete SDK requests
#718
- Delete SDK requests array after loading error
#711
- Add typedef support for MediaStream url source
#674
- Do not use vimeo API to play vimeo hosted video files.
#597
- Catches error on Vimeo play()
#645
- Update Meteor section in readme
#647
- [d.ts] Fix typing of arguments of onError handler
#655
- Fix twitch permanent loading state when stream is offline
#657
- Fix an issue with setting state in the Preview component after being unmounted.
#658
- Soundcloud - fix autoplay delegation
#614
- Implemented onBufferEnd cb prop for FilePlayer, YouTube and Facebook
#615
- Add on error callback to wistia player
#617
- align typings for seekTo method with code
#619
- Really really small typo in README.md
#606
- Allows wrapper proptype to be a ForwardRef component
#556
- playsinline for Android wechat
#544
- Fix broken URL for standalone script
#546
- Accept youtube.com/playlist?list= URLs
#541
- Support Chrome Picture In Picture (PIP) mode
#504
- Typings - label in TrackProps
#489
- fix: fix onProgress callback not firing during iOS live streams
#497
- Update vimeo preload URL
#509
- add absent methods signature
#507
- Fix: signal multiple sources change to the browser
#482
- Check null before accessing FilePlayer properties
#465
- Adds hlsOptions to FileConfig def
#483
- Updated hls.js documentation link in README.md
#440
- YouTube videos not forwarding
end
param#420
- Bump HLS.js
#403
- Fix FilePlayer getSecondsLoaded
#380
- Add support for custom players
#364
- Include Mixcloud in README
#342
- Fixes the onPause event propogation
#336
- Support custom wrappers
#334
- Match YouTube URL with extra parameters
#332
- Do not load hls.js on iOS
#293
- Vimeo On Demand URL Support
#289
- Loop when player is running
#257
- properly destroy HLS.JS and / or DASH.JS instances
#254
- tweak Vimeo duration logic
#251
- Update typings for onProgress callback
#246
- Fix parameter name for Vimeo player configuration
#243
- Updated TypeScript typings
#235
- update of DOM listeners in FilePlayer when audio/video tags was switched
#234
- Soundcloud: use Widget API instead of HTTP API
#199
- Fixed broken TypeScript type definitions
#230
- More accurate played fraction for Wistia
#201
- Fix initial loading bug for Private Vimeo videos
#187
- Apply all non-valid props to the wrapper element
#183
- Add assertion for canPlay with https://vimeo
#141
- Use npm 4.x on travis
#143
- Use ubuntu 14.04 for travis
#144
- fixed width & height of video when it is in fullscreen mode
#151
- update webpack to 2.2.1
#156
- Wistia support
#133
- PlaybackRate change feature
#123
- Fix onProgress non-reporting if playing prop is not set.
#127
- Add additional audio file extensions to regex
#131
- Use node 6 on travis
#130
- Pass DOM node to YouTube Player instead of ID
#111
- update all dependencies
#107
- Add
hidden
prop to ReactPlayer#102
- Add support for non-es5 compatible browsers
#87
- Update supported file type regex
#68
- Update README.md links
#66
- Pass on error event
#48
- Add FilePlayer support for urls with query string
#45
- Use react-transform development setup
#25
- Fix YouTube onReady bugs
#21
- Prime players to enable autoplay when out of focus
#13
- Configuration
#4
- fix: dynamic Mux import (#1758)
#1755
- Fix #1604 - FilePlayer does not work if I passed an array of urls (#1612)
#1604
- Support Wisita URLs with query params
#1591
- Support vimeo manage links
#1593
- Update DASH example
#1589
- Support live youtube URLs
#1580
- Remove module property from package.json
#1574
- Extending valid DailyMotion URL regex Fix #1430 (#1516)
#1430
- Do not pass wrapper ref to custom wrappers
#1476
- Prevent double load bug in strict mode
#1439
#1450
- Use allow rather than allowFullScreen
#1444
- Add disableDeferredLoading prop
#1396
- Support new vimeo external link format
#1399
- Tweak Vidyard pattern
#1373
- Adjust listener for kaltura (#1226)
#1202
- Fix suspense check for nextjs
#1165
- Update wistia url pattern
#1149
- fix: ensure lazy typedefs mirror defaults (#1153)
#1146
- Add onClickPreview
#1131
- Added types for single players
#953
- Add custom control support to Wistia
#1125
- Fix facebook muted logic
#1127
- Improve youtube playlist regex
#1088
- Use hls.js manifest parsed event for onReady
#1066
- Add config.facebook.attributes
#1071
- Prevent errors when updating without a player
#1052
#1074
- Add support for youtube live channel urls
#1033
- Fix canPlayFile to support blob uri, fix #1023 (#1041)
#1023
- Add console warning when using youtube embedOptions.events
#1016
- Add support for fb.watch URLs
#1061
- Fix iPad Pro detection
#1005
#1004
- Fix single player import logic
#993
- Call onLoaded when file streaming SDKs have loaded
#976
- Add support for FLV files
#958
- Fix single player imports on IE11
#954
- Add Cloudflare Stream support to file player
#944
- Fix sample files
#948
- Copy typings into lazy dir before publish
#918
- Add basic caching of preview thumbnails
#927
- Fix SDK fetching when
exports
exists in global scope#921
- Move lazy loading players to react-player/lazy
#912
#907
#865
#910
#902
- Support array of youtube urls
#906
- Correct typings for onReady
#884
- Add webpackChunkName to dynamic imports
#899
- Improve light mode a11y
#878
- Prevent Soundcloud onPause right before onEnded
#879
- Prevent unwanted Vidyard autoplay
#887
- Add onUnstarted youtube config option
#888
- Reset hls and dash before loading new url
#892
#874
- Support youtube-nocookie.com
#896
#272
#557
- Fix youtube fragment looping
#897
- Prevent dynamic import transforms to fix lazy loading
#886
- Only try and disablePIP on unmount if player is ready
#849
- Prevent Suspense being rendering during SSR
#738
#865
- Match twitch channel pattern case-insensitive
#860
- Rename refs to references
#868
#866
#867
#861
- Use file player for soundcloud hosted audio files
#811
- Fix hls sdk url
#826
- Use proxy methods in wistia player
#805
- Move hls destroy from stop to unmount
#817
- Update vimeo readme links
#819
- Update facebook regex
#793
- Add playerId override to facebook and twitch players
#788
- Relax facebook regex
#778
- Update hls.js CDN and version
#758
#768
#779
- Ignore React nodes in isEqual
#740
- Pass dash.js errors through to onError callback
#732
- Use https SDK urls by default
#728
- Add playIcon prop
#730
- fixes #733 (#736)
#733
- Add readme note about SDK overrides
#605
- Use proxy methods for FilePlayer listeners
#616
- Add pip support info to readme
#694
- Add controls support to Twitch and Vimeo
#687
- Remove default black backgrounds
#673
- Fix demo file paths
#697
- Migrate to componentDidUpdate
#651
#696
#692
#693
- Overhaul development config
#695
- Fix preload display logic
#675
- Add showPreview instance method
#679
- Hide preview thumbnail when light changes to false
#680
- Add playbackRate support to Vimeo
#681
- Fix Vimeo fast switch bug
#683
- Prevent double inline styles being applied
#609
- Fix onProgress for infinite duration streams
#503
- Fix light mode poster not updating
#646
- Fix youtube looping
#530
#639
#662
- Fix multiple onError params not being passed through
#627
- Add playsinline support to vimeo
#574
- Use normal wrapper for light mode
#584
- Pass controls prop through to preload players
#587
- Add Soundcloud preload to props files
#588
- Add type parameter to seekTo method
#591
- Set isLoading to false after error
#595
- Unbind wistia player events correctly
#594
- Support player setLoop methods
#560
- Upgrade screenfull
#560
- Use https for noembed fetching
#558
#448
- Add youtube embedOptions config option
#557
#272
- Add light prop
#448
- Parse youtube playlist from URL list param
#318
- Loop youtube playlists correctly
#530
- Add hlsVersion and dashVersion file config
#513
- Export single player exports to main file
#421
- Refresh vimeo duration on play
#514
- Use PLAYING event instead of PLAY for Twitch player
#498
- Do not call onEnded when looping
#496
- Prevent singlePlayer from returning null when forcing via config
#500
- Prevent YouTube from playing after seekTo when paused
#437
- Fix facebook iframe visibility bug
#455
- Update dailymotion regex
#438
- Set FilePlayer autoPlay correctly
#405
- Tidy up start and end timestamp logic
#412
- Improve MediaStream guards
#415
- Pass instance through to onReady callback
#407
- Add support for MediaStream objects
#398
- Prevent errors when switching URLs whilst loading
#377
- Prevent loading SDKs multiple times
#391
- Add proper mute support to fix autoplay
#395
#389
- Add support for dropbox files
#379
- Add instance methods to single player imports
#376
- Render video element when poster is set
#369
- Add https to Twitch SDK URL
#367
- Fix file player load sequence on iOS
#340
- Do not use Vimeo player for vimeo.com file paths
#358
- Add support for twitch player options
#343
- Add single player wrapper div
#346
- Loosen up the vimeo URL pattern
#349
#348
- Pass through HLS errors to onError
#354
#355
- Set volume to null by default
#357
- Add progressInterval logic back in to onProgress
#339
- Add Mixcloud player
#335
- Add support for importing single players
#311
- Update mp3 example
#330
- Update stored config when props change
#329
- Pass through all source props when using array of objects
#333
- Add config.file.hlsOptions
#325
#319
- Send any soundcloud URL to the widget
#322
#324
- Change progressFrequency to progressInterval
#317
- Guard against navigator not being available
#315
- Better prop comparison for shouldComponentUpdate
#302
- Less aggressive URL matching
#297
- Remove vidme player
#294
- Use index keys for FilePlayer source array
#276
- Set internal isPlaying flag to false on ended
#271
- Update twitch URL pattern
#267
- Retain player order to prevent weird iframe behaviour when switching players
#264
#265
- Add Soundcloud preload support
#262
- Add passthrough prop support to typings
#247
- Fix Vimeo duration logic
#250
- Update polyfill info
#239
- Use React 16 for demo
#241
- Tweak vimeo player logic
#240
- Make getInternalPlayer more flexible
#238
- Update Streamable player to use player.js
#237
- Use single config prop
#71
- Fix webpack production config
#231
- Add muted prop
#221
- Add onSeek prop
#222
- Allow seekTo to accept number of seconds
#75
- Pass errors when playing files through to onError callback
#200
- Add support for subtitle tracks in FilePlayer
#214
- Unmute facebook video when setting volume
#215
- Detatch HLS media when stopping
#212
- Add wistia player options
#198
- Pass through auto or falsey width and height to FilePlayer
#211
- Only use add-module-exports plugin for bower build
#193
#196
- Add forceAudio to fileConfig
#188
- Add support for m.youtube.com
#186
- Add support for multiple file sources
#81
- Ensure YouTube player is in DOM when stopping
#180
- Use new Vimeo player API
#142
- Fix FilePlayer seekTo bug
#149
- Add Facebook player
#109
- Apply all non-valid props to the wrapper element
#167
- Add vidmeConfig with choice of video format
#162
- Call player.load() when loading files
#177
- Add getCurrentTime and getDuration methods
#178
- Use prop-types library
#179
- Add loadedSeconds and playedSeconds to onProgress
#164
- Add playsinline prop
#148
- Fix vidme url regex
#158
- Fix youtube player vars config usage
#152
- Fix npm prepublish script on windows
#139
- Use video element for ogg files
#137
- Add typescript definition file
#134
- Add showArtwork option to soundcloud config
#108
- Add onReady prop
#106
- Use mounted property to prevent setting state when unmounted
#105
- Update onProgress logic to still report loaded amounts when paused
#94
- Ensure YouTube SDK is loaded before resolving promise
#88
- Fix looping behaviour
#91
- Add style prop
#92
- Always send both played and loaded values in progress events
#79
- Add RTSP stream support to FilePlayer
#83
- Move initial setVolume to onStart
#82
- Update player when width or height changes
#84
- Pause FilePlayer when stopping
#78
- Add m4v and m4a extensions to filePlayer
#72
- Fix onDuration being called with null
#52
- Use filePlayer for SoundCloud tracks
#64
- Add filePlayer config prop
#62
- Add loop prop
#57
- Add onStart prop
#61
- Use fetch-jsonp for SoundCloud resolve endpoint
#24
#47
- Bump packages
#56
- Add progressFrequency prop
#50
- Only include played amount in onProgress when playing
#51
- Pass on event including error message and code onError
#44
- Fix bower support
#42
- Update readme with mobile considerations
#41
- Add browser build
#35
#38
- Add promise and fetch polyfills to build
#39
- Vimeo fullscreen support
#33
- Move onDuration callback from onReady to onPlay
#31
- Add onDuration prop
#28
- Add semicolons to class properties
#27
- Limit Travis to just basic tests
#26
- Add basic karma testing
#22
- Rebase on react-transform-boilerplate
#8
- When seeking before player is ready, store value and seek later
#19
- Set isReady before setVolume in onReady
#23
- Handle YouTube URL change during SDK load
#20
- Use explicit isReady property to guard player methods
#18
- Use displayNames for players
#17
- Enable multiple YouTube players
#15
- Prime Youtube and Vimeo players with a blank video
#7
- Remove autoplay and only play if props.playing is true when ready
#10
- Abort SoundCloud streaming if url changes during requests
#6
- Use findDOMNode
#3
- Guard against no iframe contentWindow in Vimeo player
#2
- Set correct initial state in ReactPlayer
#2
- Add Array.find() polyfill
#1
- Add fetch polyfill libraries to package.json
#1
- Breaking change: Use lazy players
1752b8d
- Breaking change: Remove preload support
1baa227
- Breaking change: Remove legacy config props
9339efa