react-native-theoplayer 2.7.0 → 2.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +76 -13
- package/README.md +16 -2
- package/android/build.gradle +1 -1
- package/android/local/com/theoplayer/android-connector/mediasession/5.2.0-local/mediasession-5.2.0-local.aar +0 -0
- package/android/local/com/theoplayer/android-connector/mediasession/{4.12.0-local/mediasession-4.12.0-local.pom → 5.2.0-local/mediasession-5.2.0-local.pom} +1 -1
- package/android/local/com/theoplayer/android-connector/mediasession/maven-metadata-local.xml +4 -4
- package/android/src/main/AndroidManifest.xml +2 -2
- package/android/src/main/java/com/theoplayer/PlayerEventEmitter.kt +1 -1
- package/android/src/main/java/com/theoplayer/ReactTHEOplayerContext.kt +36 -20
- package/android/src/main/java/com/theoplayer/media/CustomMediaButtonReceiver.kt +25 -0
- package/android/src/main/java/com/theoplayer/{audio → media}/MediaNotificationBuilder.kt +6 -1
- package/android/src/main/java/com/theoplayer/{audio → media}/MediaPlaybackService.kt +39 -11
- package/android/src/main/java/com/theoplayer/source/SourceAdapter.kt +12 -0
- package/android/src/main/java/com/theoplayer/track/TrackListAdapter.kt +17 -13
- package/ios/contentprotection/THEOplayerRCTProxyContentProtectionIntegration.swift +19 -29
- package/lib/commonjs/api/cast/Chromecast.js.map +1 -1
- package/lib/commonjs/api/source/dash/DashPlaybackConfiguration.js.map +1 -1
- package/lib/commonjs/api/track/TextTrack.js.map +1 -1
- package/lib/commonjs/index.js +0 -12
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/internal/adapter/THEOplayerAdapter.js +17 -0
- package/lib/commonjs/internal/adapter/THEOplayerAdapter.js.map +1 -1
- package/lib/commonjs/internal/adapter/web/FullscreenAPI.js +41 -0
- package/lib/commonjs/internal/adapter/web/FullscreenAPI.js.map +1 -0
- package/lib/commonjs/internal/adapter/web/WebPresentationModeManager.js +45 -39
- package/lib/commonjs/internal/adapter/web/WebPresentationModeManager.js.map +1 -1
- package/lib/commonjs/internal/utils/CommonUtils.js +10 -0
- package/lib/commonjs/internal/utils/CommonUtils.js.map +1 -0
- package/lib/module/api/cast/Chromecast.js.map +1 -1
- package/lib/module/api/source/dash/DashPlaybackConfiguration.js.map +1 -1
- package/lib/module/api/track/TextTrack.js.map +1 -1
- package/lib/module/index.js +0 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/internal/adapter/THEOplayerAdapter.js +18 -1
- package/lib/module/internal/adapter/THEOplayerAdapter.js.map +1 -1
- package/lib/module/internal/adapter/web/FullscreenAPI.js +34 -0
- package/lib/module/internal/adapter/web/FullscreenAPI.js.map +1 -0
- package/lib/module/internal/adapter/web/WebPresentationModeManager.js +45 -39
- package/lib/module/internal/adapter/web/WebPresentationModeManager.js.map +1 -1
- package/lib/module/internal/utils/CommonUtils.js +4 -0
- package/lib/module/internal/utils/CommonUtils.js.map +1 -0
- package/lib/typescript/api/cast/Chromecast.d.ts +1 -1
- package/lib/typescript/api/source/dash/DashPlaybackConfiguration.d.ts +52 -0
- package/lib/typescript/api/track/TextTrack.d.ts +2 -2
- package/lib/typescript/index.d.ts +0 -1
- package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts +1 -0
- package/lib/typescript/internal/adapter/web/FullscreenAPI.d.ts +9 -0
- package/lib/typescript/internal/utils/CommonUtils.d.ts +1 -0
- package/package.json +2 -8
- package/react-native-theoplayer.podspec +1 -1
- package/src/api/cast/Chromecast.ts +1 -1
- package/src/api/source/dash/DashPlaybackConfiguration.ts +56 -0
- package/src/api/track/TextTrack.ts +2 -2
- package/src/index.tsx +0 -1
- package/src/internal/adapter/THEOplayerAdapter.ts +19 -0
- package/src/internal/adapter/web/FullscreenAPI.ts +59 -0
- package/src/internal/adapter/web/WebPresentationModeManager.ts +29 -22
- package/src/internal/utils/CommonUtils.ts +3 -0
- package/android/local/com/theoplayer/android-connector/mediasession/4.12.0-local/mediasession-4.12.0-local.aar +0 -0
- package/lib/commonjs/ui/THEOplayerDefaultUi.js +0 -82
- package/lib/commonjs/ui/THEOplayerDefaultUi.js.map +0 -1
- package/lib/commonjs/ui/THEOplayerTheme.js +0 -48
- package/lib/commonjs/ui/THEOplayerTheme.js.map +0 -1
- package/lib/commonjs/ui/barrel.js +0 -39
- package/lib/commonjs/ui/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/activityindicator/CenteredDelayedActivityIndicator.js +0 -99
- package/lib/commonjs/ui/components/activityindicator/CenteredDelayedActivityIndicator.js.map +0 -1
- package/lib/commonjs/ui/components/activityindicator/DelayedActivityIndicator.js +0 -35
- package/lib/commonjs/ui/components/activityindicator/DelayedActivityIndicator.js.map +0 -1
- package/lib/commonjs/ui/components/activityindicator/barrel.js +0 -28
- package/lib/commonjs/ui/components/activityindicator/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/barrel.js +0 -105
- package/lib/commonjs/ui/components/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/button/AirplayButton.js +0 -81
- package/lib/commonjs/ui/components/button/AirplayButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/ChromecastButton.js +0 -66
- package/lib/commonjs/ui/components/button/ChromecastButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/ChromecastButton.web.js +0 -82
- package/lib/commonjs/ui/components/button/ChromecastButton.web.js.map +0 -1
- package/lib/commonjs/ui/components/button/FullscreenButton.js +0 -72
- package/lib/commonjs/ui/components/button/FullscreenButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/MuteButton.js +0 -66
- package/lib/commonjs/ui/components/button/MuteButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/PipButton.js +0 -72
- package/lib/commonjs/ui/components/button/PipButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/PlayButton.js +0 -113
- package/lib/commonjs/ui/components/button/PlayButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/SkipButton.js +0 -122
- package/lib/commonjs/ui/components/button/SkipButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/actionbutton/ActionButton.js +0 -82
- package/lib/commonjs/ui/components/button/actionbutton/ActionButton.js.map +0 -1
- package/lib/commonjs/ui/components/button/barrel.js +0 -105
- package/lib/commonjs/ui/components/button/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/AirplaySvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/AirplaySvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ArrowForwardSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ArrowForwardSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/BackSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/BackSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/BackwardSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/BackwardSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ChromecastSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ChromecastSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ErrorSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ErrorSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ForwardSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ForwardSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/FullscreenEnterSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/FullscreenEnterSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/FullscreenExitSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/FullscreenExitSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/LanguageSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/LanguageSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ListSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ListSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/PauseSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/PauseSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/PipEnterSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/PipEnterSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/PipExitSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/PipExitSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/PlaySvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/PlaySvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/ReplaySvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/ReplaySvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/SettingsSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/SettingsSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/SvgUtils.js +0 -13
- package/lib/commonjs/ui/components/button/svg/SvgUtils.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/VolumeOffSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/VolumeOffSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/VolumeUpSvg.js +0 -22
- package/lib/commonjs/ui/components/button/svg/VolumeUpSvg.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/barrel.js +0 -226
- package/lib/commonjs/ui/components/button/svg/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/button/svg/res/AirPlayButton.html +0 -6
- package/lib/commonjs/ui/components/button/svg/res/Airplay.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/ChromecastButton.html +0 -25
- package/lib/commonjs/ui/components/button/svg/res/arrow_forward.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/back.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/backward.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/chromecast-48px.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/close.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/error.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/forward.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/fullscreen-enter.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/fullscreen-exit.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/language.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/list.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/live.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/pause.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/pip_enter.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/pip_exit.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/play.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/replay.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/settings.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/skip-next.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/volume-high.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/volume-low.svg +0 -1
- package/lib/commonjs/ui/components/button/svg/res/volume-off.svg +0 -1
- package/lib/commonjs/ui/components/controlbar/ControlBar.js +0 -61
- package/lib/commonjs/ui/components/controlbar/ControlBar.js.map +0 -1
- package/lib/commonjs/ui/components/controlbar/Spacer.js +0 -21
- package/lib/commonjs/ui/components/controlbar/Spacer.js.map +0 -1
- package/lib/commonjs/ui/components/controlbar/barrel.js +0 -28
- package/lib/commonjs/ui/components/controlbar/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/menu/LanguageMenuButton.js +0 -175
- package/lib/commonjs/ui/components/menu/LanguageMenuButton.js.map +0 -1
- package/lib/commonjs/ui/components/menu/PlaybackRateSubMenu.js +0 -91
- package/lib/commonjs/ui/components/menu/PlaybackRateSubMenu.js.map +0 -1
- package/lib/commonjs/ui/components/menu/QualitySubMenu.js +0 -145
- package/lib/commonjs/ui/components/menu/QualitySubMenu.js.map +0 -1
- package/lib/commonjs/ui/components/menu/SettingsMenuButton.js +0 -36
- package/lib/commonjs/ui/components/menu/SettingsMenuButton.js.map +0 -1
- package/lib/commonjs/ui/components/menu/barrel.js +0 -61
- package/lib/commonjs/ui/components/menu/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/MenuButton.js +0 -34
- package/lib/commonjs/ui/components/menu/common/MenuButton.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/MenuRadioButton.js +0 -47
- package/lib/commonjs/ui/components/menu/common/MenuRadioButton.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/MenuTitle.js +0 -38
- package/lib/commonjs/ui/components/menu/common/MenuTitle.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/MenuView.js +0 -75
- package/lib/commonjs/ui/components/menu/common/MenuView.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/ScrollableMenu.js +0 -45
- package/lib/commonjs/ui/components/menu/common/ScrollableMenu.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/SubMenuWithButton.js +0 -65
- package/lib/commonjs/ui/components/menu/common/SubMenuWithButton.js.map +0 -1
- package/lib/commonjs/ui/components/menu/common/barrel.js +0 -72
- package/lib/commonjs/ui/components/menu/common/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/message/CastMessage.js +0 -79
- package/lib/commonjs/ui/components/message/CastMessage.js.map +0 -1
- package/lib/commonjs/ui/components/message/ErrorDisplay.js +0 -53
- package/lib/commonjs/ui/components/message/ErrorDisplay.js.map +0 -1
- package/lib/commonjs/ui/components/message/barrel.js +0 -28
- package/lib/commonjs/ui/components/message/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/SeekBar.js +0 -194
- package/lib/commonjs/ui/components/seekbar/SeekBar.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/barrel.js +0 -28
- package/lib/commonjs/ui/components/seekbar/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/SingleThumbnailView.js +0 -45
- package/lib/commonjs/ui/components/seekbar/thumbnail/SingleThumbnailView.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/Thumbnail.js +0 -18
- package/lib/commonjs/ui/components/seekbar/thumbnail/Thumbnail.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/ThumbnailView.js +0 -256
- package/lib/commonjs/ui/components/seekbar/thumbnail/ThumbnailView.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.js +0 -17
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.web.js +0 -17
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.web.js.map +0 -1
- package/lib/commonjs/ui/components/seekbar/thumbnail/barrel.js +0 -28
- package/lib/commonjs/ui/components/seekbar/thumbnail/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/timelabel/StaticTimeLabel.js +0 -55
- package/lib/commonjs/ui/components/timelabel/StaticTimeLabel.js.map +0 -1
- package/lib/commonjs/ui/components/timelabel/TimeLabel.js +0 -88
- package/lib/commonjs/ui/components/timelabel/TimeLabel.js.map +0 -1
- package/lib/commonjs/ui/components/timelabel/barrel.js +0 -28
- package/lib/commonjs/ui/components/timelabel/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/uicontroller/UiContainer.js +0 -350
- package/lib/commonjs/ui/components/uicontroller/UiContainer.js.map +0 -1
- package/lib/commonjs/ui/components/uicontroller/UiControls.js +0 -6
- package/lib/commonjs/ui/components/uicontroller/UiControls.js.map +0 -1
- package/lib/commonjs/ui/components/uicontroller/barrel.js +0 -28
- package/lib/commonjs/ui/components/uicontroller/barrel.js.map +0 -1
- package/lib/commonjs/ui/components/util/PlayerContext.js +0 -19
- package/lib/commonjs/ui/components/util/PlayerContext.js.map +0 -1
- package/lib/commonjs/ui/components/util/TrackUtils.js +0 -69
- package/lib/commonjs/ui/components/util/TrackUtils.js.map +0 -1
- package/lib/commonjs/ui/components/util/barrel.js +0 -17
- package/lib/commonjs/ui/components/util/barrel.js.map +0 -1
- package/lib/commonjs/ui/utils/ArrayUtils.js +0 -19
- package/lib/commonjs/ui/utils/ArrayUtils.js.map +0 -1
- package/lib/commonjs/ui/utils/language/Language.js +0 -38
- package/lib/commonjs/ui/utils/language/Language.js.map +0 -1
- package/lib/commonjs/ui/utils/language/languages.json +0 -1658
- package/lib/commonjs/web/platform/BrowserDetection.js +0 -34
- package/lib/commonjs/web/platform/BrowserDetection.js.map +0 -1
- package/lib/module/ui/THEOplayerDefaultUi.js +0 -74
- package/lib/module/ui/THEOplayerDefaultUi.js.map +0 -1
- package/lib/module/ui/THEOplayerTheme.js +0 -41
- package/lib/module/ui/THEOplayerTheme.js.map +0 -1
- package/lib/module/ui/barrel.js +0 -4
- package/lib/module/ui/barrel.js.map +0 -1
- package/lib/module/ui/components/activityindicator/CenteredDelayedActivityIndicator.js +0 -90
- package/lib/module/ui/components/activityindicator/CenteredDelayedActivityIndicator.js.map +0 -1
- package/lib/module/ui/components/activityindicator/DelayedActivityIndicator.js +0 -26
- package/lib/module/ui/components/activityindicator/DelayedActivityIndicator.js.map +0 -1
- package/lib/module/ui/components/activityindicator/barrel.js +0 -3
- package/lib/module/ui/components/activityindicator/barrel.js.map +0 -1
- package/lib/module/ui/components/barrel.js +0 -10
- package/lib/module/ui/components/barrel.js.map +0 -1
- package/lib/module/ui/components/button/AirplayButton.js +0 -72
- package/lib/module/ui/components/button/AirplayButton.js.map +0 -1
- package/lib/module/ui/components/button/ChromecastButton.js +0 -56
- package/lib/module/ui/components/button/ChromecastButton.js.map +0 -1
- package/lib/module/ui/components/button/ChromecastButton.web.js +0 -72
- package/lib/module/ui/components/button/ChromecastButton.web.js.map +0 -1
- package/lib/module/ui/components/button/FullscreenButton.js +0 -63
- package/lib/module/ui/components/button/FullscreenButton.js.map +0 -1
- package/lib/module/ui/components/button/MuteButton.js +0 -57
- package/lib/module/ui/components/button/MuteButton.js.map +0 -1
- package/lib/module/ui/components/button/PipButton.js +0 -63
- package/lib/module/ui/components/button/PipButton.js.map +0 -1
- package/lib/module/ui/components/button/PlayButton.js +0 -104
- package/lib/module/ui/components/button/PlayButton.js.map +0 -1
- package/lib/module/ui/components/button/SkipButton.js +0 -113
- package/lib/module/ui/components/button/SkipButton.js.map +0 -1
- package/lib/module/ui/components/button/actionbutton/ActionButton.js +0 -72
- package/lib/module/ui/components/button/actionbutton/ActionButton.js.map +0 -1
- package/lib/module/ui/components/button/barrel.js +0 -10
- package/lib/module/ui/components/button/barrel.js.map +0 -1
- package/lib/module/ui/components/button/svg/AirplaySvg.js +0 -12
- package/lib/module/ui/components/button/svg/AirplaySvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ArrowForwardSvg.js +0 -12
- package/lib/module/ui/components/button/svg/ArrowForwardSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/BackSvg.js +0 -12
- package/lib/module/ui/components/button/svg/BackSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/BackwardSvg.js +0 -12
- package/lib/module/ui/components/button/svg/BackwardSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ChromecastSvg.js +0 -12
- package/lib/module/ui/components/button/svg/ChromecastSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ErrorSvg.js +0 -12
- package/lib/module/ui/components/button/svg/ErrorSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ForwardSvg.js +0 -12
- package/lib/module/ui/components/button/svg/ForwardSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/FullscreenEnterSvg.js +0 -12
- package/lib/module/ui/components/button/svg/FullscreenEnterSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/FullscreenExitSvg.js +0 -12
- package/lib/module/ui/components/button/svg/FullscreenExitSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/LanguageSvg.js +0 -12
- package/lib/module/ui/components/button/svg/LanguageSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ListSvg.js +0 -12
- package/lib/module/ui/components/button/svg/ListSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/PauseSvg.js +0 -12
- package/lib/module/ui/components/button/svg/PauseSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/PipEnterSvg.js +0 -12
- package/lib/module/ui/components/button/svg/PipEnterSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/PipExitSvg.js +0 -12
- package/lib/module/ui/components/button/svg/PipExitSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/PlaySvg.js +0 -12
- package/lib/module/ui/components/button/svg/PlaySvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/ReplaySvg.js +0 -12
- package/lib/module/ui/components/button/svg/ReplaySvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/SettingsSvg.js +0 -12
- package/lib/module/ui/components/button/svg/SettingsSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/SvgUtils.js +0 -5
- package/lib/module/ui/components/button/svg/SvgUtils.js.map +0 -1
- package/lib/module/ui/components/button/svg/VolumeOffSvg.js +0 -12
- package/lib/module/ui/components/button/svg/VolumeOffSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/VolumeUpSvg.js +0 -12
- package/lib/module/ui/components/button/svg/VolumeUpSvg.js.map +0 -1
- package/lib/module/ui/components/button/svg/barrel.js +0 -21
- package/lib/module/ui/components/button/svg/barrel.js.map +0 -1
- package/lib/module/ui/components/button/svg/res/AirPlayButton.html +0 -6
- package/lib/module/ui/components/button/svg/res/Airplay.svg +0 -1
- package/lib/module/ui/components/button/svg/res/ChromecastButton.html +0 -25
- package/lib/module/ui/components/button/svg/res/arrow_forward.svg +0 -1
- package/lib/module/ui/components/button/svg/res/back.svg +0 -1
- package/lib/module/ui/components/button/svg/res/backward.svg +0 -1
- package/lib/module/ui/components/button/svg/res/chromecast-48px.svg +0 -1
- package/lib/module/ui/components/button/svg/res/close.svg +0 -1
- package/lib/module/ui/components/button/svg/res/error.svg +0 -1
- package/lib/module/ui/components/button/svg/res/forward.svg +0 -1
- package/lib/module/ui/components/button/svg/res/fullscreen-enter.svg +0 -1
- package/lib/module/ui/components/button/svg/res/fullscreen-exit.svg +0 -1
- package/lib/module/ui/components/button/svg/res/language.svg +0 -1
- package/lib/module/ui/components/button/svg/res/list.svg +0 -1
- package/lib/module/ui/components/button/svg/res/live.svg +0 -1
- package/lib/module/ui/components/button/svg/res/pause.svg +0 -1
- package/lib/module/ui/components/button/svg/res/pip_enter.svg +0 -1
- package/lib/module/ui/components/button/svg/res/pip_exit.svg +0 -1
- package/lib/module/ui/components/button/svg/res/play.svg +0 -1
- package/lib/module/ui/components/button/svg/res/replay.svg +0 -1
- package/lib/module/ui/components/button/svg/res/settings.svg +0 -1
- package/lib/module/ui/components/button/svg/res/skip-next.svg +0 -1
- package/lib/module/ui/components/button/svg/res/volume-high.svg +0 -1
- package/lib/module/ui/components/button/svg/res/volume-low.svg +0 -1
- package/lib/module/ui/components/button/svg/res/volume-off.svg +0 -1
- package/lib/module/ui/components/controlbar/ControlBar.js +0 -52
- package/lib/module/ui/components/controlbar/ControlBar.js.map +0 -1
- package/lib/module/ui/components/controlbar/Spacer.js +0 -14
- package/lib/module/ui/components/controlbar/Spacer.js.map +0 -1
- package/lib/module/ui/components/controlbar/barrel.js +0 -3
- package/lib/module/ui/components/controlbar/barrel.js.map +0 -1
- package/lib/module/ui/components/menu/LanguageMenuButton.js +0 -165
- package/lib/module/ui/components/menu/LanguageMenuButton.js.map +0 -1
- package/lib/module/ui/components/menu/PlaybackRateSubMenu.js +0 -80
- package/lib/module/ui/components/menu/PlaybackRateSubMenu.js.map +0 -1
- package/lib/module/ui/components/menu/QualitySubMenu.js +0 -135
- package/lib/module/ui/components/menu/QualitySubMenu.js.map +0 -1
- package/lib/module/ui/components/menu/SettingsMenuButton.js +0 -28
- package/lib/module/ui/components/menu/SettingsMenuButton.js.map +0 -1
- package/lib/module/ui/components/menu/barrel.js +0 -6
- package/lib/module/ui/components/menu/barrel.js.map +0 -1
- package/lib/module/ui/components/menu/common/MenuButton.js +0 -26
- package/lib/module/ui/components/menu/common/MenuButton.js.map +0 -1
- package/lib/module/ui/components/menu/common/MenuRadioButton.js +0 -38
- package/lib/module/ui/components/menu/common/MenuRadioButton.js.map +0 -1
- package/lib/module/ui/components/menu/common/MenuTitle.js +0 -29
- package/lib/module/ui/components/menu/common/MenuTitle.js.map +0 -1
- package/lib/module/ui/components/menu/common/MenuView.js +0 -65
- package/lib/module/ui/components/menu/common/MenuView.js.map +0 -1
- package/lib/module/ui/components/menu/common/ScrollableMenu.js +0 -36
- package/lib/module/ui/components/menu/common/ScrollableMenu.js.map +0 -1
- package/lib/module/ui/components/menu/common/SubMenuWithButton.js +0 -56
- package/lib/module/ui/components/menu/common/SubMenuWithButton.js.map +0 -1
- package/lib/module/ui/components/menu/common/barrel.js +0 -7
- package/lib/module/ui/components/menu/common/barrel.js.map +0 -1
- package/lib/module/ui/components/message/CastMessage.js +0 -70
- package/lib/module/ui/components/message/CastMessage.js.map +0 -1
- package/lib/module/ui/components/message/ErrorDisplay.js +0 -46
- package/lib/module/ui/components/message/ErrorDisplay.js.map +0 -1
- package/lib/module/ui/components/message/barrel.js +0 -3
- package/lib/module/ui/components/message/barrel.js.map +0 -1
- package/lib/module/ui/components/seekbar/SeekBar.js +0 -184
- package/lib/module/ui/components/seekbar/SeekBar.js.map +0 -1
- package/lib/module/ui/components/seekbar/barrel.js +0 -3
- package/lib/module/ui/components/seekbar/barrel.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/SingleThumbnailView.js +0 -37
- package/lib/module/ui/components/seekbar/thumbnail/SingleThumbnailView.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/Thumbnail.js +0 -11
- package/lib/module/ui/components/seekbar/thumbnail/Thumbnail.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/ThumbnailView.js +0 -246
- package/lib/module/ui/components/seekbar/thumbnail/ThumbnailView.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.js +0 -2
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.web.js +0 -3
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.web.js.map +0 -1
- package/lib/module/ui/components/seekbar/thumbnail/barrel.js +0 -3
- package/lib/module/ui/components/seekbar/thumbnail/barrel.js.map +0 -1
- package/lib/module/ui/components/timelabel/StaticTimeLabel.js +0 -48
- package/lib/module/ui/components/timelabel/StaticTimeLabel.js.map +0 -1
- package/lib/module/ui/components/timelabel/TimeLabel.js +0 -78
- package/lib/module/ui/components/timelabel/TimeLabel.js.map +0 -1
- package/lib/module/ui/components/timelabel/barrel.js +0 -3
- package/lib/module/ui/components/timelabel/barrel.js.map +0 -1
- package/lib/module/ui/components/uicontroller/UiContainer.js +0 -336
- package/lib/module/ui/components/uicontroller/UiContainer.js.map +0 -1
- package/lib/module/ui/components/uicontroller/UiControls.js +0 -2
- package/lib/module/ui/components/uicontroller/UiControls.js.map +0 -1
- package/lib/module/ui/components/uicontroller/barrel.js +0 -3
- package/lib/module/ui/components/uicontroller/barrel.js.map +0 -1
- package/lib/module/ui/components/util/PlayerContext.js +0 -11
- package/lib/module/ui/components/util/PlayerContext.js.map +0 -1
- package/lib/module/ui/components/util/TrackUtils.js +0 -60
- package/lib/module/ui/components/util/TrackUtils.js.map +0 -1
- package/lib/module/ui/components/util/barrel.js +0 -2
- package/lib/module/ui/components/util/barrel.js.map +0 -1
- package/lib/module/ui/utils/ArrayUtils.js +0 -12
- package/lib/module/ui/utils/ArrayUtils.js.map +0 -1
- package/lib/module/ui/utils/language/Language.js +0 -27
- package/lib/module/ui/utils/language/Language.js.map +0 -1
- package/lib/module/ui/utils/language/languages.json +0 -1658
- package/lib/module/web/platform/BrowserDetection.js +0 -27
- package/lib/module/web/platform/BrowserDetection.js.map +0 -1
- package/lib/typescript/ui/THEOplayerDefaultUi.d.ts +0 -35
- package/lib/typescript/ui/THEOplayerTheme.d.ts +0 -84
- package/lib/typescript/ui/barrel.d.ts +0 -3
- package/lib/typescript/ui/components/activityindicator/CenteredDelayedActivityIndicator.d.ts +0 -25
- package/lib/typescript/ui/components/activityindicator/DelayedActivityIndicator.d.ts +0 -9
- package/lib/typescript/ui/components/activityindicator/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/barrel.d.ts +0 -9
- package/lib/typescript/ui/components/button/AirplayButton.d.ts +0 -18
- package/lib/typescript/ui/components/button/ChromecastButton.d.ts +0 -19
- package/lib/typescript/ui/components/button/ChromecastButton.web.d.ts +0 -19
- package/lib/typescript/ui/components/button/FullscreenButton.d.ts +0 -17
- package/lib/typescript/ui/components/button/MuteButton.d.ts +0 -16
- package/lib/typescript/ui/components/button/PipButton.d.ts +0 -17
- package/lib/typescript/ui/components/button/PlayButton.d.ts +0 -28
- package/lib/typescript/ui/components/button/SkipButton.d.ts +0 -33
- package/lib/typescript/ui/components/button/actionbutton/ActionButton.d.ts +0 -41
- package/lib/typescript/ui/components/button/barrel.d.ts +0 -9
- package/lib/typescript/ui/components/button/svg/AirplaySvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ArrowForwardSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/BackSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/BackwardSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ChromecastSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ErrorSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ForwardSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/FullscreenEnterSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/FullscreenExitSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/LanguageSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ListSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/PauseSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/PipEnterSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/PipExitSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/PlaySvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/ReplaySvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/SettingsSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/SvgUtils.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/VolumeOffSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/VolumeUpSvg.d.ts +0 -3
- package/lib/typescript/ui/components/button/svg/barrel.d.ts +0 -20
- package/lib/typescript/ui/components/controlbar/ControlBar.d.ts +0 -39
- package/lib/typescript/ui/components/controlbar/Spacer.d.ts +0 -5
- package/lib/typescript/ui/components/controlbar/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/menu/LanguageMenuButton.d.ts +0 -40
- package/lib/typescript/ui/components/menu/PlaybackRateSubMenu.d.ts +0 -36
- package/lib/typescript/ui/components/menu/QualitySubMenu.d.ts +0 -29
- package/lib/typescript/ui/components/menu/SettingsMenuButton.d.ts +0 -12
- package/lib/typescript/ui/components/menu/barrel.d.ts +0 -5
- package/lib/typescript/ui/components/menu/common/MenuButton.d.ts +0 -25
- package/lib/typescript/ui/components/menu/common/MenuRadioButton.d.ts +0 -33
- package/lib/typescript/ui/components/menu/common/MenuTitle.d.ts +0 -20
- package/lib/typescript/ui/components/menu/common/MenuView.d.ts +0 -21
- package/lib/typescript/ui/components/menu/common/ScrollableMenu.d.ts +0 -23
- package/lib/typescript/ui/components/menu/common/SubMenuWithButton.d.ts +0 -29
- package/lib/typescript/ui/components/menu/common/barrel.d.ts +0 -6
- package/lib/typescript/ui/components/message/CastMessage.d.ts +0 -16
- package/lib/typescript/ui/components/message/ErrorDisplay.d.ts +0 -12
- package/lib/typescript/ui/components/message/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/seekbar/SeekBar.d.ts +0 -41
- package/lib/typescript/ui/components/seekbar/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/seekbar/thumbnail/SingleThumbnailView.d.ts +0 -8
- package/lib/typescript/ui/components/seekbar/thumbnail/Thumbnail.d.ts +0 -56
- package/lib/typescript/ui/components/seekbar/thumbnail/ThumbnailView.d.ts +0 -60
- package/lib/typescript/ui/components/seekbar/thumbnail/Urlpolyfill.d.ts +0 -1
- package/lib/typescript/ui/components/seekbar/thumbnail/Urlpolyfill.web.d.ts +0 -1
- package/lib/typescript/ui/components/seekbar/thumbnail/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/timelabel/StaticTimeLabel.d.ts +0 -24
- package/lib/typescript/ui/components/timelabel/TimeLabel.d.ts +0 -32
- package/lib/typescript/ui/components/timelabel/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/uicontroller/UiContainer.d.ts +0 -115
- package/lib/typescript/ui/components/uicontroller/UiControls.d.ts +0 -14
- package/lib/typescript/ui/components/uicontroller/barrel.d.ts +0 -2
- package/lib/typescript/ui/components/util/PlayerContext.d.ts +0 -22
- package/lib/typescript/ui/components/util/TrackUtils.d.ts +0 -10
- package/lib/typescript/ui/components/util/barrel.d.ts +0 -1
- package/lib/typescript/ui/utils/ArrayUtils.d.ts +0 -2
- package/lib/typescript/ui/utils/language/Language.d.ts +0 -19
- package/lib/typescript/web/platform/BrowserDetection.d.ts +0 -23
- package/src/ui/THEOplayerDefaultUi.tsx +0 -108
- package/src/ui/THEOplayerTheme.ts +0 -112
- package/src/ui/barrel.ts +0 -3
- package/src/ui/components/activityindicator/CenteredDelayedActivityIndicator.tsx +0 -96
- package/src/ui/components/activityindicator/DelayedActivityIndicator.tsx +0 -32
- package/src/ui/components/activityindicator/barrel.ts +0 -2
- package/src/ui/components/barrel.ts +0 -9
- package/src/ui/components/button/AirplayButton.tsx +0 -64
- package/src/ui/components/button/ChromecastButton.tsx +0 -60
- package/src/ui/components/button/ChromecastButton.web.tsx +0 -66
- package/src/ui/components/button/FullscreenButton.tsx +0 -60
- package/src/ui/components/button/MuteButton.tsx +0 -52
- package/src/ui/components/button/PipButton.tsx +0 -61
- package/src/ui/components/button/PlayButton.tsx +0 -107
- package/src/ui/components/button/SkipButton.tsx +0 -112
- package/src/ui/components/button/actionbutton/ActionButton.tsx +0 -105
- package/src/ui/components/button/barrel.ts +0 -9
- package/src/ui/components/button/svg/AirplaySvg.tsx +0 -18
- package/src/ui/components/button/svg/ArrowForwardSvg.tsx +0 -18
- package/src/ui/components/button/svg/BackSvg.tsx +0 -18
- package/src/ui/components/button/svg/BackwardSvg.tsx +0 -18
- package/src/ui/components/button/svg/ChromecastSvg.tsx +0 -18
- package/src/ui/components/button/svg/ErrorSvg.tsx +0 -18
- package/src/ui/components/button/svg/ForwardSvg.tsx +0 -18
- package/src/ui/components/button/svg/FullscreenEnterSvg.tsx +0 -18
- package/src/ui/components/button/svg/FullscreenExitSvg.tsx +0 -18
- package/src/ui/components/button/svg/LanguageSvg.tsx +0 -18
- package/src/ui/components/button/svg/ListSvg.tsx +0 -18
- package/src/ui/components/button/svg/PauseSvg.tsx +0 -18
- package/src/ui/components/button/svg/PipEnterSvg.tsx +0 -18
- package/src/ui/components/button/svg/PipExitSvg.tsx +0 -18
- package/src/ui/components/button/svg/PlaySvg.tsx +0 -18
- package/src/ui/components/button/svg/ReplaySvg.tsx +0 -18
- package/src/ui/components/button/svg/SettingsSvg.tsx +0 -18
- package/src/ui/components/button/svg/SvgUtils.ts +0 -4
- package/src/ui/components/button/svg/VolumeOffSvg.tsx +0 -18
- package/src/ui/components/button/svg/VolumeUpSvg.tsx +0 -18
- package/src/ui/components/button/svg/barrel.ts +0 -20
- package/src/ui/components/button/svg/res/AirPlayButton.html +0 -6
- package/src/ui/components/button/svg/res/Airplay.svg +0 -1
- package/src/ui/components/button/svg/res/ChromecastButton.html +0 -25
- package/src/ui/components/button/svg/res/arrow_forward.svg +0 -1
- package/src/ui/components/button/svg/res/back.svg +0 -1
- package/src/ui/components/button/svg/res/backward.svg +0 -1
- package/src/ui/components/button/svg/res/chromecast-48px.svg +0 -1
- package/src/ui/components/button/svg/res/close.svg +0 -1
- package/src/ui/components/button/svg/res/error.svg +0 -1
- package/src/ui/components/button/svg/res/forward.svg +0 -1
- package/src/ui/components/button/svg/res/fullscreen-enter.svg +0 -1
- package/src/ui/components/button/svg/res/fullscreen-exit.svg +0 -1
- package/src/ui/components/button/svg/res/language.svg +0 -1
- package/src/ui/components/button/svg/res/list.svg +0 -1
- package/src/ui/components/button/svg/res/live.svg +0 -1
- package/src/ui/components/button/svg/res/pause.svg +0 -1
- package/src/ui/components/button/svg/res/pip_enter.svg +0 -1
- package/src/ui/components/button/svg/res/pip_exit.svg +0 -1
- package/src/ui/components/button/svg/res/play.svg +0 -1
- package/src/ui/components/button/svg/res/replay.svg +0 -1
- package/src/ui/components/button/svg/res/settings.svg +0 -1
- package/src/ui/components/button/svg/res/skip-next.svg +0 -1
- package/src/ui/components/button/svg/res/volume-high.svg +0 -1
- package/src/ui/components/button/svg/res/volume-low.svg +0 -1
- package/src/ui/components/button/svg/res/volume-off.svg +0 -1
- package/src/ui/components/controlbar/ControlBar.tsx +0 -69
- package/src/ui/components/controlbar/Spacer.tsx +0 -9
- package/src/ui/components/controlbar/barrel.ts +0 -2
- package/src/ui/components/menu/LanguageMenuButton.tsx +0 -192
- package/src/ui/components/menu/PlaybackRateSubMenu.tsx +0 -93
- package/src/ui/components/menu/QualitySubMenu.tsx +0 -148
- package/src/ui/components/menu/SettingsMenuButton.tsx +0 -25
- package/src/ui/components/menu/barrel.ts +0 -5
- package/src/ui/components/menu/common/MenuButton.tsx +0 -49
- package/src/ui/components/menu/common/MenuRadioButton.tsx +0 -65
- package/src/ui/components/menu/common/MenuTitle.tsx +0 -37
- package/src/ui/components/menu/common/MenuView.tsx +0 -62
- package/src/ui/components/menu/common/ScrollableMenu.tsx +0 -43
- package/src/ui/components/menu/common/SubMenuWithButton.tsx +0 -58
- package/src/ui/components/menu/common/barrel.ts +0 -6
- package/src/ui/components/message/CastMessage.tsx +0 -74
- package/src/ui/components/message/ErrorDisplay.tsx +0 -43
- package/src/ui/components/message/barrel.ts +0 -2
- package/src/ui/components/seekbar/SeekBar.tsx +0 -178
- package/src/ui/components/seekbar/barrel.ts +0 -2
- package/src/ui/components/seekbar/thumbnail/SingleThumbnailView.tsx +0 -38
- package/src/ui/components/seekbar/thumbnail/Thumbnail.ts +0 -72
- package/src/ui/components/seekbar/thumbnail/ThumbnailView.tsx +0 -266
- package/src/ui/components/seekbar/thumbnail/Urlpolyfill.ts +0 -1
- package/src/ui/components/seekbar/thumbnail/Urlpolyfill.web.ts +0 -2
- package/src/ui/components/seekbar/thumbnail/barrel.ts +0 -2
- package/src/ui/components/timelabel/StaticTimeLabel.tsx +0 -63
- package/src/ui/components/timelabel/TimeLabel.tsx +0 -79
- package/src/ui/components/timelabel/barrel.ts +0 -2
- package/src/ui/components/uicontroller/UiContainer.tsx +0 -355
- package/src/ui/components/uicontroller/UiControls.ts +0 -31
- package/src/ui/components/uicontroller/barrel.ts +0 -2
- package/src/ui/components/util/PlayerContext.ts +0 -29
- package/src/ui/components/util/TrackUtils.ts +0 -62
- package/src/ui/components/util/barrel.ts +0 -1
- package/src/ui/utils/ArrayUtils.ts +0 -12
- package/src/ui/utils/language/Language.ts +0 -38
- package/src/ui/utils/language/languages.json +0 -1658
- package/src/web/platform/BrowserDetection.ts +0 -38
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["noOp"],"sources":["CommonUtils.ts"],"sourcesContent":["export function noOp(): void {\n return;\n}\n"],"mappings":"AAAA,OAAO,SAASA,IAAIA,CAAA,EAAS;EAC3B;AACF"}
|
|
@@ -24,6 +24,8 @@ export interface DashPlaybackConfiguration {
|
|
|
24
24
|
* Whether to seamlessly switch between DASH periods.
|
|
25
25
|
*
|
|
26
26
|
* @remarks
|
|
27
|
+
* <br/> - Available on Web only.
|
|
28
|
+
*
|
|
27
29
|
* The player supports two strategies for handling a switch between two periods in an MPEG-DASH stream:
|
|
28
30
|
* <br/> - <strong>Seamless</strong>: Once the player is done buffering the current period, it immediately starts buffering the next period.
|
|
29
31
|
* This requires that the current period and the next period have compatible codecs and content protection, or that the platform
|
|
@@ -41,4 +43,54 @@ export interface DashPlaybackConfiguration {
|
|
|
41
43
|
* @defaultValue `'auto'`
|
|
42
44
|
*/
|
|
43
45
|
useSeamlessPeriodSwitch?: SeamlessPeriodSwitchStrategy;
|
|
46
|
+
/**
|
|
47
|
+
* (Experimental) Whether the timescales of the media data need to be shifted,
|
|
48
|
+
* in order to work around platform-specific issues on certain smart TV platforms.
|
|
49
|
+
*
|
|
50
|
+
* @remarks
|
|
51
|
+
* <br/> - Available since v4.1.0.
|
|
52
|
+
* <br/> - Available on Web only.
|
|
53
|
+
* <br/> - On certain smart TV platforms (such as Tizen 2), playback issues may arise when
|
|
54
|
+
* the timescale of the media data changes across periods or discontinuities.
|
|
55
|
+
* In that case, the player may need to shift all the timescales first,
|
|
56
|
+
* however this strategy may not work for all streams.
|
|
57
|
+
* <br/> - When not specified, the player will decide whether or not to shift timescales
|
|
58
|
+
* based on the platform.
|
|
59
|
+
* <br/> - This is an experimental option. It should only be used after consulting with
|
|
60
|
+
* THEOplayer support or engineering.
|
|
61
|
+
*/
|
|
62
|
+
needsTimescaleShifting?: boolean | null;
|
|
63
|
+
/**
|
|
64
|
+
* (Experimental) The desired timescale to which the media data should be shifted.
|
|
65
|
+
*
|
|
66
|
+
* @remarks
|
|
67
|
+
* <br/> - Available since v4.11.0.
|
|
68
|
+
* <br/> - Available on Web only.
|
|
69
|
+
* <br/> - When specified, if the player decides to shift the timescale (see {@link DashPlaybackConfiguration.needsTimescaleShifting}), the timescale will be set to the
|
|
70
|
+
* given desired timescale.
|
|
71
|
+
* <br/> - When not specified, if the player decides to shift timescale, the player will decide the timescale to which it should shift.
|
|
72
|
+
* <br/> - This is an experimental option. It should only be used after consulting with
|
|
73
|
+
* THEOplayer support or engineering.
|
|
74
|
+
*/
|
|
75
|
+
desiredTimescale?: number;
|
|
76
|
+
/**
|
|
77
|
+
* Whether the player should try to force the seek on period switching to realign video and audio.
|
|
78
|
+
*
|
|
79
|
+
* @internal
|
|
80
|
+
*
|
|
81
|
+
* @remarks
|
|
82
|
+
* <br/> - Available on Web only.
|
|
83
|
+
*/
|
|
84
|
+
forceSeekToSynchronize?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* (Experimental) Force the player to ignore the availability window of individual segments in the MPD,
|
|
87
|
+
* and instead consider every listed segment to be immediately available.
|
|
88
|
+
*
|
|
89
|
+
* @remarks
|
|
90
|
+
* <br/> - Available since v5.2.0.
|
|
91
|
+
* <br/> - Available on Web and Android.
|
|
92
|
+
* <br/> - This only applies to livestreams (with `<MPD type="dynamic">`).
|
|
93
|
+
* <br/> - This only applies to streams that use `<SegmentTimeline>`.
|
|
94
|
+
*/
|
|
95
|
+
ignoreAvailabilityWindow?: boolean;
|
|
44
96
|
}
|
|
@@ -95,6 +95,6 @@ export declare function filterThumbnailTracks(textTracks: TextTrack[] | undefine
|
|
|
95
95
|
*/
|
|
96
96
|
export declare function isThumbnailTrack(textTrack: TextTrack | undefined): boolean;
|
|
97
97
|
export declare function hasTextTrackCue(textTrack: TextTrack, cue: TextTrackCue): boolean;
|
|
98
|
-
export declare function removeTextTrackCue(textTrack
|
|
99
|
-
export declare function addTextTrackCue(textTrack
|
|
98
|
+
export declare function removeTextTrackCue(textTrack?: TextTrack, cue?: TextTrackCue): void;
|
|
99
|
+
export declare function addTextTrackCue(textTrack?: TextTrack, cue?: TextTrackCue): void;
|
|
100
100
|
export declare function findTextTrackByUid(textTracks: TextTrack[], uid: number): TextTrack | undefined;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export interface FullscreenAPIMap {
|
|
2
|
+
requestFullscreen_: 'requestFullscreen';
|
|
3
|
+
exitFullscreen_: 'exitFullscreen';
|
|
4
|
+
fullscreenElement_: 'fullscreenElement';
|
|
5
|
+
fullscreenEnabled_: 'fullscreenEnabled';
|
|
6
|
+
fullscreenchange_: 'fullscreenchange';
|
|
7
|
+
fullscreenerror_: 'fullscreenerror';
|
|
8
|
+
}
|
|
9
|
+
export declare const fullscreenAPI: FullscreenAPIMap | undefined;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function noOp(): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-theoplayer",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.9.0",
|
|
4
4
|
"description": "A THEOplayer video component for react-native.",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
|
@@ -116,12 +116,6 @@
|
|
|
116
116
|
]
|
|
117
117
|
},
|
|
118
118
|
"dependencies": {
|
|
119
|
-
"
|
|
120
|
-
"buffer": "^6.0.3",
|
|
121
|
-
"react-native-google-cast": "^4.6.2",
|
|
122
|
-
"react-native-svg": "^13.8.0",
|
|
123
|
-
"react-native-svg-web": "^1.0.0",
|
|
124
|
-
"react-native-url-polyfill": "^1.3.0",
|
|
125
|
-
"url-polyfill": "^1.1.12"
|
|
119
|
+
"buffer": "^6.0.3"
|
|
126
120
|
}
|
|
127
121
|
}
|
|
@@ -36,7 +36,7 @@ Pod::Spec.new do |s|
|
|
|
36
36
|
}
|
|
37
37
|
else
|
|
38
38
|
puts "Using THEOplayer-core SDK"
|
|
39
|
-
s.dependency "THEOplayerSDK-core", "~> 5.1"
|
|
39
|
+
s.dependency "THEOplayerSDK-core", "~> 5.4", ">= 5.4.1"
|
|
40
40
|
if theofeatures.include?("GOOGLE_IMA")
|
|
41
41
|
puts "Adding THEOplayer-Integration-GoogleIMA"
|
|
42
42
|
s.dependency "THEOplayer-Integration-GoogleIMA"
|
|
@@ -25,6 +25,8 @@ export interface DashPlaybackConfiguration {
|
|
|
25
25
|
* Whether to seamlessly switch between DASH periods.
|
|
26
26
|
*
|
|
27
27
|
* @remarks
|
|
28
|
+
* <br/> - Available on Web only.
|
|
29
|
+
*
|
|
28
30
|
* The player supports two strategies for handling a switch between two periods in an MPEG-DASH stream:
|
|
29
31
|
* <br/> - <strong>Seamless</strong>: Once the player is done buffering the current period, it immediately starts buffering the next period.
|
|
30
32
|
* This requires that the current period and the next period have compatible codecs and content protection, or that the platform
|
|
@@ -42,4 +44,58 @@ export interface DashPlaybackConfiguration {
|
|
|
42
44
|
* @defaultValue `'auto'`
|
|
43
45
|
*/
|
|
44
46
|
useSeamlessPeriodSwitch?: SeamlessPeriodSwitchStrategy;
|
|
47
|
+
|
|
48
|
+
/**
|
|
49
|
+
* (Experimental) Whether the timescales of the media data need to be shifted,
|
|
50
|
+
* in order to work around platform-specific issues on certain smart TV platforms.
|
|
51
|
+
*
|
|
52
|
+
* @remarks
|
|
53
|
+
* <br/> - Available since v4.1.0.
|
|
54
|
+
* <br/> - Available on Web only.
|
|
55
|
+
* <br/> - On certain smart TV platforms (such as Tizen 2), playback issues may arise when
|
|
56
|
+
* the timescale of the media data changes across periods or discontinuities.
|
|
57
|
+
* In that case, the player may need to shift all the timescales first,
|
|
58
|
+
* however this strategy may not work for all streams.
|
|
59
|
+
* <br/> - When not specified, the player will decide whether or not to shift timescales
|
|
60
|
+
* based on the platform.
|
|
61
|
+
* <br/> - This is an experimental option. It should only be used after consulting with
|
|
62
|
+
* THEOplayer support or engineering.
|
|
63
|
+
*/
|
|
64
|
+
needsTimescaleShifting?: boolean | null;
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* (Experimental) The desired timescale to which the media data should be shifted.
|
|
68
|
+
*
|
|
69
|
+
* @remarks
|
|
70
|
+
* <br/> - Available since v4.11.0.
|
|
71
|
+
* <br/> - Available on Web only.
|
|
72
|
+
* <br/> - When specified, if the player decides to shift the timescale (see {@link DashPlaybackConfiguration.needsTimescaleShifting}), the timescale will be set to the
|
|
73
|
+
* given desired timescale.
|
|
74
|
+
* <br/> - When not specified, if the player decides to shift timescale, the player will decide the timescale to which it should shift.
|
|
75
|
+
* <br/> - This is an experimental option. It should only be used after consulting with
|
|
76
|
+
* THEOplayer support or engineering.
|
|
77
|
+
*/
|
|
78
|
+
desiredTimescale?: number;
|
|
79
|
+
|
|
80
|
+
/**
|
|
81
|
+
* Whether the player should try to force the seek on period switching to realign video and audio.
|
|
82
|
+
*
|
|
83
|
+
* @internal
|
|
84
|
+
*
|
|
85
|
+
* @remarks
|
|
86
|
+
* <br/> - Available on Web only.
|
|
87
|
+
*/
|
|
88
|
+
forceSeekToSynchronize?: boolean;
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* (Experimental) Force the player to ignore the availability window of individual segments in the MPD,
|
|
92
|
+
* and instead consider every listed segment to be immediately available.
|
|
93
|
+
*
|
|
94
|
+
* @remarks
|
|
95
|
+
* <br/> - Available since v5.2.0.
|
|
96
|
+
* <br/> - Available on Web and Android.
|
|
97
|
+
* <br/> - This only applies to livestreams (with `<MPD type="dynamic">`).
|
|
98
|
+
* <br/> - This only applies to streams that use `<SegmentTimeline>`.
|
|
99
|
+
*/
|
|
100
|
+
ignoreAvailabilityWindow?: boolean;
|
|
45
101
|
}
|
|
@@ -121,13 +121,13 @@ export function hasTextTrackCue(textTrack: TextTrack, cue: TextTrackCue): boolea
|
|
|
121
121
|
return !!(textTrack.cues && cue && textTrack.cues.find((c) => cue.uid === c.uid));
|
|
122
122
|
}
|
|
123
123
|
|
|
124
|
-
export function removeTextTrackCue(textTrack
|
|
124
|
+
export function removeTextTrackCue(textTrack?: TextTrack, cue?: TextTrackCue) {
|
|
125
125
|
if (textTrack && textTrack.cues && cue && !hasTextTrackCue(textTrack, cue)) {
|
|
126
126
|
textTrack.cues = textTrack.cues.filter((c) => c.uid !== cue.uid);
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
export function addTextTrackCue(textTrack
|
|
130
|
+
export function addTextTrackCue(textTrack?: TextTrack, cue?: TextTrackCue) {
|
|
131
131
|
if (textTrack && textTrack.cues && cue && !hasTextTrackCue(textTrack, cue)) {
|
|
132
132
|
textTrack.cues.push(cue);
|
|
133
133
|
}
|
package/src/index.tsx
CHANGED
|
@@ -16,21 +16,26 @@ import type {
|
|
|
16
16
|
RateChangeEvent,
|
|
17
17
|
SourceDescription,
|
|
18
18
|
TextTrack,
|
|
19
|
+
TextTrackEvent,
|
|
19
20
|
TextTrackListEvent,
|
|
20
21
|
THEOplayer,
|
|
21
22
|
THEOplayerView,
|
|
22
23
|
TimeUpdateEvent,
|
|
23
24
|
} from 'react-native-theoplayer';
|
|
24
25
|
import {
|
|
26
|
+
addTextTrackCue,
|
|
25
27
|
addTrack,
|
|
26
28
|
AspectRatio,
|
|
27
29
|
findMediaTrackByUid,
|
|
30
|
+
findTextTrackByUid,
|
|
28
31
|
MediaTrackEventType,
|
|
29
32
|
MediaTrackType,
|
|
30
33
|
PlayerEventType,
|
|
31
34
|
PreloadType,
|
|
32
35
|
PresentationMode,
|
|
36
|
+
removeTextTrackCue,
|
|
33
37
|
removeTrack,
|
|
38
|
+
TextTrackEventType,
|
|
34
39
|
TextTrackMode,
|
|
35
40
|
TextTrackStyle,
|
|
36
41
|
TrackListEventType,
|
|
@@ -97,6 +102,7 @@ export class THEOplayerAdapter extends DefaultEventDispatcher<PlayerEventMap> im
|
|
|
97
102
|
this.addEventListener(PlayerEventType.SEEKED, this.onSeeked);
|
|
98
103
|
this.addEventListener(PlayerEventType.PROGRESS, this.onProgress);
|
|
99
104
|
this.addEventListener(PlayerEventType.TEXT_TRACK_LIST, this.onTextTrackList);
|
|
105
|
+
this.addEventListener(PlayerEventType.TEXT_TRACK, this.onTextTrack);
|
|
100
106
|
this.addEventListener(PlayerEventType.MEDIA_TRACK, this.onMediaTrack);
|
|
101
107
|
this.addEventListener(PlayerEventType.MEDIA_TRACK_LIST, this.onMediaTrackList);
|
|
102
108
|
this.addEventListener(PlayerEventType.PRESENTATIONMODE_CHANGE, this.onPresentationModeChange);
|
|
@@ -157,6 +163,19 @@ export class THEOplayerAdapter extends DefaultEventDispatcher<PlayerEventMap> im
|
|
|
157
163
|
this._state.buffered = event.buffered?.sort((a, b) => a.end - b.end);
|
|
158
164
|
};
|
|
159
165
|
|
|
166
|
+
private onTextTrack = (event: TextTrackEvent) => {
|
|
167
|
+
const { subType, cue, trackUid } = event;
|
|
168
|
+
const track = findTextTrackByUid(this._state.textTracks, trackUid);
|
|
169
|
+
switch (subType) {
|
|
170
|
+
case TextTrackEventType.ADD_CUE:
|
|
171
|
+
addTextTrackCue(track, cue);
|
|
172
|
+
break;
|
|
173
|
+
case TextTrackEventType.REMOVE_CUE:
|
|
174
|
+
removeTextTrackCue(track, cue);
|
|
175
|
+
break;
|
|
176
|
+
}
|
|
177
|
+
};
|
|
178
|
+
|
|
160
179
|
private onTextTrackList = (event: TextTrackListEvent) => {
|
|
161
180
|
const { subType, track } = event;
|
|
162
181
|
switch (subType) {
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
export interface FullscreenAPIMap {
|
|
2
|
+
requestFullscreen_: 'requestFullscreen';
|
|
3
|
+
exitFullscreen_: 'exitFullscreen';
|
|
4
|
+
fullscreenElement_: 'fullscreenElement';
|
|
5
|
+
fullscreenEnabled_: 'fullscreenEnabled';
|
|
6
|
+
fullscreenchange_: 'fullscreenchange';
|
|
7
|
+
fullscreenerror_: 'fullscreenerror';
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const fullscreenAPI: FullscreenAPIMap | undefined = (() => {
|
|
11
|
+
if (!document) {
|
|
12
|
+
return;
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
// browser API methods
|
|
16
|
+
// map approach from Screenful.js - https://github.com/sindresorhus/screenfull.js
|
|
17
|
+
const apiMap: string[][] = [
|
|
18
|
+
// Spec: https://dvcs.w3.org/hg/fullscreen/raw-file/tip/Overview.html
|
|
19
|
+
['requestFullscreen', 'exitFullscreen', 'fullscreenElement', 'fullscreenEnabled', 'fullscreenchange', 'fullscreenerror'],
|
|
20
|
+
// WebKit
|
|
21
|
+
[
|
|
22
|
+
'webkitRequestFullscreen',
|
|
23
|
+
'webkitExitFullscreen',
|
|
24
|
+
'webkitFullscreenElement',
|
|
25
|
+
'webkitFullscreenEnabled',
|
|
26
|
+
'webkitfullscreenchange',
|
|
27
|
+
'webkitfullscreenerror'
|
|
28
|
+
],
|
|
29
|
+
// Old WebKit (Safari 5.1)
|
|
30
|
+
[
|
|
31
|
+
'webkitRequestFullScreen',
|
|
32
|
+
'webkitCancelFullScreen',
|
|
33
|
+
'webkitCurrentFullScreenElement',
|
|
34
|
+
'webkitCancelFullScreen',
|
|
35
|
+
'webkitfullscreenchange',
|
|
36
|
+
'webkitfullscreenerror'
|
|
37
|
+
],
|
|
38
|
+
// Mozilla
|
|
39
|
+
['mozRequestFullScreen', 'mozCancelFullScreen', 'mozFullScreenElement', 'mozFullScreenEnabled', 'mozfullscreenchange', 'mozfullscreenerror'],
|
|
40
|
+
// Microsoft
|
|
41
|
+
['msRequestFullscreen', 'msExitFullscreen', 'msFullscreenElement', 'msFullscreenEnabled', 'MSFullscreenChange', 'MSFullscreenError']
|
|
42
|
+
];
|
|
43
|
+
|
|
44
|
+
for (const browserMap of apiMap) {
|
|
45
|
+
// check for exitFullscreen function
|
|
46
|
+
if (browserMap[1] in document) {
|
|
47
|
+
return {
|
|
48
|
+
requestFullscreen_: browserMap[0],
|
|
49
|
+
exitFullscreen_: browserMap[1],
|
|
50
|
+
fullscreenElement_: browserMap[2],
|
|
51
|
+
fullscreenEnabled_: browserMap[3],
|
|
52
|
+
fullscreenchange_: browserMap[4],
|
|
53
|
+
fullscreenerror_: browserMap[5]
|
|
54
|
+
} as FullscreenAPIMap;
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return undefined;
|
|
59
|
+
})();
|
|
@@ -2,8 +2,9 @@ import type { PlayerEventMap } from 'react-native-theoplayer';
|
|
|
2
2
|
import { PresentationMode } from 'react-native-theoplayer';
|
|
3
3
|
import type * as THEOplayerWeb from 'theoplayer';
|
|
4
4
|
import { DefaultPresentationModeChangeEvent } from '../event/PlayerEvents';
|
|
5
|
-
import { browserDetection } from '../../../web/platform/BrowserDetection';
|
|
6
5
|
import type { DefaultEventDispatcher } from '../event/DefaultEventDispatcher';
|
|
6
|
+
import { fullscreenAPI } from './FullscreenAPI';
|
|
7
|
+
import { noOp } from '../../utils/CommonUtils';
|
|
7
8
|
|
|
8
9
|
export class WebPresentationModeManager {
|
|
9
10
|
private readonly _player: THEOplayerWeb.ChromelessPlayer;
|
|
@@ -27,31 +28,36 @@ export class WebPresentationModeManager {
|
|
|
27
28
|
|
|
28
29
|
this.prepareForPresentationModeChanges();
|
|
29
30
|
|
|
30
|
-
|
|
31
|
-
|
|
31
|
+
if (fullscreenAPI !== undefined) {
|
|
32
|
+
// All other browsers
|
|
32
33
|
if (presentationMode === PresentationMode.fullscreen) {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
}
|
|
39
|
-
} else {
|
|
40
|
-
// other web-platformsyarn
|
|
41
|
-
|
|
42
|
-
if (presentationMode === PresentationMode.fullscreen) {
|
|
43
|
-
const appElement = document.getElementById('app');
|
|
44
|
-
void appElement?.requestFullscreen();
|
|
34
|
+
const appElement = document.getElementById('app')!;
|
|
35
|
+
const promise = appElement[fullscreenAPI.requestFullscreen_]();
|
|
36
|
+
if (promise && promise.then) {
|
|
37
|
+
promise.then(noOp, noOp);
|
|
38
|
+
}
|
|
45
39
|
} else if (presentationMode === PresentationMode.pip) {
|
|
46
40
|
void this._element?.requestPictureInPicture?.();
|
|
47
41
|
} else {
|
|
48
42
|
if (this._presentationMode === PresentationMode.fullscreen) {
|
|
49
|
-
|
|
43
|
+
const promise = document[fullscreenAPI.exitFullscreen_]();
|
|
44
|
+
if (promise && promise.then) {
|
|
45
|
+
promise.then(noOp, noOp);
|
|
46
|
+
}
|
|
50
47
|
}
|
|
51
48
|
if (this._presentationMode === PresentationMode.pip) {
|
|
52
49
|
void document.exitPictureInPicture();
|
|
53
50
|
}
|
|
54
51
|
}
|
|
52
|
+
} else {
|
|
53
|
+
// iOS Safari doesn't properly support fullscreen, use native fullscreen instead
|
|
54
|
+
if (presentationMode === PresentationMode.fullscreen) {
|
|
55
|
+
this._element?.webkitEnterFullscreen?.();
|
|
56
|
+
} else if (presentationMode === PresentationMode.pip) {
|
|
57
|
+
this._element?.webkitSetPresentationMode?.(PresentationMode.pip);
|
|
58
|
+
} else {
|
|
59
|
+
this._element?.webkitSetPresentationMode?.(PresentationMode.inline);
|
|
60
|
+
}
|
|
55
61
|
}
|
|
56
62
|
}
|
|
57
63
|
|
|
@@ -72,15 +78,16 @@ export class WebPresentationModeManager {
|
|
|
72
78
|
};
|
|
73
79
|
}
|
|
74
80
|
// listen for fullscreen updates on document
|
|
75
|
-
|
|
76
|
-
this.updatePresentationMode
|
|
77
|
-
|
|
81
|
+
if (fullscreenAPI !== undefined) {
|
|
82
|
+
document.addEventListener(fullscreenAPI.fullscreenchange_, this.updatePresentationMode);
|
|
83
|
+
document.addEventListener(fullscreenAPI.fullscreenerror_, this.updatePresentationMode);
|
|
84
|
+
}
|
|
78
85
|
}
|
|
79
86
|
|
|
80
|
-
private updatePresentationMode() {
|
|
87
|
+
private updatePresentationMode = () => {
|
|
81
88
|
// detect new presentation mode
|
|
82
89
|
let newPresentationMode: PresentationMode = PresentationMode.inline;
|
|
83
|
-
if (document.
|
|
90
|
+
if (fullscreenAPI !== undefined && document[fullscreenAPI.fullscreenElement_] !== null) {
|
|
84
91
|
newPresentationMode = PresentationMode.fullscreen;
|
|
85
92
|
} else if (document.pictureInPictureElement !== null) {
|
|
86
93
|
newPresentationMode = PresentationMode.pip;
|
|
@@ -92,5 +99,5 @@ export class WebPresentationModeManager {
|
|
|
92
99
|
this._presentationMode = newPresentationMode;
|
|
93
100
|
this._eventForwarder.dispatchEvent(new DefaultPresentationModeChangeEvent(this._presentationMode, previousPresentationMode));
|
|
94
101
|
}
|
|
95
|
-
}
|
|
102
|
+
};
|
|
96
103
|
}
|
|
Binary file
|
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.THEOplayerDefaultUi = THEOplayerDefaultUi;
|
|
7
|
-
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
-
var _reactNativeTheoplayer = require("react-native-theoplayer");
|
|
9
|
-
var _SeekBar = require("./components/seekbar/SeekBar");
|
|
10
|
-
var _AirplayButton = require("./components/button/AirplayButton");
|
|
11
|
-
var _ControlBar = require("./components/controlbar/ControlBar");
|
|
12
|
-
var _TimeLabel = require("./components/timelabel/TimeLabel");
|
|
13
|
-
var _FullscreenButton = require("./components/button/FullscreenButton");
|
|
14
|
-
var _LanguageMenuButton = require("./components/menu/LanguageMenuButton");
|
|
15
|
-
var _MuteButton = require("./components/button/MuteButton");
|
|
16
|
-
var _CastMessage = require("./components/message/CastMessage");
|
|
17
|
-
var _THEOplayerTheme = require("./THEOplayerTheme");
|
|
18
|
-
var _reactNative = require("react-native");
|
|
19
|
-
var _UiContainer = require("./components/uicontroller/UiContainer");
|
|
20
|
-
var _PlayButton = require("./components/button/PlayButton");
|
|
21
|
-
var _SkipButton = require("./components/button/SkipButton");
|
|
22
|
-
var _Spacer = require("./components/controlbar/Spacer");
|
|
23
|
-
var _ChromecastButton = require("./components/button/ChromecastButton");
|
|
24
|
-
var _CenteredDelayedActivityIndicator = require("./components/activityindicator/CenteredDelayedActivityIndicator");
|
|
25
|
-
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
|
26
|
-
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
27
|
-
/**
|
|
28
|
-
* A default UI layout which uses UI components from `react-native-theoplayer` to create a basic playback UI around a THEOplayerView.
|
|
29
|
-
*/
|
|
30
|
-
function THEOplayerDefaultUi(props) {
|
|
31
|
-
const {
|
|
32
|
-
theme,
|
|
33
|
-
config,
|
|
34
|
-
topSlot,
|
|
35
|
-
bottomSlot,
|
|
36
|
-
style
|
|
37
|
-
} = props;
|
|
38
|
-
const [player, setPlayer] = (0, _react.useState)(undefined);
|
|
39
|
-
const chromeless = (config === null || config === void 0 ? void 0 : config.chromeless) ?? false;
|
|
40
|
-
const onPlayerReady = player => {
|
|
41
|
-
var _props$onPlayerReady;
|
|
42
|
-
setPlayer(player);
|
|
43
|
-
(_props$onPlayerReady = props.onPlayerReady) === null || _props$onPlayerReady === void 0 ? void 0 : _props$onPlayerReady.call(props, player);
|
|
44
|
-
};
|
|
45
|
-
return /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
46
|
-
style: style
|
|
47
|
-
}, /*#__PURE__*/_react.default.createElement(_reactNative.View, {
|
|
48
|
-
style: [_reactNativeTheoplayer.FULLSCREEN_CENTER_STYLE, {
|
|
49
|
-
backgroundColor: '#000000'
|
|
50
|
-
}]
|
|
51
|
-
}), /*#__PURE__*/_react.default.createElement(_reactNativeTheoplayer.THEOplayerView, {
|
|
52
|
-
config: config,
|
|
53
|
-
onPlayerReady: onPlayerReady
|
|
54
|
-
}, player !== undefined && chromeless && /*#__PURE__*/_react.default.createElement(_UiContainer.UiContainer, {
|
|
55
|
-
theme: {
|
|
56
|
-
..._THEOplayerTheme.DEFAULT_THEOPLAYER_THEME,
|
|
57
|
-
...theme
|
|
58
|
-
},
|
|
59
|
-
player: player,
|
|
60
|
-
behind: /*#__PURE__*/_react.default.createElement(_CenteredDelayedActivityIndicator.CenteredDelayedActivityIndicator, {
|
|
61
|
-
size: 50
|
|
62
|
-
}),
|
|
63
|
-
top: /*#__PURE__*/_react.default.createElement(_ControlBar.ControlBar, null, topSlot, !_reactNative.Platform.isTV && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_AirplayButton.AirplayButton, null), /*#__PURE__*/_react.default.createElement(_ChromecastButton.ChromecastButton, null)), /*#__PURE__*/_react.default.createElement(_LanguageMenuButton.LanguageMenuButton, null)),
|
|
64
|
-
center: /*#__PURE__*/_react.default.createElement(_ControlBar.CenteredControlBar, {
|
|
65
|
-
left: /*#__PURE__*/_react.default.createElement(_SkipButton.SkipButton, {
|
|
66
|
-
skip: -10
|
|
67
|
-
}),
|
|
68
|
-
middle: /*#__PURE__*/_react.default.createElement(_PlayButton.PlayButton, null),
|
|
69
|
-
right: /*#__PURE__*/_react.default.createElement(_SkipButton.SkipButton, {
|
|
70
|
-
skip: 30
|
|
71
|
-
})
|
|
72
|
-
}),
|
|
73
|
-
bottom: /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement(_ControlBar.ControlBar, {
|
|
74
|
-
style: {
|
|
75
|
-
justifyContent: 'flex-start'
|
|
76
|
-
}
|
|
77
|
-
}, /*#__PURE__*/_react.default.createElement(_CastMessage.CastMessage, null)), /*#__PURE__*/_react.default.createElement(_ControlBar.ControlBar, null, /*#__PURE__*/_react.default.createElement(_SeekBar.SeekBar, null)), /*#__PURE__*/_react.default.createElement(_ControlBar.ControlBar, null, /*#__PURE__*/_react.default.createElement(_MuteButton.MuteButton, null), /*#__PURE__*/_react.default.createElement(_TimeLabel.TimeLabel, {
|
|
78
|
-
showDuration: true
|
|
79
|
-
}), /*#__PURE__*/_react.default.createElement(_Spacer.Spacer, null), bottomSlot, /*#__PURE__*/_react.default.createElement(_FullscreenButton.FullscreenButton, null)))
|
|
80
|
-
})));
|
|
81
|
-
}
|
|
82
|
-
//# sourceMappingURL=THEOplayerDefaultUi.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["_react","_interopRequireWildcard","require","_reactNativeTheoplayer","_SeekBar","_AirplayButton","_ControlBar","_TimeLabel","_FullscreenButton","_LanguageMenuButton","_MuteButton","_CastMessage","_THEOplayerTheme","_reactNative","_UiContainer","_PlayButton","_SkipButton","_Spacer","_ChromecastButton","_CenteredDelayedActivityIndicator","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","THEOplayerDefaultUi","props","theme","config","topSlot","bottomSlot","style","player","setPlayer","useState","undefined","chromeless","onPlayerReady","_props$onPlayerReady","createElement","View","FULLSCREEN_CENTER_STYLE","backgroundColor","THEOplayerView","UiContainer","DEFAULT_THEOPLAYER_THEME","behind","CenteredDelayedActivityIndicator","size","top","ControlBar","Platform","isTV","Fragment","AirplayButton","ChromecastButton","LanguageMenuButton","center","CenteredControlBar","left","SkipButton","skip","middle","PlayButton","right","bottom","justifyContent","CastMessage","SeekBar","MuteButton","TimeLabel","showDuration","Spacer","FullscreenButton"],"sources":["THEOplayerDefaultUi.tsx"],"sourcesContent":["import React, { ReactNode, useState } from 'react';\nimport { FULLSCREEN_CENTER_STYLE, PlayerConfiguration, THEOplayer, THEOplayerView } from 'react-native-theoplayer';\nimport { SeekBar } from './components/seekbar/SeekBar';\nimport { AirplayButton } from './components/button/AirplayButton';\nimport { CenteredControlBar, ControlBar } from './components/controlbar/ControlBar';\nimport { TimeLabel } from './components/timelabel/TimeLabel';\nimport { FullscreenButton } from './components/button/FullscreenButton';\nimport { LanguageMenuButton } from './components/menu/LanguageMenuButton';\nimport { MuteButton } from './components/button/MuteButton';\nimport { CastMessage } from './components/message/CastMessage';\nimport { DEFAULT_THEOPLAYER_THEME, THEOplayerTheme } from './THEOplayerTheme';\nimport { Platform, StyleProp, View, ViewStyle } from 'react-native';\nimport { UiContainer } from './components/uicontroller/UiContainer';\nimport { PlayButton } from './components/button/PlayButton';\nimport { SkipButton } from './components/button/SkipButton';\nimport { Spacer } from './components/controlbar/Spacer';\nimport { ChromecastButton } from './components/button/ChromecastButton';\nimport { CenteredDelayedActivityIndicator } from './components/activityindicator/CenteredDelayedActivityIndicator';\n\nexport interface THEOplayerDefaultUiProps {\n /**\n * The style for the container.\n */\n style?: StyleProp<ViewStyle>;\n /**\n * The theme for all components.\n */\n theme?: Partial<THEOplayerTheme>;\n /**\n * The player configuration with THEOplayer license.\n */\n config?: PlayerConfiguration;\n /**\n * The callback that is called when the internal THEOplayer is created.\n * @param player the internal THEOplayer\n */\n onPlayerReady?: (player: THEOplayer) => void;\n /**\n * A slot in the top right to add additional UI components.\n */\n topSlot?: ReactNode;\n /**\n * A slot in the bottom right to add additional UI components.\n */\n bottomSlot?: ReactNode;\n}\n\n/**\n * A default UI layout which uses UI components from `react-native-theoplayer` to create a basic playback UI around a THEOplayerView.\n */\nexport function THEOplayerDefaultUi(props: THEOplayerDefaultUiProps) {\n const { theme, config, topSlot, bottomSlot, style } = props;\n const [player, setPlayer] = useState<THEOplayer | undefined>(undefined);\n const chromeless = config?.chromeless ?? false;\n\n const onPlayerReady = (player: THEOplayer) => {\n setPlayer(player);\n props.onPlayerReady?.(player);\n };\n\n return (\n <View style={style}>\n <View style={[FULLSCREEN_CENTER_STYLE, { backgroundColor: '#000000' }]} />\n <THEOplayerView config={config} onPlayerReady={onPlayerReady}>\n {player !== undefined && chromeless && (\n <UiContainer\n theme={{ ...DEFAULT_THEOPLAYER_THEME, ...theme }}\n player={player}\n behind={<CenteredDelayedActivityIndicator size={50} />}\n top={\n <ControlBar>\n {topSlot}\n {!Platform.isTV && (\n <>\n <AirplayButton />\n <ChromecastButton />\n </>\n )}\n <LanguageMenuButton />\n </ControlBar>\n }\n center={<CenteredControlBar left={<SkipButton skip={-10} />} middle={<PlayButton />} right={<SkipButton skip={30} />} />}\n bottom={\n <>\n <ControlBar style={{ justifyContent: 'flex-start' }}>\n <CastMessage />\n </ControlBar>\n <ControlBar>\n <SeekBar />\n </ControlBar>\n\n <ControlBar>\n <MuteButton />\n <TimeLabel showDuration={true} />\n\n <Spacer />\n\n {bottomSlot}\n <FullscreenButton />\n </ControlBar>\n </>\n }\n />\n )}\n </THEOplayerView>\n </View>\n );\n}\n"],"mappings":"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"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.DEFAULT_THEOPLAYER_THEME = void 0;
|
|
7
|
-
/**
|
|
8
|
-
* The theme colors.
|
|
9
|
-
*/
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* The dimensions of various UI components.
|
|
13
|
-
*/
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
* The theme used by `react-native-theoplayer` UI components.
|
|
17
|
-
*/
|
|
18
|
-
|
|
19
|
-
/**
|
|
20
|
-
* The default theme for the UI.
|
|
21
|
-
*/
|
|
22
|
-
const DEFAULT_THEOPLAYER_THEME = {
|
|
23
|
-
colors: {
|
|
24
|
-
uiBackground: '#00000080',
|
|
25
|
-
errorBackground: '#2C2C2C',
|
|
26
|
-
icon: '#FFFFFF',
|
|
27
|
-
iconSelected: '#FFC50F',
|
|
28
|
-
text: '#FFFFFF',
|
|
29
|
-
textSelected: '#2C2C2C',
|
|
30
|
-
textSelectedBackground: '#FFFFFF',
|
|
31
|
-
seekBarMinimum: '#FFFFFF',
|
|
32
|
-
seekBarMaximum: '#FFFFFF50',
|
|
33
|
-
seekBarDot: '#FFFFFF'
|
|
34
|
-
},
|
|
35
|
-
text: {
|
|
36
|
-
textAlignVertical: 'center',
|
|
37
|
-
textAlign: 'center',
|
|
38
|
-
alignSelf: 'center',
|
|
39
|
-
fontSize: 16
|
|
40
|
-
},
|
|
41
|
-
fadeAnimationTimoutMs: 2500,
|
|
42
|
-
dimensions: {
|
|
43
|
-
controlBarHeight: 40,
|
|
44
|
-
centerControlBarHeight: 52
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
exports.DEFAULT_THEOPLAYER_THEME = DEFAULT_THEOPLAYER_THEME;
|
|
48
|
-
//# sourceMappingURL=THEOplayerTheme.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_THEOPLAYER_THEME","colors","uiBackground","errorBackground","icon","iconSelected","text","textSelected","textSelectedBackground","seekBarMinimum","seekBarMaximum","seekBarDot","textAlignVertical","textAlign","alignSelf","fontSize","fadeAnimationTimoutMs","dimensions","controlBarHeight","centerControlBarHeight","exports"],"sources":["THEOplayerTheme.ts"],"sourcesContent":["import type { TextStyle } from 'react-native';\n\n/**\n * The theme colors.\n */\nexport interface ColorTheme {\n /**\n * The color of the UI background.\n */\n uiBackground: string;\n /**\n * The color of the error display background.\n */\n errorBackground: string;\n /**\n * The color of the SVG icons.\n */\n icon: string;\n /**\n * The color of the SVG icons when they are selected.\n */\n iconSelected: string;\n /**\n * The color of the text components.\n */\n text: string;\n /**\n * The color of the text components when they are selected.\n */\n textSelected: string;\n /**\n * The color of the text component background when it is selected.\n */\n textSelectedBackground: string;\n /**\n * The color of the left side of the seek bar.\n */\n seekBarMinimum: string;\n /**\n * The color of the right side of the seek bar.\n */\n seekBarMaximum: string;\n /**\n * The color of the dot on the seek bar.\n */\n seekBarDot: string;\n}\n\n/**\n * The dimensions of various UI components.\n */\nexport interface Dimensions {\n /**\n * The height of the center control bar.\n */\n centerControlBarHeight: number;\n /**\n * The height of all other control bars.\n */\n controlBarHeight: number;\n}\n\n/**\n * The theme used by `react-native-theoplayer` UI components.\n */\nexport interface THEOplayerTheme {\n /**\n * The theme colors.\n */\n colors: ColorTheme;\n /**\n * The styling for all text components.\n */\n text: TextStyle;\n /**\n * The amount of time after a user action where UI animations will resume.\n */\n fadeAnimationTimoutMs: number;\n /**\n * The dimensions of various UI components.\n */\n dimensions: Dimensions;\n}\n\n/**\n * The default theme for the UI.\n */\nexport const DEFAULT_THEOPLAYER_THEME: THEOplayerTheme = {\n colors: {\n uiBackground: '#00000080',\n errorBackground: '#2C2C2C',\n icon: '#FFFFFF',\n iconSelected: '#FFC50F',\n text: '#FFFFFF',\n textSelected: '#2C2C2C',\n textSelectedBackground: '#FFFFFF',\n seekBarMinimum: '#FFFFFF',\n seekBarMaximum: '#FFFFFF50',\n seekBarDot: '#FFFFFF',\n },\n text: {\n textAlignVertical: 'center',\n textAlign: 'center',\n alignSelf: 'center',\n fontSize: 16,\n },\n fadeAnimationTimoutMs: 2500,\n dimensions: {\n controlBarHeight: 40,\n centerControlBarHeight: 52,\n },\n};\n"],"mappings":";;;;;;AAEA;AACA;AACA;;AA4CA;AACA;AACA;;AAYA;AACA;AACA;;AAoBA;AACA;AACA;AACO,MAAMA,wBAAyC,GAAG;EACvDC,MAAM,EAAE;IACNC,YAAY,EAAE,WAAW;IACzBC,eAAe,EAAE,SAAS;IAC1BC,IAAI,EAAE,SAAS;IACfC,YAAY,EAAE,SAAS;IACvBC,IAAI,EAAE,SAAS;IACfC,YAAY,EAAE,SAAS;IACvBC,sBAAsB,EAAE,SAAS;IACjCC,cAAc,EAAE,SAAS;IACzBC,cAAc,EAAE,WAAW;IAC3BC,UAAU,EAAE;EACd,CAAC;EACDL,IAAI,EAAE;IACJM,iBAAiB,EAAE,QAAQ;IAC3BC,SAAS,EAAE,QAAQ;IACnBC,SAAS,EAAE,QAAQ;IACnBC,QAAQ,EAAE;EACZ,CAAC;EACDC,qBAAqB,EAAE,IAAI;EAC3BC,UAAU,EAAE;IACVC,gBAAgB,EAAE,EAAE;IACpBC,sBAAsB,EAAE;EAC1B;AACF,CAAC;AAACC,OAAA,CAAApB,wBAAA,GAAAA,wBAAA"}
|