react-native-theoplayer 1.8.2 → 2.0.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 +248 -0
- package/README.md +7 -2
- package/android/build.gradle +46 -24
- package/android/local/com/theoplayer/android-connector/mediasession/4.11.0-local/mediasession-4.11.0-local.aar +0 -0
- package/android/local/com/theoplayer/android-connector/mediasession/4.11.0-local/mediasession-4.11.0-local.pom +15 -0
- package/android/local/com/theoplayer/android-connector/mediasession/maven-metadata-local.xml +13 -0
- package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/4.8.0/ads-wrapper-4.8.0.aar +0 -0
- package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/4.8.0/ads-wrapper-4.8.0.pom +9 -0
- package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/maven-metadata-local.xml +4 -4
- package/android/src/main/AndroidManifest.xml +46 -1
- package/android/src/main/java/com/theoplayer/PlayerConfigAdapter.kt +3 -1
- package/android/src/main/java/com/theoplayer/PlayerEventEmitter.kt +223 -181
- package/android/src/main/java/com/theoplayer/ReactTHEOplayerContext.kt +301 -0
- package/android/src/main/java/com/theoplayer/ReactTHEOplayerPackage.kt +2 -0
- package/android/src/main/java/com/theoplayer/ReactTHEOplayerView.kt +77 -381
- package/android/src/main/java/com/theoplayer/ReactTHEOplayerViewManager.kt +5 -78
- package/android/src/main/java/com/theoplayer/ads/AdsModule.kt +4 -4
- package/android/src/main/java/com/theoplayer/audio/AudioBecomingNoisyManager.kt +32 -0
- package/android/src/main/java/com/theoplayer/audio/BackgroundAudioConfig.kt +17 -0
- package/android/src/main/java/com/theoplayer/audio/BackgroundAudioConfigAdapter.kt +19 -0
- package/android/src/main/java/com/theoplayer/audio/MediaNotificationBuilder.kt +194 -0
- package/android/src/main/java/com/theoplayer/audio/MediaPlaybackService.kt +278 -0
- package/android/src/main/java/com/theoplayer/cast/CastModule.kt +11 -6
- package/android/src/main/java/com/theoplayer/drm/ContentProtectionModule.kt +8 -2
- package/android/src/main/java/com/theoplayer/player/PlayerModule.kt +178 -0
- package/android/src/main/java/com/theoplayer/presentation/PipConfig.kt +10 -0
- package/android/src/main/java/com/theoplayer/presentation/PipConfigAdapter.kt +14 -0
- package/android/src/main/java/com/theoplayer/presentation/PresentationManager.kt +249 -0
- package/android/src/main/java/com/theoplayer/presentation/PresentationModeChangeContext.kt +17 -0
- package/android/src/main/java/com/theoplayer/source/SourceAdapter.kt +6 -2
- package/android/src/main/java/com/theoplayer/track/QualityListAdapter.kt +8 -0
- package/android/src/main/java/com/theoplayer/track/TextTrackCueEventType.kt +3 -1
- package/android/src/main/java/com/theoplayer/track/TrackListAdapter.kt +22 -49
- package/android/src/main/java/com/theoplayer/util/PayloadBuilder.kt +242 -0
- package/android/src/main/java/com/theoplayer/util/ViewResolver.kt +3 -4
- package/android/src/main/res/drawable/ic_close.xml +13 -0
- package/android/src/main/res/drawable/ic_notification_small.xml +9 -0
- package/android/src/main/res/drawable/ic_pause.xml +13 -0
- package/android/src/main/res/drawable/ic_play.xml +13 -0
- package/android/src/main/res/values/colors.xml +4 -0
- package/android/src/main/res/values/strings.xml +9 -0
- package/ios/THEOplayerRCTBridge.m +60 -12
- package/ios/THEOplayerRCTDebug.swift +13 -1
- package/ios/THEOplayerRCTMainEventHandler.swift +101 -49
- package/ios/THEOplayerRCTPlayerAPI.swift +240 -0
- package/ios/THEOplayerRCTPresentationModeContext.swift +29 -0
- package/ios/THEOplayerRCTTextTrackEventHandler.swift +39 -3
- package/ios/THEOplayerRCTTrackEventTypes.swift +2 -0
- package/ios/THEOplayerRCTTrackMetadataAggregator.swift +9 -6
- package/ios/THEOplayerRCTTypeUtils.swift +42 -0
- package/ios/THEOplayerRCTView.swift +130 -288
- package/ios/THEOplayerRCTViewManager.swift +1 -1
- package/ios/ads/THEOplayerRCTAdAggregator.swift +1 -1
- package/ios/ads/THEOplayerRCTAdsAPI.swift +4 -2
- package/ios/ads/THEOplayerRCTAdsEventHandler.swift +2 -2
- package/ios/ads/THEOplayerRCTSourceDescriptionBuilder+Ads.swift +2 -2
- package/ios/ads/THEOplayerRCTView+Ads.swift +14 -1
- package/ios/ads/THEOplayerRCTView+AdsConfig.swift +8 -7
- package/ios/backgroundAudio/THEOplayerRCTNowPlayingManager.swift +254 -0
- package/ios/backgroundAudio/THEOplayerRCTRemoteCommandsManager.swift +238 -0
- package/ios/backgroundAudio/THEOplayerRCTView+BackgroundAudioConfig.swift +33 -0
- package/ios/casting/THEOplayerRCTCastAPI+Chromecast.swift +1 -1
- package/ios/casting/THEOplayerRCTCastEventHandler.swift +2 -2
- package/ios/casting/THEOplayerRCTView+Casting.swift +15 -0
- package/ios/contentprotection/THEOplayerRCTProxyContentProtectionIntegration.swift +66 -46
- package/ios/pip/THEOplayerRCTPipControlsManager.swift +145 -0
- package/ios/pip/THEOplayerRCTView+PipConfig.swift +56 -0
- package/ios/theofeatures.sh +16 -0
- package/lib/commonjs/api/THEOplayerView.js.map +1 -1
- package/lib/commonjs/api/abr/barrel.js +0 -2
- package/lib/commonjs/api/abr/barrel.js.map +1 -1
- package/lib/commonjs/api/ads/barrel.js +0 -16
- package/lib/commonjs/api/ads/barrel.js.map +1 -1
- package/lib/commonjs/api/backgroundAudio/BackgroundAudioConfiguration.js +2 -0
- package/lib/commonjs/api/backgroundAudio/BackgroundAudioConfiguration.js.map +1 -0
- package/lib/commonjs/api/backgroundAudio/barrel.js +17 -0
- package/lib/commonjs/api/backgroundAudio/barrel.js.map +1 -0
- package/lib/commonjs/api/barrel.js +52 -32
- package/lib/commonjs/api/barrel.js.map +1 -1
- package/lib/commonjs/api/cast/Airplay.js.map +1 -1
- package/lib/commonjs/api/cast/CastAPI.js.map +1 -1
- package/lib/commonjs/api/cast/CastState.js +22 -0
- package/lib/commonjs/api/cast/CastState.js.map +1 -1
- package/lib/commonjs/api/cast/Chromecast.js.map +1 -1
- package/lib/commonjs/api/cast/barrel.js +0 -10
- package/lib/commonjs/api/cast/barrel.js.map +1 -1
- package/lib/commonjs/api/config/PlayerConfiguration.js.map +1 -1
- package/lib/commonjs/api/config/barrel.js +0 -2
- package/lib/commonjs/api/config/barrel.js.map +1 -1
- package/lib/commonjs/api/drm/barrel.js +0 -10
- package/lib/commonjs/api/drm/barrel.js.map +1 -1
- package/lib/commonjs/api/error/barrel.js +0 -4
- package/lib/commonjs/api/error/barrel.js.map +1 -1
- package/lib/commonjs/api/event/AdEvent.js +24 -83
- package/lib/commonjs/api/event/AdEvent.js.map +1 -1
- package/lib/commonjs/api/event/CastEvent.js +8 -15
- package/lib/commonjs/api/event/CastEvent.js.map +1 -1
- package/lib/commonjs/api/event/Event.js +2 -0
- package/lib/commonjs/api/event/Event.js.map +1 -0
- package/lib/commonjs/api/event/EventDispatcher.js +6 -0
- package/lib/commonjs/api/event/EventDispatcher.js.map +1 -0
- package/lib/commonjs/api/event/EventListener.js +6 -0
- package/lib/commonjs/api/event/EventListener.js.map +1 -0
- package/lib/commonjs/api/event/PlayerEvent.js +7 -0
- package/lib/commonjs/api/event/PlayerEvent.js.map +1 -1
- package/lib/commonjs/api/event/TrackEvent.js +10 -15
- package/lib/commonjs/api/event/TrackEvent.js.map +1 -1
- package/lib/commonjs/api/event/barrel.js +11 -8
- package/lib/commonjs/api/event/barrel.js.map +1 -1
- package/lib/commonjs/api/media/MediaControlConfiguration.js +2 -0
- package/lib/commonjs/api/media/MediaControlConfiguration.js.map +1 -0
- package/lib/commonjs/api/media/barrel.js +17 -0
- package/lib/commonjs/api/media/barrel.js.map +1 -0
- package/lib/commonjs/api/pip/PiPConfiguration.js +2 -0
- package/lib/commonjs/api/pip/PiPConfiguration.js.map +1 -0
- package/lib/commonjs/api/pip/barrel.js +17 -0
- package/lib/commonjs/api/pip/barrel.js.map +1 -0
- package/lib/commonjs/api/player/PlayerEventMap.js +43 -0
- package/lib/commonjs/api/player/PlayerEventMap.js.map +1 -0
- package/lib/commonjs/api/player/THEOplayer.js +6 -0
- package/lib/commonjs/api/player/THEOplayer.js.map +1 -0
- package/lib/commonjs/api/player/barrel.js +28 -0
- package/lib/commonjs/api/player/barrel.js.map +1 -0
- package/lib/commonjs/api/presentation/PresentationMode.js +22 -0
- package/lib/commonjs/api/presentation/PresentationMode.js.map +1 -0
- package/lib/commonjs/api/presentation/barrel.js +17 -0
- package/lib/commonjs/api/presentation/barrel.js.map +1 -0
- package/lib/commonjs/api/source/ads/Ads.js +46 -0
- package/lib/commonjs/api/source/ads/Ads.js.map +1 -1
- package/lib/commonjs/api/source/ads/FreeWheelAdDescription.js.map +1 -1
- package/lib/commonjs/api/source/ads/IMAAdDescription.js.map +1 -1
- package/lib/commonjs/api/source/ads/barrel.js +0 -12
- package/lib/commonjs/api/source/ads/barrel.js.map +1 -1
- package/lib/commonjs/api/source/ads/ssai/barrel.js +0 -8
- package/lib/commonjs/api/source/ads/ssai/barrel.js.map +1 -1
- package/lib/commonjs/api/source/barrel.js +0 -12
- package/lib/commonjs/api/source/barrel.js.map +1 -1
- package/lib/commonjs/api/source/dash/barrel.js +0 -2
- package/lib/commonjs/api/source/dash/barrel.js.map +1 -1
- package/lib/commonjs/api/source/drm/barrel.js +0 -2
- package/lib/commonjs/api/source/drm/barrel.js.map +1 -1
- package/lib/commonjs/api/source/hls/barrel.js +0 -2
- package/lib/commonjs/api/source/hls/barrel.js.map +1 -1
- package/lib/commonjs/api/source/metadata/barrel.js +0 -2
- package/lib/commonjs/api/source/metadata/barrel.js.map +1 -1
- package/lib/commonjs/api/timeranges/barrel.js +0 -2
- package/lib/commonjs/api/timeranges/barrel.js.map +1 -1
- package/lib/commonjs/api/track/MediaTrack.js +1 -4
- package/lib/commonjs/api/track/MediaTrack.js.map +1 -1
- package/lib/commonjs/api/track/TextTrack.js +29 -24
- package/lib/commonjs/api/track/TextTrack.js.map +1 -1
- package/lib/commonjs/api/track/TextTrackStyle.js +2 -0
- package/lib/commonjs/api/track/TextTrackStyle.js.map +1 -0
- package/lib/commonjs/api/track/Track.js +25 -0
- package/lib/commonjs/api/track/Track.js.map +1 -1
- package/lib/commonjs/api/track/barrel.js +11 -10
- package/lib/commonjs/api/track/barrel.js.map +1 -1
- package/lib/commonjs/api/utils/TypeUtils.js +6 -14
- package/lib/commonjs/api/utils/TypeUtils.js.map +1 -1
- package/lib/commonjs/api/utils/barrel.js +0 -2
- package/lib/commonjs/api/utils/barrel.js.map +1 -1
- package/lib/commonjs/index.js +12 -4
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/internal/THEOplayerView.js +103 -235
- package/lib/commonjs/internal/THEOplayerView.js.map +1 -1
- package/lib/commonjs/internal/THEOplayerView.style.js +0 -3
- package/lib/commonjs/internal/THEOplayerView.style.js.map +1 -1
- package/lib/commonjs/internal/THEOplayerView.web.js +69 -589
- package/lib/commonjs/internal/THEOplayerView.web.js.map +1 -1
- package/lib/commonjs/internal/adapter/NativePlayerState.js +6 -0
- package/lib/commonjs/internal/adapter/NativePlayerState.js.map +1 -0
- package/lib/commonjs/internal/adapter/THEOplayerAdapter.js +392 -0
- package/lib/commonjs/internal/adapter/THEOplayerAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js +233 -0
- package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/WebEventForwarder.js +280 -0
- package/lib/commonjs/internal/adapter/WebEventForwarder.js.map +1 -0
- package/lib/commonjs/internal/adapter/abr/AbrAdapter.js +40 -0
- package/lib/commonjs/internal/adapter/abr/AbrAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerNativeAdsAdapter.js +41 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerNativeAdsAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerNativeGoogleDAI.js +26 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerNativeGoogleDAI.js.map +1 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerWebAdsAdapter.js +58 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerWebAdsAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerWebGoogleDAI.js +25 -0
- package/lib/commonjs/internal/adapter/ads/THEOplayerWebGoogleDAI.js.map +1 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeAirplay.js +47 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeAirplay.js.map +1 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeCastAdapter.js +46 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeCastAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeChromecast.js +55 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerNativeChromecast.js.map +1 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerWebCastAdapter.js +29 -0
- package/lib/commonjs/internal/adapter/cast/THEOplayerWebCastAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/BaseEvent.js +15 -0
- package/lib/commonjs/internal/adapter/event/BaseEvent.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/DefaultEventDispatcher.js +42 -0
- package/lib/commonjs/internal/adapter/event/DefaultEventDispatcher.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/PlayerEvents.js +166 -0
- package/lib/commonjs/internal/adapter/event/PlayerEvents.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/native/NativeAdEvent.js +6 -0
- package/lib/commonjs/internal/adapter/event/native/NativeAdEvent.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/native/NativeCastEvent.js +6 -0
- package/lib/commonjs/internal/adapter/event/native/NativeCastEvent.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/native/NativePlayerEvent.js +6 -0
- package/lib/commonjs/internal/adapter/event/native/NativePlayerEvent.js.map +1 -0
- package/lib/commonjs/internal/adapter/event/native/NativeTrackEvent.js +74 -0
- package/lib/commonjs/internal/adapter/event/native/NativeTrackEvent.js.map +1 -0
- package/lib/commonjs/internal/adapter/track/TextTrackStyleAdapter.js +51 -0
- package/lib/commonjs/internal/adapter/track/TextTrackStyleAdapter.js.map +1 -0
- package/lib/commonjs/internal/adapter/web/TrackUtils.js +87 -0
- package/lib/commonjs/internal/adapter/web/TrackUtils.js.map +1 -0
- package/lib/commonjs/internal/adapter/web/WebMediaSession.js +188 -0
- package/lib/commonjs/internal/adapter/web/WebMediaSession.js.map +1 -0
- package/lib/commonjs/internal/adapter/web/WebPresentationModeManager.js +101 -0
- package/lib/commonjs/internal/adapter/web/WebPresentationModeManager.js.map +1 -0
- package/lib/commonjs/internal/drm/ContentProtectionRegistry.js +13 -50
- package/lib/commonjs/internal/drm/ContentProtectionRegistry.js.map +1 -1
- package/lib/commonjs/internal/drm/ContentProtectionRegistry.web.js +0 -4
- package/lib/commonjs/internal/drm/ContentProtectionRegistry.web.js.map +1 -1
- package/lib/commonjs/internal/drm/NativeCertificateRequest.js +0 -3
- package/lib/commonjs/internal/drm/NativeCertificateRequest.js.map +1 -1
- package/lib/commonjs/internal/drm/NativeCertificateResponse.js +0 -4
- package/lib/commonjs/internal/drm/NativeCertificateResponse.js.map +1 -1
- package/lib/commonjs/internal/drm/NativeLicenseRequest.js +0 -3
- package/lib/commonjs/internal/drm/NativeLicenseRequest.js.map +1 -1
- package/lib/commonjs/internal/drm/NativeLicenseResponse.js +0 -4
- package/lib/commonjs/internal/drm/NativeLicenseResponse.js.map +1 -1
- package/lib/commonjs/internal/utils/TypeUtils.js +2 -8
- package/lib/commonjs/internal/utils/TypeUtils.js.map +1 -1
- package/lib/commonjs/internal/utils/arrayUtil.js +19 -0
- package/lib/commonjs/internal/utils/arrayUtil.js.map +1 -0
- package/lib/commonjs/ui/THEOplayerDefaultUi.js +82 -0
- package/lib/commonjs/ui/THEOplayerDefaultUi.js.map +1 -0
- package/lib/commonjs/ui/THEOplayerTheme.js +48 -0
- package/lib/commonjs/ui/THEOplayerTheme.js.map +1 -0
- package/lib/commonjs/ui/barrel.js +39 -0
- package/lib/commonjs/ui/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/activityindicator/CenteredDelayedActivityIndicator.js +99 -0
- package/lib/commonjs/ui/components/activityindicator/CenteredDelayedActivityIndicator.js.map +1 -0
- package/lib/commonjs/ui/components/activityindicator/DelayedActivityIndicator.js +35 -0
- package/lib/commonjs/ui/components/activityindicator/DelayedActivityIndicator.js.map +1 -0
- package/lib/commonjs/ui/components/activityindicator/barrel.js +28 -0
- package/lib/commonjs/ui/components/activityindicator/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/barrel.js +105 -0
- package/lib/commonjs/ui/components/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/button/AirplayButton.js +81 -0
- package/lib/commonjs/ui/components/button/AirplayButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/ChromecastButton.js +66 -0
- package/lib/commonjs/ui/components/button/ChromecastButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/ChromecastButton.web.js +82 -0
- package/lib/commonjs/ui/components/button/ChromecastButton.web.js.map +1 -0
- package/lib/commonjs/ui/components/button/FullscreenButton.js +72 -0
- package/lib/commonjs/ui/components/button/FullscreenButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/MuteButton.js +66 -0
- package/lib/commonjs/ui/components/button/MuteButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/PipButton.js +72 -0
- package/lib/commonjs/ui/components/button/PipButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/PlayButton.js +113 -0
- package/lib/commonjs/ui/components/button/PlayButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/SkipButton.js +122 -0
- package/lib/commonjs/ui/components/button/SkipButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/actionbutton/ActionButton.js +82 -0
- package/lib/commonjs/ui/components/button/actionbutton/ActionButton.js.map +1 -0
- package/lib/commonjs/ui/components/button/barrel.js +105 -0
- package/lib/commonjs/ui/components/button/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/AirplaySvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/AirplaySvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ArrowForwardSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ArrowForwardSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/BackSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/BackSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/BackwardSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/BackwardSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ChromecastSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ChromecastSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ErrorSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ErrorSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ForwardSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ForwardSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/FullscreenEnterSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/FullscreenEnterSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/FullscreenExitSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/FullscreenExitSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/LanguageSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/LanguageSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ListSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ListSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/PauseSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/PauseSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/PipEnterSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/PipEnterSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/PipExitSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/PipExitSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/PlaySvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/PlaySvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/ReplaySvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/ReplaySvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/SettingsSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/SettingsSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/SvgUtils.js +13 -0
- package/lib/commonjs/ui/components/button/svg/SvgUtils.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/VolumeOffSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/VolumeOffSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/VolumeUpSvg.js +22 -0
- package/lib/commonjs/ui/components/button/svg/VolumeUpSvg.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/barrel.js +226 -0
- package/lib/commonjs/ui/components/button/svg/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/button/svg/res/AirPlayButton.html +6 -0
- package/lib/commonjs/ui/components/button/svg/res/Airplay.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/ChromecastButton.html +25 -0
- package/lib/commonjs/ui/components/button/svg/res/arrow_forward.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/back.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/backward.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/chromecast-48px.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/close.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/error.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/forward.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/fullscreen-enter.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/fullscreen-exit.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/language.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/list.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/live.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/pause.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/pip_enter.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/pip_exit.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/play.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/replay.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/settings.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/skip-next.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/volume-high.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/volume-low.svg +1 -0
- package/lib/commonjs/ui/components/button/svg/res/volume-off.svg +1 -0
- package/lib/commonjs/ui/components/controlbar/ControlBar.js +61 -0
- package/lib/commonjs/ui/components/controlbar/ControlBar.js.map +1 -0
- package/lib/commonjs/ui/components/controlbar/Spacer.js +21 -0
- package/lib/commonjs/ui/components/controlbar/Spacer.js.map +1 -0
- package/lib/commonjs/ui/components/controlbar/barrel.js +28 -0
- package/lib/commonjs/ui/components/controlbar/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/menu/LanguageMenuButton.js +175 -0
- package/lib/commonjs/ui/components/menu/LanguageMenuButton.js.map +1 -0
- package/lib/commonjs/ui/components/menu/PlaybackRateSubMenu.js +91 -0
- package/lib/commonjs/ui/components/menu/PlaybackRateSubMenu.js.map +1 -0
- package/lib/commonjs/ui/components/menu/QualitySubMenu.js +145 -0
- package/lib/commonjs/ui/components/menu/QualitySubMenu.js.map +1 -0
- package/lib/commonjs/ui/components/menu/SettingsMenuButton.js +36 -0
- package/lib/commonjs/ui/components/menu/SettingsMenuButton.js.map +1 -0
- package/lib/commonjs/ui/components/menu/barrel.js +61 -0
- package/lib/commonjs/ui/components/menu/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/MenuButton.js +34 -0
- package/lib/commonjs/ui/components/menu/common/MenuButton.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/MenuRadioButton.js +47 -0
- package/lib/commonjs/ui/components/menu/common/MenuRadioButton.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/MenuTitle.js +38 -0
- package/lib/commonjs/ui/components/menu/common/MenuTitle.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/MenuView.js +75 -0
- package/lib/commonjs/ui/components/menu/common/MenuView.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/ScrollableMenu.js +45 -0
- package/lib/commonjs/ui/components/menu/common/ScrollableMenu.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/SubMenuWithButton.js +65 -0
- package/lib/commonjs/ui/components/menu/common/SubMenuWithButton.js.map +1 -0
- package/lib/commonjs/ui/components/menu/common/barrel.js +72 -0
- package/lib/commonjs/ui/components/menu/common/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/message/CastMessage.js +79 -0
- package/lib/commonjs/ui/components/message/CastMessage.js.map +1 -0
- package/lib/commonjs/ui/components/message/ErrorDisplay.js +53 -0
- package/lib/commonjs/ui/components/message/ErrorDisplay.js.map +1 -0
- package/lib/commonjs/ui/components/message/barrel.js +28 -0
- package/lib/commonjs/ui/components/message/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/SeekBar.js +194 -0
- package/lib/commonjs/ui/components/seekbar/SeekBar.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/barrel.js +28 -0
- package/lib/commonjs/ui/components/seekbar/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/SingleThumbnailView.js +45 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/SingleThumbnailView.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Thumbnail.js +18 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Thumbnail.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/ThumbnailView.js +256 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/ThumbnailView.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.js +17 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.web.js +17 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/Urlpolyfill.web.js.map +1 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/barrel.js +28 -0
- package/lib/commonjs/ui/components/seekbar/thumbnail/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/timelabel/StaticTimeLabel.js +55 -0
- package/lib/commonjs/ui/components/timelabel/StaticTimeLabel.js.map +1 -0
- package/lib/commonjs/ui/components/timelabel/TimeLabel.js +88 -0
- package/lib/commonjs/ui/components/timelabel/TimeLabel.js.map +1 -0
- package/lib/commonjs/ui/components/timelabel/barrel.js +28 -0
- package/lib/commonjs/ui/components/timelabel/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/uicontroller/UiContainer.js +350 -0
- package/lib/commonjs/ui/components/uicontroller/UiContainer.js.map +1 -0
- package/lib/commonjs/ui/components/uicontroller/UiControls.js +6 -0
- package/lib/commonjs/ui/components/uicontroller/UiControls.js.map +1 -0
- package/lib/commonjs/ui/components/uicontroller/barrel.js +28 -0
- package/lib/commonjs/ui/components/uicontroller/barrel.js.map +1 -0
- package/lib/commonjs/ui/components/util/PlayerContext.js +19 -0
- package/lib/commonjs/ui/components/util/PlayerContext.js.map +1 -0
- package/lib/commonjs/ui/components/util/TrackUtils.js +69 -0
- package/lib/commonjs/ui/components/util/TrackUtils.js.map +1 -0
- package/lib/commonjs/ui/components/util/barrel.js +17 -0
- package/lib/commonjs/ui/components/util/barrel.js.map +1 -0
- package/lib/commonjs/ui/utils/ArrayUtils.js +19 -0
- package/lib/commonjs/ui/utils/ArrayUtils.js.map +1 -0
- package/lib/commonjs/ui/utils/language/Language.js +38 -0
- package/lib/commonjs/ui/utils/language/Language.js.map +1 -0
- package/lib/commonjs/ui/utils/language/languages.json +1658 -0
- package/lib/commonjs/web/platform/BrowserDetection.js +34 -0
- package/lib/commonjs/web/platform/BrowserDetection.js.map +1 -0
- package/lib/commonjs/web/platform/browser.d.js +2 -0
- package/lib/commonjs/web/platform/browser.d.js.map +1 -0
- package/lib/module/api/THEOplayerView.js.map +1 -1
- package/lib/module/api/abr/barrel.js.map +1 -1
- package/lib/module/api/ads/barrel.js.map +1 -1
- package/lib/module/api/backgroundAudio/BackgroundAudioConfiguration.js +2 -0
- package/lib/module/api/backgroundAudio/BackgroundAudioConfiguration.js.map +1 -0
- package/lib/module/api/backgroundAudio/barrel.js +2 -0
- package/lib/module/api/backgroundAudio/barrel.js.map +1 -0
- package/lib/module/api/barrel.js +4 -0
- package/lib/module/api/barrel.js.map +1 -1
- package/lib/module/api/cast/Airplay.js.map +1 -1
- package/lib/module/api/cast/CastAPI.js.map +1 -1
- package/lib/module/api/cast/CastState.js +16 -1
- package/lib/module/api/cast/CastState.js.map +1 -1
- package/lib/module/api/cast/Chromecast.js.map +1 -1
- package/lib/module/api/cast/barrel.js.map +1 -1
- package/lib/module/api/config/PlayerConfiguration.js.map +1 -1
- package/lib/module/api/config/barrel.js.map +1 -1
- package/lib/module/api/drm/barrel.js.map +1 -1
- package/lib/module/api/error/barrel.js.map +1 -1
- package/lib/module/api/event/AdEvent.js +22 -81
- package/lib/module/api/event/AdEvent.js.map +1 -1
- package/lib/module/api/event/CastEvent.js +6 -13
- package/lib/module/api/event/CastEvent.js.map +1 -1
- package/lib/module/api/event/Event.js +2 -0
- package/lib/module/api/event/Event.js.map +1 -0
- package/lib/module/api/event/EventDispatcher.js +2 -0
- package/lib/module/api/event/EventDispatcher.js.map +1 -0
- package/lib/module/api/event/EventListener.js +2 -0
- package/lib/module/api/event/EventListener.js.map +1 -0
- package/lib/module/api/event/PlayerEvent.js +5 -1
- package/lib/module/api/event/PlayerEvent.js.map +1 -1
- package/lib/module/api/event/TrackEvent.js +10 -15
- package/lib/module/api/event/TrackEvent.js.map +1 -1
- package/lib/module/api/event/barrel.js +1 -0
- package/lib/module/api/event/barrel.js.map +1 -1
- package/lib/module/api/media/MediaControlConfiguration.js +2 -0
- package/lib/module/api/media/MediaControlConfiguration.js.map +1 -0
- package/lib/module/api/media/barrel.js +2 -0
- package/lib/module/api/media/barrel.js.map +1 -0
- package/lib/module/api/pip/PiPConfiguration.js +2 -0
- package/lib/module/api/pip/PiPConfiguration.js.map +1 -0
- package/lib/module/api/pip/barrel.js +2 -0
- package/lib/module/api/pip/barrel.js.map +1 -0
- package/lib/module/api/player/PlayerEventMap.js +37 -0
- package/lib/module/api/player/PlayerEventMap.js.map +1 -0
- package/lib/module/api/player/THEOplayer.js +2 -0
- package/lib/module/api/player/THEOplayer.js.map +1 -0
- package/lib/module/api/player/barrel.js +3 -0
- package/lib/module/api/player/barrel.js.map +1 -0
- package/lib/module/api/presentation/PresentationMode.js +16 -0
- package/lib/module/api/presentation/PresentationMode.js.map +1 -0
- package/lib/module/api/presentation/barrel.js +2 -0
- package/lib/module/api/presentation/barrel.js.map +1 -0
- package/lib/module/api/source/ads/Ads.js +42 -0
- package/lib/module/api/source/ads/Ads.js.map +1 -1
- package/lib/module/api/source/ads/FreeWheelAdDescription.js.map +1 -1
- package/lib/module/api/source/ads/IMAAdDescription.js.map +1 -1
- package/lib/module/api/source/ads/barrel.js.map +1 -1
- package/lib/module/api/source/ads/ssai/barrel.js.map +1 -1
- package/lib/module/api/source/barrel.js.map +1 -1
- package/lib/module/api/source/dash/barrel.js.map +1 -1
- package/lib/module/api/source/drm/barrel.js.map +1 -1
- package/lib/module/api/source/hls/barrel.js.map +1 -1
- package/lib/module/api/source/metadata/barrel.js.map +1 -1
- package/lib/module/api/timeranges/barrel.js.map +1 -1
- package/lib/module/api/track/MediaTrack.js +1 -1
- package/lib/module/api/track/MediaTrack.js.map +1 -1
- package/lib/module/api/track/TextTrack.js +25 -11
- package/lib/module/api/track/TextTrack.js.map +1 -1
- package/lib/module/api/track/TextTrackStyle.js +2 -0
- package/lib/module/api/track/TextTrackStyle.js.map +1 -0
- package/lib/module/api/track/Track.js +17 -0
- package/lib/module/api/track/Track.js.map +1 -1
- package/lib/module/api/track/barrel.js +1 -0
- package/lib/module/api/track/barrel.js.map +1 -1
- package/lib/module/api/utils/TypeUtils.js +8 -4
- package/lib/module/api/utils/TypeUtils.js.map +1 -1
- package/lib/module/api/utils/barrel.js.map +1 -1
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/module/internal/THEOplayerView.js +104 -224
- package/lib/module/internal/THEOplayerView.js.map +1 -1
- package/lib/module/internal/THEOplayerView.style.js.map +1 -1
- package/lib/module/internal/THEOplayerView.web.js +69 -578
- package/lib/module/internal/THEOplayerView.web.js.map +1 -1
- package/lib/module/internal/adapter/NativePlayerState.js +2 -0
- package/lib/module/internal/adapter/NativePlayerState.js.map +1 -0
- package/lib/module/internal/adapter/THEOplayerAdapter.js +385 -0
- package/lib/module/internal/adapter/THEOplayerAdapter.js.map +1 -0
- package/lib/module/internal/adapter/THEOplayerWebAdapter.js +226 -0
- package/lib/module/internal/adapter/THEOplayerWebAdapter.js.map +1 -0
- package/lib/module/internal/adapter/WebEventForwarder.js +273 -0
- package/lib/module/internal/adapter/WebEventForwarder.js.map +1 -0
- package/lib/module/internal/adapter/abr/AbrAdapter.js +33 -0
- package/lib/module/internal/adapter/abr/AbrAdapter.js.map +1 -0
- package/lib/module/internal/adapter/ads/THEOplayerNativeAdsAdapter.js +34 -0
- package/lib/module/internal/adapter/ads/THEOplayerNativeAdsAdapter.js.map +1 -0
- package/lib/module/internal/adapter/ads/THEOplayerNativeGoogleDAI.js +19 -0
- package/lib/module/internal/adapter/ads/THEOplayerNativeGoogleDAI.js.map +1 -0
- package/lib/module/internal/adapter/ads/THEOplayerWebAdsAdapter.js +51 -0
- package/lib/module/internal/adapter/ads/THEOplayerWebAdsAdapter.js.map +1 -0
- package/lib/module/internal/adapter/ads/THEOplayerWebGoogleDAI.js +18 -0
- package/lib/module/internal/adapter/ads/THEOplayerWebGoogleDAI.js.map +1 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeAirplay.js +40 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeAirplay.js.map +1 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeCastAdapter.js +39 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeCastAdapter.js.map +1 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeChromecast.js +48 -0
- package/lib/module/internal/adapter/cast/THEOplayerNativeChromecast.js.map +1 -0
- package/lib/module/internal/adapter/cast/THEOplayerWebCastAdapter.js +22 -0
- package/lib/module/internal/adapter/cast/THEOplayerWebCastAdapter.js.map +1 -0
- package/lib/module/internal/adapter/event/BaseEvent.js +8 -0
- package/lib/module/internal/adapter/event/BaseEvent.js.map +1 -0
- package/lib/module/internal/adapter/event/DefaultEventDispatcher.js +35 -0
- package/lib/module/internal/adapter/event/DefaultEventDispatcher.js.map +1 -0
- package/lib/module/internal/adapter/event/PlayerEvents.js +142 -0
- package/lib/module/internal/adapter/event/PlayerEvents.js.map +1 -0
- package/lib/module/internal/adapter/event/native/NativeAdEvent.js +2 -0
- package/lib/module/internal/adapter/event/native/NativeAdEvent.js.map +1 -0
- package/lib/module/internal/adapter/event/native/NativeCastEvent.js +2 -0
- package/lib/module/internal/adapter/event/native/NativeCastEvent.js.map +1 -0
- package/lib/module/internal/adapter/event/native/NativePlayerEvent.js +2 -0
- package/lib/module/internal/adapter/event/native/NativePlayerEvent.js.map +1 -0
- package/lib/module/internal/adapter/event/native/NativeTrackEvent.js +60 -0
- package/lib/module/internal/adapter/event/native/NativeTrackEvent.js.map +1 -0
- package/lib/module/internal/adapter/track/TextTrackStyleAdapter.js +44 -0
- package/lib/module/internal/adapter/track/TextTrackStyleAdapter.js.map +1 -0
- package/lib/module/internal/adapter/web/TrackUtils.js +75 -0
- package/lib/module/internal/adapter/web/TrackUtils.js.map +1 -0
- package/lib/module/internal/adapter/web/WebMediaSession.js +182 -0
- package/lib/module/internal/adapter/web/WebMediaSession.js.map +1 -0
- package/lib/module/internal/adapter/web/WebPresentationModeManager.js +94 -0
- package/lib/module/internal/adapter/web/WebPresentationModeManager.js.map +1 -0
- package/lib/module/internal/drm/ContentProtectionRegistry.js +13 -32
- package/lib/module/internal/drm/ContentProtectionRegistry.js.map +1 -1
- package/lib/module/internal/drm/ContentProtectionRegistry.web.js +0 -1
- package/lib/module/internal/drm/ContentProtectionRegistry.web.js.map +1 -1
- package/lib/module/internal/drm/NativeCertificateRequest.js.map +1 -1
- package/lib/module/internal/drm/NativeCertificateResponse.js.map +1 -1
- package/lib/module/internal/drm/NativeLicenseRequest.js.map +1 -1
- package/lib/module/internal/drm/NativeLicenseResponse.js.map +1 -1
- package/lib/module/internal/utils/TypeUtils.js +2 -3
- package/lib/module/internal/utils/TypeUtils.js.map +1 -1
- package/lib/module/internal/utils/arrayUtil.js +12 -0
- package/lib/module/internal/utils/arrayUtil.js.map +1 -0
- package/lib/module/ui/THEOplayerDefaultUi.js +74 -0
- package/lib/module/ui/THEOplayerDefaultUi.js.map +1 -0
- package/lib/module/ui/THEOplayerTheme.js +41 -0
- package/lib/module/ui/THEOplayerTheme.js.map +1 -0
- package/lib/module/ui/barrel.js +4 -0
- package/lib/module/ui/barrel.js.map +1 -0
- package/lib/module/ui/components/activityindicator/CenteredDelayedActivityIndicator.js +90 -0
- package/lib/module/ui/components/activityindicator/CenteredDelayedActivityIndicator.js.map +1 -0
- package/lib/module/ui/components/activityindicator/DelayedActivityIndicator.js +26 -0
- package/lib/module/ui/components/activityindicator/DelayedActivityIndicator.js.map +1 -0
- package/lib/module/ui/components/activityindicator/barrel.js +3 -0
- package/lib/module/ui/components/activityindicator/barrel.js.map +1 -0
- package/lib/module/ui/components/barrel.js +10 -0
- package/lib/module/ui/components/barrel.js.map +1 -0
- package/lib/module/ui/components/button/AirplayButton.js +72 -0
- package/lib/module/ui/components/button/AirplayButton.js.map +1 -0
- package/lib/module/ui/components/button/ChromecastButton.js +56 -0
- package/lib/module/ui/components/button/ChromecastButton.js.map +1 -0
- package/lib/module/ui/components/button/ChromecastButton.web.js +72 -0
- package/lib/module/ui/components/button/ChromecastButton.web.js.map +1 -0
- package/lib/module/ui/components/button/FullscreenButton.js +63 -0
- package/lib/module/ui/components/button/FullscreenButton.js.map +1 -0
- package/lib/module/ui/components/button/MuteButton.js +57 -0
- package/lib/module/ui/components/button/MuteButton.js.map +1 -0
- package/lib/module/ui/components/button/PipButton.js +63 -0
- package/lib/module/ui/components/button/PipButton.js.map +1 -0
- package/lib/module/ui/components/button/PlayButton.js +104 -0
- package/lib/module/ui/components/button/PlayButton.js.map +1 -0
- package/lib/module/ui/components/button/SkipButton.js +113 -0
- package/lib/module/ui/components/button/SkipButton.js.map +1 -0
- package/lib/module/ui/components/button/actionbutton/ActionButton.js +72 -0
- package/lib/module/ui/components/button/actionbutton/ActionButton.js.map +1 -0
- package/lib/module/ui/components/button/barrel.js +10 -0
- package/lib/module/ui/components/button/barrel.js.map +1 -0
- package/lib/module/ui/components/button/svg/AirplaySvg.js +12 -0
- package/lib/module/ui/components/button/svg/AirplaySvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ArrowForwardSvg.js +12 -0
- package/lib/module/ui/components/button/svg/ArrowForwardSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/BackSvg.js +12 -0
- package/lib/module/ui/components/button/svg/BackSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/BackwardSvg.js +12 -0
- package/lib/module/ui/components/button/svg/BackwardSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ChromecastSvg.js +12 -0
- package/lib/module/ui/components/button/svg/ChromecastSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ErrorSvg.js +12 -0
- package/lib/module/ui/components/button/svg/ErrorSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ForwardSvg.js +12 -0
- package/lib/module/ui/components/button/svg/ForwardSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/FullscreenEnterSvg.js +12 -0
- package/lib/module/ui/components/button/svg/FullscreenEnterSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/FullscreenExitSvg.js +12 -0
- package/lib/module/ui/components/button/svg/FullscreenExitSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/LanguageSvg.js +12 -0
- package/lib/module/ui/components/button/svg/LanguageSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ListSvg.js +12 -0
- package/lib/module/ui/components/button/svg/ListSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/PauseSvg.js +12 -0
- package/lib/module/ui/components/button/svg/PauseSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/PipEnterSvg.js +12 -0
- package/lib/module/ui/components/button/svg/PipEnterSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/PipExitSvg.js +12 -0
- package/lib/module/ui/components/button/svg/PipExitSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/PlaySvg.js +12 -0
- package/lib/module/ui/components/button/svg/PlaySvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/ReplaySvg.js +12 -0
- package/lib/module/ui/components/button/svg/ReplaySvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/SettingsSvg.js +12 -0
- package/lib/module/ui/components/button/svg/SettingsSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/SvgUtils.js +5 -0
- package/lib/module/ui/components/button/svg/SvgUtils.js.map +1 -0
- package/lib/module/ui/components/button/svg/VolumeOffSvg.js +12 -0
- package/lib/module/ui/components/button/svg/VolumeOffSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/VolumeUpSvg.js +12 -0
- package/lib/module/ui/components/button/svg/VolumeUpSvg.js.map +1 -0
- package/lib/module/ui/components/button/svg/barrel.js +21 -0
- package/lib/module/ui/components/button/svg/barrel.js.map +1 -0
- package/lib/module/ui/components/button/svg/res/AirPlayButton.html +6 -0
- package/lib/module/ui/components/button/svg/res/Airplay.svg +1 -0
- package/lib/module/ui/components/button/svg/res/ChromecastButton.html +25 -0
- package/lib/module/ui/components/button/svg/res/arrow_forward.svg +1 -0
- package/lib/module/ui/components/button/svg/res/back.svg +1 -0
- package/lib/module/ui/components/button/svg/res/backward.svg +1 -0
- package/lib/module/ui/components/button/svg/res/chromecast-48px.svg +1 -0
- package/lib/module/ui/components/button/svg/res/close.svg +1 -0
- package/lib/module/ui/components/button/svg/res/error.svg +1 -0
- package/lib/module/ui/components/button/svg/res/forward.svg +1 -0
- package/lib/module/ui/components/button/svg/res/fullscreen-enter.svg +1 -0
- package/lib/module/ui/components/button/svg/res/fullscreen-exit.svg +1 -0
- package/lib/module/ui/components/button/svg/res/language.svg +1 -0
- package/lib/module/ui/components/button/svg/res/list.svg +1 -0
- package/lib/module/ui/components/button/svg/res/live.svg +1 -0
- package/lib/module/ui/components/button/svg/res/pause.svg +1 -0
- package/lib/module/ui/components/button/svg/res/pip_enter.svg +1 -0
- package/lib/module/ui/components/button/svg/res/pip_exit.svg +1 -0
- package/lib/module/ui/components/button/svg/res/play.svg +1 -0
- package/lib/module/ui/components/button/svg/res/replay.svg +1 -0
- package/lib/module/ui/components/button/svg/res/settings.svg +1 -0
- package/lib/module/ui/components/button/svg/res/skip-next.svg +1 -0
- package/lib/module/ui/components/button/svg/res/volume-high.svg +1 -0
- package/lib/module/ui/components/button/svg/res/volume-low.svg +1 -0
- package/lib/module/ui/components/button/svg/res/volume-off.svg +1 -0
- package/lib/module/ui/components/controlbar/ControlBar.js +52 -0
- package/lib/module/ui/components/controlbar/ControlBar.js.map +1 -0
- package/lib/module/ui/components/controlbar/Spacer.js +14 -0
- package/lib/module/ui/components/controlbar/Spacer.js.map +1 -0
- package/lib/module/ui/components/controlbar/barrel.js +3 -0
- package/lib/module/ui/components/controlbar/barrel.js.map +1 -0
- package/lib/module/ui/components/menu/LanguageMenuButton.js +165 -0
- package/lib/module/ui/components/menu/LanguageMenuButton.js.map +1 -0
- package/lib/module/ui/components/menu/PlaybackRateSubMenu.js +80 -0
- package/lib/module/ui/components/menu/PlaybackRateSubMenu.js.map +1 -0
- package/lib/module/ui/components/menu/QualitySubMenu.js +135 -0
- package/lib/module/ui/components/menu/QualitySubMenu.js.map +1 -0
- package/lib/module/ui/components/menu/SettingsMenuButton.js +28 -0
- package/lib/module/ui/components/menu/SettingsMenuButton.js.map +1 -0
- package/lib/module/ui/components/menu/barrel.js +6 -0
- package/lib/module/ui/components/menu/barrel.js.map +1 -0
- package/lib/module/ui/components/menu/common/MenuButton.js +26 -0
- package/lib/module/ui/components/menu/common/MenuButton.js.map +1 -0
- package/lib/module/ui/components/menu/common/MenuRadioButton.js +38 -0
- package/lib/module/ui/components/menu/common/MenuRadioButton.js.map +1 -0
- package/lib/module/ui/components/menu/common/MenuTitle.js +29 -0
- package/lib/module/ui/components/menu/common/MenuTitle.js.map +1 -0
- package/lib/module/ui/components/menu/common/MenuView.js +65 -0
- package/lib/module/ui/components/menu/common/MenuView.js.map +1 -0
- package/lib/module/ui/components/menu/common/ScrollableMenu.js +36 -0
- package/lib/module/ui/components/menu/common/ScrollableMenu.js.map +1 -0
- package/lib/module/ui/components/menu/common/SubMenuWithButton.js +56 -0
- package/lib/module/ui/components/menu/common/SubMenuWithButton.js.map +1 -0
- package/lib/module/ui/components/menu/common/barrel.js +7 -0
- package/lib/module/ui/components/menu/common/barrel.js.map +1 -0
- package/lib/module/ui/components/message/CastMessage.js +70 -0
- package/lib/module/ui/components/message/CastMessage.js.map +1 -0
- package/lib/module/ui/components/message/ErrorDisplay.js +46 -0
- package/lib/module/ui/components/message/ErrorDisplay.js.map +1 -0
- package/lib/module/ui/components/message/barrel.js +3 -0
- package/lib/module/ui/components/message/barrel.js.map +1 -0
- package/lib/module/ui/components/seekbar/SeekBar.js +184 -0
- package/lib/module/ui/components/seekbar/SeekBar.js.map +1 -0
- package/lib/module/ui/components/seekbar/barrel.js +3 -0
- package/lib/module/ui/components/seekbar/barrel.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/SingleThumbnailView.js +37 -0
- package/lib/module/ui/components/seekbar/thumbnail/SingleThumbnailView.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/Thumbnail.js +11 -0
- package/lib/module/ui/components/seekbar/thumbnail/Thumbnail.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/ThumbnailView.js +246 -0
- package/lib/module/ui/components/seekbar/thumbnail/ThumbnailView.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.js +2 -0
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.web.js +3 -0
- package/lib/module/ui/components/seekbar/thumbnail/Urlpolyfill.web.js.map +1 -0
- package/lib/module/ui/components/seekbar/thumbnail/barrel.js +3 -0
- package/lib/module/ui/components/seekbar/thumbnail/barrel.js.map +1 -0
- package/lib/module/ui/components/timelabel/StaticTimeLabel.js +48 -0
- package/lib/module/ui/components/timelabel/StaticTimeLabel.js.map +1 -0
- package/lib/module/ui/components/timelabel/TimeLabel.js +78 -0
- package/lib/module/ui/components/timelabel/TimeLabel.js.map +1 -0
- package/lib/module/ui/components/timelabel/barrel.js +3 -0
- package/lib/module/ui/components/timelabel/barrel.js.map +1 -0
- package/lib/module/ui/components/uicontroller/UiContainer.js +336 -0
- package/lib/module/ui/components/uicontroller/UiContainer.js.map +1 -0
- package/lib/module/ui/components/uicontroller/UiControls.js +2 -0
- package/lib/module/ui/components/uicontroller/UiControls.js.map +1 -0
- package/lib/module/ui/components/uicontroller/barrel.js +3 -0
- package/lib/module/ui/components/uicontroller/barrel.js.map +1 -0
- package/lib/module/ui/components/util/PlayerContext.js +11 -0
- package/lib/module/ui/components/util/PlayerContext.js.map +1 -0
- package/lib/module/ui/components/util/TrackUtils.js +60 -0
- package/lib/module/ui/components/util/TrackUtils.js.map +1 -0
- package/lib/module/ui/components/util/barrel.js +2 -0
- package/lib/module/ui/components/util/barrel.js.map +1 -0
- package/lib/module/ui/utils/ArrayUtils.js +12 -0
- package/lib/module/ui/utils/ArrayUtils.js.map +1 -0
- package/lib/module/ui/utils/language/Language.js +27 -0
- package/lib/module/ui/utils/language/Language.js.map +1 -0
- package/lib/module/ui/utils/language/languages.json +1658 -0
- package/lib/module/web/platform/BrowserDetection.js +27 -0
- package/lib/module/web/platform/BrowserDetection.js.map +1 -0
- package/lib/module/web/platform/browser.d.js +2 -0
- package/lib/module/web/platform/browser.d.js.map +1 -0
- package/lib/typescript/api/THEOplayerView.d.ts +21 -0
- package/lib/typescript/api/backgroundAudio/BackgroundAudioConfiguration.d.ts +22 -0
- package/lib/typescript/api/backgroundAudio/barrel.d.ts +1 -0
- package/lib/typescript/api/barrel.d.ts +16 -0
- package/lib/typescript/api/cast/Airplay.d.ts +27 -0
- package/lib/typescript/api/cast/CastAPI.d.ts +25 -0
- package/lib/typescript/api/cast/CastState.d.ts +15 -0
- package/lib/typescript/api/cast/Chromecast.d.ts +39 -0
- package/lib/typescript/api/config/PlayerConfiguration.d.ts +58 -0
- package/lib/typescript/api/event/AdEvent.d.ts +90 -0
- package/lib/typescript/api/event/CastEvent.d.ts +29 -0
- package/lib/typescript/api/event/Event.d.ts +15 -0
- package/lib/typescript/api/event/EventDispatcher.d.ts +44 -0
- package/lib/typescript/api/event/EventListener.d.ts +7 -0
- package/lib/typescript/api/event/PlayerEvent.d.ts +107 -0
- package/lib/typescript/api/event/TrackEvent.d.ts +92 -0
- package/lib/typescript/api/event/barrel.d.ts +5 -0
- package/lib/typescript/api/media/MediaControlConfiguration.d.ts +26 -0
- package/lib/typescript/api/media/barrel.d.ts +1 -0
- package/lib/typescript/api/pip/PiPConfiguration.d.ts +13 -0
- package/lib/typescript/api/pip/barrel.d.ts +1 -0
- package/lib/typescript/api/player/PlayerEventMap.d.ts +158 -0
- package/lib/typescript/api/player/THEOplayer.d.ts +154 -0
- package/lib/typescript/api/player/barrel.d.ts +2 -0
- package/lib/typescript/api/presentation/PresentationMode.d.ts +13 -0
- package/lib/typescript/api/presentation/barrel.d.ts +1 -0
- package/lib/typescript/api/source/ads/Ads.d.ts +99 -0
- package/lib/typescript/api/source/ads/FreeWheelAdDescription.d.ts +85 -0
- package/lib/typescript/api/source/ads/IMAAdDescription.d.ts +25 -0
- package/lib/typescript/api/track/MediaTrack.d.ts +50 -0
- package/lib/typescript/api/track/TextTrack.d.ts +100 -0
- package/lib/typescript/api/track/TextTrackStyle.d.ts +71 -0
- package/lib/typescript/api/track/Track.d.ts +46 -0
- package/lib/typescript/api/track/barrel.d.ts +6 -0
- package/lib/typescript/index.d.ts +4 -0
- package/lib/typescript/internal/THEOplayerView.d.ts +44 -0
- package/lib/typescript/internal/THEOplayerView.web.d.ts +3 -0
- package/lib/typescript/internal/adapter/NativePlayerState.d.ts +27 -0
- package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts +73 -0
- package/lib/typescript/internal/adapter/THEOplayerWebAdapter.d.ts +70 -0
- package/lib/typescript/internal/adapter/WebEventForwarder.d.ts +52 -0
- package/lib/typescript/internal/adapter/abr/AbrAdapter.d.ts +12 -0
- package/lib/typescript/internal/adapter/ads/THEOplayerNativeAdsAdapter.d.ts +13 -0
- package/lib/typescript/internal/adapter/ads/THEOplayerNativeGoogleDAI.d.ts +9 -0
- package/lib/typescript/internal/adapter/ads/THEOplayerWebAdsAdapter.d.ts +14 -0
- package/lib/typescript/internal/adapter/cast/THEOplayerNativeAirplay.d.ts +15 -0
- package/lib/typescript/internal/adapter/cast/THEOplayerNativeCastAdapter.d.ts +14 -0
- package/lib/typescript/internal/adapter/cast/THEOplayerNativeChromecast.d.ts +18 -0
- package/lib/typescript/internal/adapter/cast/THEOplayerWebCastAdapter.d.ts +9 -0
- package/lib/typescript/internal/adapter/event/BaseEvent.d.ts +6 -0
- package/lib/typescript/internal/adapter/event/DefaultEventDispatcher.d.ts +9 -0
- package/lib/typescript/internal/adapter/event/PlayerEvents.d.ts +99 -0
- package/lib/typescript/internal/adapter/event/native/NativeAdEvent.d.ts +11 -0
- package/lib/typescript/internal/adapter/event/native/NativeCastEvent.d.ts +15 -0
- package/lib/typescript/internal/adapter/event/native/NativePlayerEvent.d.ts +93 -0
- package/lib/typescript/internal/adapter/event/native/NativeTrackEvent.d.ts +102 -0
- package/lib/typescript/internal/adapter/track/TextTrackStyleAdapter.d.ts +17 -0
- package/lib/typescript/internal/adapter/web/TrackUtils.d.ts +9 -0
- package/lib/typescript/internal/adapter/web/WebMediaSession.d.ts +33 -0
- package/lib/typescript/internal/adapter/web/WebPresentationModeManager.d.ts +15 -0
- package/lib/typescript/internal/utils/arrayUtil.d.ts +2 -0
- package/lib/typescript/ui/THEOplayerDefaultUi.d.ts +35 -0
- package/lib/typescript/ui/THEOplayerTheme.d.ts +84 -0
- package/lib/typescript/ui/barrel.d.ts +3 -0
- package/lib/typescript/ui/components/activityindicator/CenteredDelayedActivityIndicator.d.ts +25 -0
- package/lib/typescript/ui/components/activityindicator/DelayedActivityIndicator.d.ts +9 -0
- package/lib/typescript/ui/components/activityindicator/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/barrel.d.ts +9 -0
- package/lib/typescript/ui/components/button/AirplayButton.d.ts +18 -0
- package/lib/typescript/ui/components/button/ChromecastButton.d.ts +19 -0
- package/lib/typescript/ui/components/button/ChromecastButton.web.d.ts +19 -0
- package/lib/typescript/ui/components/button/FullscreenButton.d.ts +17 -0
- package/lib/typescript/ui/components/button/MuteButton.d.ts +16 -0
- package/lib/typescript/ui/components/button/PipButton.d.ts +17 -0
- package/lib/typescript/ui/components/button/PlayButton.d.ts +28 -0
- package/lib/typescript/ui/components/button/SkipButton.d.ts +33 -0
- package/lib/typescript/ui/components/button/actionbutton/ActionButton.d.ts +41 -0
- package/lib/typescript/ui/components/button/barrel.d.ts +9 -0
- package/lib/typescript/ui/components/button/svg/AirplaySvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ArrowForwardSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/BackSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/BackwardSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ChromecastSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ErrorSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ForwardSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/FullscreenEnterSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/FullscreenExitSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/LanguageSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ListSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/PauseSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/PipEnterSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/PipExitSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/PlaySvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/ReplaySvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/SettingsSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/SvgUtils.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/VolumeOffSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/VolumeUpSvg.d.ts +3 -0
- package/lib/typescript/ui/components/button/svg/barrel.d.ts +20 -0
- package/lib/typescript/ui/components/controlbar/ControlBar.d.ts +39 -0
- package/lib/typescript/ui/components/controlbar/Spacer.d.ts +5 -0
- package/lib/typescript/ui/components/controlbar/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/menu/LanguageMenuButton.d.ts +40 -0
- package/lib/typescript/ui/components/menu/PlaybackRateSubMenu.d.ts +36 -0
- package/lib/typescript/ui/components/menu/QualitySubMenu.d.ts +29 -0
- package/lib/typescript/ui/components/menu/SettingsMenuButton.d.ts +12 -0
- package/lib/typescript/ui/components/menu/barrel.d.ts +5 -0
- package/lib/typescript/ui/components/menu/common/MenuButton.d.ts +25 -0
- package/lib/typescript/ui/components/menu/common/MenuRadioButton.d.ts +33 -0
- package/lib/typescript/ui/components/menu/common/MenuTitle.d.ts +20 -0
- package/lib/typescript/ui/components/menu/common/MenuView.d.ts +21 -0
- package/lib/typescript/ui/components/menu/common/ScrollableMenu.d.ts +23 -0
- package/lib/typescript/ui/components/menu/common/SubMenuWithButton.d.ts +29 -0
- package/lib/typescript/ui/components/menu/common/barrel.d.ts +6 -0
- package/lib/typescript/ui/components/message/CastMessage.d.ts +16 -0
- package/lib/typescript/ui/components/message/ErrorDisplay.d.ts +12 -0
- package/lib/typescript/ui/components/message/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/seekbar/SeekBar.d.ts +41 -0
- package/lib/typescript/ui/components/seekbar/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/SingleThumbnailView.d.ts +8 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/Thumbnail.d.ts +56 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/ThumbnailView.d.ts +60 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/Urlpolyfill.d.ts +1 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/Urlpolyfill.web.d.ts +1 -0
- package/lib/typescript/ui/components/seekbar/thumbnail/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/timelabel/StaticTimeLabel.d.ts +24 -0
- package/lib/typescript/ui/components/timelabel/TimeLabel.d.ts +32 -0
- package/lib/typescript/ui/components/timelabel/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/uicontroller/UiContainer.d.ts +115 -0
- package/lib/typescript/ui/components/uicontroller/UiControls.d.ts +14 -0
- package/lib/typescript/ui/components/uicontroller/barrel.d.ts +2 -0
- package/lib/typescript/ui/components/util/PlayerContext.d.ts +22 -0
- package/lib/typescript/ui/components/util/TrackUtils.d.ts +10 -0
- package/lib/typescript/ui/components/util/barrel.d.ts +1 -0
- package/lib/typescript/ui/utils/ArrayUtils.d.ts +2 -0
- package/lib/typescript/ui/utils/language/Language.d.ts +19 -0
- package/lib/typescript/web/platform/BrowserDetection.d.ts +23 -0
- package/package.json +15 -9
- package/react-native-theoplayer.json +8 -0
- package/react-native-theoplayer.podspec +32 -6
- package/src/api/THEOplayerView.ts +5 -248
- package/src/api/backgroundAudio/BackgroundAudioConfiguration.ts +23 -0
- package/src/api/backgroundAudio/barrel.ts +1 -0
- package/src/api/barrel.ts +4 -0
- package/src/api/cast/Airplay.ts +3 -3
- package/src/api/cast/CastAPI.ts +3 -4
- package/src/api/cast/CastState.ts +6 -1
- package/src/api/cast/Chromecast.ts +3 -3
- package/src/api/config/PlayerConfiguration.ts +38 -0
- package/src/api/event/AdEvent.ts +25 -31
- package/src/api/event/CastEvent.ts +14 -20
- package/src/api/event/Event.ts +16 -0
- package/src/api/event/EventDispatcher.ts +48 -0
- package/src/api/event/EventListener.ts +8 -0
- package/src/api/event/PlayerEvent.ts +69 -8
- package/src/api/event/TrackEvent.ts +28 -29
- package/src/api/event/barrel.ts +1 -0
- package/src/api/media/MediaControlConfiguration.ts +26 -0
- package/src/api/media/barrel.ts +1 -0
- package/src/api/pip/PiPConfiguration.ts +13 -0
- package/src/api/pip/barrel.ts +1 -0
- package/src/api/player/PlayerEventMap.ts +198 -0
- package/src/api/player/THEOplayer.ts +185 -0
- package/src/api/player/barrel.ts +2 -0
- package/src/api/presentation/PresentationMode.ts +14 -0
- package/src/api/presentation/barrel.ts +1 -0
- package/src/api/source/ads/Ads.ts +6 -1
- package/src/api/source/ads/FreeWheelAdDescription.ts +2 -2
- package/src/api/source/ads/IMAAdDescription.ts +2 -2
- package/src/api/track/MediaTrack.ts +2 -11
- package/src/api/track/TextTrack.ts +20 -15
- package/src/api/track/TextTrackStyle.ts +77 -0
- package/src/api/track/Track.ts +12 -0
- package/src/api/track/barrel.ts +1 -0
- package/src/index.tsx +1 -0
- package/src/internal/THEOplayerView.tsx +209 -236
- package/src/internal/THEOplayerView.web.tsx +82 -494
- package/src/internal/adapter/NativePlayerState.ts +28 -0
- package/src/internal/adapter/THEOplayerAdapter.ts +456 -0
- package/src/internal/adapter/THEOplayerWebAdapter.ts +275 -0
- package/src/internal/adapter/WebEventForwarder.ts +399 -0
- package/src/internal/adapter/abr/AbrAdapter.ts +37 -0
- package/src/internal/adapter/ads/THEOplayerNativeAdsAdapter.ts +39 -0
- package/src/internal/adapter/ads/THEOplayerNativeGoogleDAI.ts +22 -0
- package/src/internal/adapter/ads/THEOplayerWebAdsAdapter.ts +51 -0
- package/src/internal/adapter/cast/THEOplayerNativeAirplay.ts +47 -0
- package/src/internal/adapter/cast/THEOplayerNativeCastAdapter.ts +39 -0
- package/src/internal/adapter/cast/THEOplayerNativeChromecast.ts +57 -0
- package/src/internal/adapter/cast/THEOplayerWebCastAdapter.ts +22 -0
- package/src/internal/adapter/event/BaseEvent.ts +5 -0
- package/src/internal/adapter/event/DefaultEventDispatcher.ts +35 -0
- package/src/internal/adapter/event/PlayerEvents.ts +174 -0
- package/src/internal/adapter/event/native/NativeAdEvent.ts +13 -0
- package/src/internal/adapter/event/native/NativeCastEvent.ts +22 -0
- package/src/internal/adapter/event/native/NativePlayerEvent.ts +111 -0
- package/src/internal/adapter/event/native/NativeTrackEvent.ts +159 -0
- package/src/internal/adapter/track/TextTrackStyleAdapter.ts +55 -0
- package/src/internal/adapter/web/TrackUtils.ts +73 -0
- package/src/internal/adapter/web/WebMediaSession.ts +193 -0
- package/src/internal/adapter/web/WebPresentationModeManager.ts +96 -0
- package/src/internal/utils/arrayUtil.ts +12 -0
- package/src/ui/THEOplayerDefaultUi.tsx +108 -0
- package/src/ui/THEOplayerTheme.ts +112 -0
- package/src/ui/barrel.ts +3 -0
- package/src/ui/components/activityindicator/CenteredDelayedActivityIndicator.tsx +96 -0
- package/src/ui/components/activityindicator/DelayedActivityIndicator.tsx +32 -0
- package/src/ui/components/activityindicator/barrel.ts +2 -0
- package/src/ui/components/barrel.ts +9 -0
- package/src/ui/components/button/AirplayButton.tsx +64 -0
- package/src/ui/components/button/ChromecastButton.tsx +60 -0
- package/src/ui/components/button/ChromecastButton.web.tsx +66 -0
- package/src/ui/components/button/FullscreenButton.tsx +60 -0
- package/src/ui/components/button/MuteButton.tsx +52 -0
- package/src/ui/components/button/PipButton.tsx +61 -0
- package/src/ui/components/button/PlayButton.tsx +107 -0
- package/src/ui/components/button/SkipButton.tsx +112 -0
- package/src/ui/components/button/actionbutton/ActionButton.tsx +105 -0
- package/src/ui/components/button/barrel.ts +9 -0
- package/src/ui/components/button/svg/AirplaySvg.tsx +18 -0
- package/src/ui/components/button/svg/ArrowForwardSvg.tsx +18 -0
- package/src/ui/components/button/svg/BackSvg.tsx +18 -0
- package/src/ui/components/button/svg/BackwardSvg.tsx +18 -0
- package/src/ui/components/button/svg/ChromecastSvg.tsx +18 -0
- package/src/ui/components/button/svg/ErrorSvg.tsx +18 -0
- package/src/ui/components/button/svg/ForwardSvg.tsx +18 -0
- package/src/ui/components/button/svg/FullscreenEnterSvg.tsx +18 -0
- package/src/ui/components/button/svg/FullscreenExitSvg.tsx +18 -0
- package/src/ui/components/button/svg/LanguageSvg.tsx +18 -0
- package/src/ui/components/button/svg/ListSvg.tsx +18 -0
- package/src/ui/components/button/svg/PauseSvg.tsx +18 -0
- package/src/ui/components/button/svg/PipEnterSvg.tsx +18 -0
- package/src/ui/components/button/svg/PipExitSvg.tsx +18 -0
- package/src/ui/components/button/svg/PlaySvg.tsx +18 -0
- package/src/ui/components/button/svg/ReplaySvg.tsx +18 -0
- package/src/ui/components/button/svg/SettingsSvg.tsx +18 -0
- package/src/ui/components/button/svg/SvgUtils.ts +4 -0
- package/src/ui/components/button/svg/VolumeOffSvg.tsx +18 -0
- package/src/ui/components/button/svg/VolumeUpSvg.tsx +18 -0
- package/src/ui/components/button/svg/barrel.ts +20 -0
- package/src/ui/components/button/svg/res/AirPlayButton.html +6 -0
- package/src/ui/components/button/svg/res/Airplay.svg +1 -0
- package/src/ui/components/button/svg/res/ChromecastButton.html +25 -0
- package/src/ui/components/button/svg/res/arrow_forward.svg +1 -0
- package/src/ui/components/button/svg/res/back.svg +1 -0
- package/src/ui/components/button/svg/res/backward.svg +1 -0
- package/src/ui/components/button/svg/res/chromecast-48px.svg +1 -0
- package/src/ui/components/button/svg/res/close.svg +1 -0
- package/src/ui/components/button/svg/res/error.svg +1 -0
- package/src/ui/components/button/svg/res/forward.svg +1 -0
- package/src/ui/components/button/svg/res/fullscreen-enter.svg +1 -0
- package/src/ui/components/button/svg/res/fullscreen-exit.svg +1 -0
- package/src/ui/components/button/svg/res/language.svg +1 -0
- package/src/ui/components/button/svg/res/list.svg +1 -0
- package/src/ui/components/button/svg/res/live.svg +1 -0
- package/src/ui/components/button/svg/res/pause.svg +1 -0
- package/src/ui/components/button/svg/res/pip_enter.svg +1 -0
- package/src/ui/components/button/svg/res/pip_exit.svg +1 -0
- package/src/ui/components/button/svg/res/play.svg +1 -0
- package/src/ui/components/button/svg/res/replay.svg +1 -0
- package/src/ui/components/button/svg/res/settings.svg +1 -0
- package/src/ui/components/button/svg/res/skip-next.svg +1 -0
- package/src/ui/components/button/svg/res/volume-high.svg +1 -0
- package/src/ui/components/button/svg/res/volume-low.svg +1 -0
- package/src/ui/components/button/svg/res/volume-off.svg +1 -0
- package/src/ui/components/controlbar/ControlBar.tsx +69 -0
- package/src/ui/components/controlbar/Spacer.tsx +9 -0
- package/src/ui/components/controlbar/barrel.ts +2 -0
- package/src/ui/components/menu/LanguageMenuButton.tsx +192 -0
- package/src/ui/components/menu/PlaybackRateSubMenu.tsx +93 -0
- package/src/ui/components/menu/QualitySubMenu.tsx +148 -0
- package/src/ui/components/menu/SettingsMenuButton.tsx +25 -0
- package/src/ui/components/menu/barrel.ts +5 -0
- package/src/ui/components/menu/common/MenuButton.tsx +49 -0
- package/src/ui/components/menu/common/MenuRadioButton.tsx +65 -0
- package/src/ui/components/menu/common/MenuTitle.tsx +37 -0
- package/src/ui/components/menu/common/MenuView.tsx +62 -0
- package/src/ui/components/menu/common/ScrollableMenu.tsx +43 -0
- package/src/ui/components/menu/common/SubMenuWithButton.tsx +58 -0
- package/src/ui/components/menu/common/barrel.ts +6 -0
- package/src/ui/components/message/CastMessage.tsx +74 -0
- package/src/ui/components/message/ErrorDisplay.tsx +43 -0
- package/src/ui/components/message/barrel.ts +2 -0
- package/src/ui/components/seekbar/SeekBar.tsx +178 -0
- package/src/ui/components/seekbar/barrel.ts +2 -0
- package/src/ui/components/seekbar/thumbnail/SingleThumbnailView.tsx +38 -0
- package/src/ui/components/seekbar/thumbnail/Thumbnail.ts +72 -0
- package/src/ui/components/seekbar/thumbnail/ThumbnailView.tsx +266 -0
- package/src/ui/components/seekbar/thumbnail/Urlpolyfill.ts +1 -0
- package/src/ui/components/seekbar/thumbnail/Urlpolyfill.web.ts +2 -0
- package/src/ui/components/seekbar/thumbnail/barrel.ts +2 -0
- package/src/ui/components/timelabel/StaticTimeLabel.tsx +63 -0
- package/src/ui/components/timelabel/TimeLabel.tsx +79 -0
- package/src/ui/components/timelabel/barrel.ts +2 -0
- package/src/ui/components/uicontroller/UiContainer.tsx +355 -0
- package/src/ui/components/uicontroller/UiControls.ts +31 -0
- package/src/ui/components/uicontroller/barrel.ts +2 -0
- package/src/ui/components/util/PlayerContext.ts +29 -0
- package/src/ui/components/util/TrackUtils.ts +62 -0
- package/src/ui/components/util/barrel.ts +1 -0
- package/src/ui/utils/ArrayUtils.ts +12 -0
- package/src/ui/utils/language/Language.ts +38 -0
- package/src/ui/utils/language/languages.json +1658 -0
- package/src/web/platform/BrowserDetection.ts +38 -0
- package/src/web/platform/browser.d.ts +43 -0
- package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/4.3.0/ads-wrapper-4.3.0.aar +0 -0
- package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/4.3.0/ads-wrapper-4.3.0.pom +0 -9
- package/ios/custom/Frameworks/ios/put_custom_ios_xcframework_here.txt +0 -2
- package/ios/custom/Frameworks/tvos/put_custom_tvos_xcframework_here.txt +0 -2
- package/ios/custom/react-native-theoplayer_custom.podspec +0 -46
- package/ios/custom/theofeatures.sh +0 -14
- package/lib/commonjs/internal/ads/THEOplayerNativeAdsAPI.js +0 -54
- package/lib/commonjs/internal/ads/THEOplayerNativeAdsAPI.js.map +0 -1
- package/lib/commonjs/internal/ads/THEOplayerNativeGoogleDAI.js +0 -34
- package/lib/commonjs/internal/ads/THEOplayerNativeGoogleDAI.js.map +0 -1
- package/lib/commonjs/internal/ads/THEOplayerWebAdsAPI.js +0 -78
- package/lib/commonjs/internal/ads/THEOplayerWebAdsAPI.js.map +0 -1
- package/lib/commonjs/internal/ads/THEOplayerWebGoogleDAI.js +0 -32
- package/lib/commonjs/internal/ads/THEOplayerWebGoogleDAI.js.map +0 -1
- package/lib/commonjs/internal/cast/THEOplayerNativeAirplay.js +0 -34
- package/lib/commonjs/internal/cast/THEOplayerNativeAirplay.js.map +0 -1
- package/lib/commonjs/internal/cast/THEOplayerNativeCastApi.js +0 -46
- package/lib/commonjs/internal/cast/THEOplayerNativeCastApi.js.map +0 -1
- package/lib/commonjs/internal/cast/THEOplayerNativeChromecast.js +0 -42
- package/lib/commonjs/internal/cast/THEOplayerNativeChromecast.js.map +0 -1
- package/lib/commonjs/internal/cast/THEOplayerWebCastApi.js +0 -31
- package/lib/commonjs/internal/cast/THEOplayerWebCastApi.js.map +0 -1
- package/lib/commonjs/internal/web/TrackUtils.js +0 -87
- package/lib/commonjs/internal/web/TrackUtils.js.map +0 -1
- package/lib/commonjs/internal/web/stub/CastButtonStub.js +0 -16
- package/lib/commonjs/internal/web/stub/CastButtonStub.js.map +0 -1
- package/lib/module/internal/ads/THEOplayerNativeAdsAPI.js +0 -43
- package/lib/module/internal/ads/THEOplayerNativeAdsAPI.js.map +0 -1
- package/lib/module/internal/ads/THEOplayerNativeGoogleDAI.js +0 -24
- package/lib/module/internal/ads/THEOplayerNativeGoogleDAI.js.map +0 -1
- package/lib/module/internal/ads/THEOplayerWebAdsAPI.js +0 -68
- package/lib/module/internal/ads/THEOplayerWebAdsAPI.js.map +0 -1
- package/lib/module/internal/ads/THEOplayerWebGoogleDAI.js +0 -23
- package/lib/module/internal/ads/THEOplayerWebGoogleDAI.js.map +0 -1
- package/lib/module/internal/cast/THEOplayerNativeAirplay.js +0 -24
- package/lib/module/internal/cast/THEOplayerNativeAirplay.js.map +0 -1
- package/lib/module/internal/cast/THEOplayerNativeCastApi.js +0 -34
- package/lib/module/internal/cast/THEOplayerNativeCastApi.js.map +0 -1
- package/lib/module/internal/cast/THEOplayerNativeChromecast.js +0 -32
- package/lib/module/internal/cast/THEOplayerNativeChromecast.js.map +0 -1
- package/lib/module/internal/cast/THEOplayerWebCastApi.js +0 -22
- package/lib/module/internal/cast/THEOplayerWebCastApi.js.map +0 -1
- package/lib/module/internal/web/TrackUtils.js +0 -72
- package/lib/module/internal/web/TrackUtils.js.map +0 -1
- package/lib/module/internal/web/stub/CastButtonStub.js +0 -6
- package/lib/module/internal/web/stub/CastButtonStub.js.map +0 -1
- package/lib/typescript/babel.config.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/THEOplayerView.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/abr/ABRConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/abr/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/Ad.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/AdBreak.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/AdsAPI.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/AdsConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/CompanionAd.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/ads/GoogleDai.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/ads/GoogleImaAd.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/ads/GoogleImaConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/ads/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/cast/Airplay.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/cast/CastAPI.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/cast/CastConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/cast/CastState.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/cast/Chromecast.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/cast/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/config/PlayerConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/config/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/drm/ContentProtectionAPI.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/drm/ContentProtectionIntegration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/drm/ContentProtectionIntegrationFactory.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/drm/ContentProtectionRequest.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/drm/ContentProtectionResponse.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/drm/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/error/ChromecastError.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/error/PlayerError.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/error/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/event/AdEvent.d.ts +0 -2
- package/lib/typescript/lib/commonjs/api/event/CastEvent.d.ts +0 -2
- package/lib/typescript/lib/commonjs/api/event/PlayerEvent.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/event/TrackEvent.d.ts +0 -9
- package/lib/typescript/lib/commonjs/api/event/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/SourceDescription.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/Ads.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/source/ads/FreeWheelAdDescription.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/IMAAdDescription.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/SpotXAdDescription.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/THEOplayerAdDescription.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/ssai/GoogleDAIConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/ssai/ImagineServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/ssai/ServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/ssai/YospaceServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/ads/ssai/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/dash/DashPlaybackConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/source/dash/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/drm/DRMConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/source/drm/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/hls/HlsPlaybackConfiguration.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/source/hls/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/source/metadata/MetadataDescription.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/source/metadata/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/timeranges/TimeRange.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/timeranges/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/track/MediaTrack.d.ts +0 -9
- package/lib/typescript/lib/commonjs/api/track/Quality.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/track/TextTrack.d.ts +0 -21
- package/lib/typescript/lib/commonjs/api/track/TextTrackCue.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/track/Track.d.ts +0 -0
- package/lib/typescript/lib/commonjs/api/track/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/api/utils/TypeUtils.d.ts +0 -13
- package/lib/typescript/lib/commonjs/api/utils/barrel.d.ts +0 -1
- package/lib/typescript/lib/commonjs/index.d.ts +0 -5
- package/lib/typescript/lib/commonjs/internal/THEOplayerView.d.ts +0 -24
- package/lib/typescript/lib/commonjs/internal/THEOplayerView.style.d.ts +0 -12
- package/lib/typescript/lib/commonjs/internal/THEOplayerView.web.d.ts +0 -24
- package/lib/typescript/lib/commonjs/internal/ads/THEOplayerNativeAdsAPI.d.ts +0 -14
- package/lib/typescript/lib/commonjs/internal/ads/THEOplayerNativeGoogleDAI.d.ts +0 -9
- package/lib/typescript/lib/commonjs/internal/ads/THEOplayerWebAdsAPI.d.ts +0 -14
- package/lib/typescript/lib/commonjs/internal/ads/THEOplayerWebGoogleDAI.d.ts +0 -9
- package/lib/typescript/lib/commonjs/internal/cast/THEOplayerNativeAirplay.d.ts +0 -9
- package/lib/typescript/lib/commonjs/internal/cast/THEOplayerNativeCastApi.d.ts +0 -12
- package/lib/typescript/lib/commonjs/internal/cast/THEOplayerNativeChromecast.d.ts +0 -11
- package/lib/typescript/lib/commonjs/internal/cast/THEOplayerWebCastApi.d.ts +0 -8
- package/lib/typescript/lib/commonjs/internal/drm/ContentProtectionRegistry.d.ts +0 -14
- package/lib/typescript/lib/commonjs/internal/drm/ContentProtectionRegistry.web.d.ts +0 -5
- package/lib/typescript/lib/commonjs/internal/drm/NativeCertificateRequest.d.ts +0 -18
- package/lib/typescript/lib/commonjs/internal/drm/NativeCertificateResponse.d.ts +0 -21
- package/lib/typescript/lib/commonjs/internal/drm/NativeContentProtectionEvent.d.ts +0 -0
- package/lib/typescript/lib/commonjs/internal/drm/NativeLicenseRequest.d.ts +0 -20
- package/lib/typescript/lib/commonjs/internal/drm/NativeLicenseResponse.d.ts +0 -22
- package/lib/typescript/lib/commonjs/internal/utils/TypeUtils.d.ts +0 -6
- package/lib/typescript/lib/commonjs/internal/web/TrackUtils.d.ts +0 -32
- package/lib/typescript/lib/commonjs/internal/web/stub/CastButtonStub.d.ts +0 -2
- package/lib/typescript/lib/module/api/THEOplayerView.d.ts +0 -1
- package/lib/typescript/lib/module/api/abr/ABRConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/abr/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/Ad.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/AdBreak.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/AdsAPI.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/AdsConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/CompanionAd.d.ts +0 -0
- package/lib/typescript/lib/module/api/ads/GoogleDai.d.ts +0 -0
- package/lib/typescript/lib/module/api/ads/GoogleImaAd.d.ts +0 -1
- package/lib/typescript/lib/module/api/ads/GoogleImaConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/ads/barrel.d.ts +0 -5
- package/lib/typescript/lib/module/api/barrel.d.ts +0 -12
- package/lib/typescript/lib/module/api/cast/Airplay.d.ts +0 -1
- package/lib/typescript/lib/module/api/cast/CastAPI.d.ts +0 -1
- package/lib/typescript/lib/module/api/cast/CastConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/cast/CastState.d.ts +0 -0
- package/lib/typescript/lib/module/api/cast/Chromecast.d.ts +0 -1
- package/lib/typescript/lib/module/api/cast/barrel.d.ts +0 -3
- package/lib/typescript/lib/module/api/config/PlayerConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/config/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/drm/ContentProtectionAPI.d.ts +0 -1
- package/lib/typescript/lib/module/api/drm/ContentProtectionIntegration.d.ts +0 -1
- package/lib/typescript/lib/module/api/drm/ContentProtectionIntegrationFactory.d.ts +0 -1
- package/lib/typescript/lib/module/api/drm/ContentProtectionRequest.d.ts +0 -0
- package/lib/typescript/lib/module/api/drm/ContentProtectionResponse.d.ts +0 -1
- package/lib/typescript/lib/module/api/drm/barrel.d.ts +0 -4
- package/lib/typescript/lib/module/api/error/ChromecastError.d.ts +0 -0
- package/lib/typescript/lib/module/api/error/PlayerError.d.ts +0 -0
- package/lib/typescript/lib/module/api/error/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/event/AdEvent.d.ts +0 -1
- package/lib/typescript/lib/module/api/event/CastEvent.d.ts +0 -1
- package/lib/typescript/lib/module/api/event/PlayerEvent.d.ts +0 -1
- package/lib/typescript/lib/module/api/event/TrackEvent.d.ts +0 -4
- package/lib/typescript/lib/module/api/event/barrel.d.ts +0 -4
- package/lib/typescript/lib/module/api/source/SourceDescription.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/Ads.d.ts +0 -0
- package/lib/typescript/lib/module/api/source/ads/FreeWheelAdDescription.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/IMAAdDescription.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/SpotXAdDescription.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/THEOplayerAdDescription.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/barrel.d.ts +0 -5
- package/lib/typescript/lib/module/api/source/ads/ssai/GoogleDAIConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/ssai/ImagineServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/ssai/ServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/ssai/YospaceServerSideAdInsertionConfiguration.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/ads/ssai/barrel.d.ts +0 -4
- package/lib/typescript/lib/module/api/source/barrel.d.ts +0 -6
- package/lib/typescript/lib/module/api/source/dash/DashPlaybackConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/source/dash/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/drm/DRMConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/source/drm/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/hls/HlsPlaybackConfiguration.d.ts +0 -0
- package/lib/typescript/lib/module/api/source/hls/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/source/metadata/MetadataDescription.d.ts +0 -0
- package/lib/typescript/lib/module/api/source/metadata/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/timeranges/TimeRange.d.ts +0 -0
- package/lib/typescript/lib/module/api/timeranges/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/api/track/MediaTrack.d.ts +0 -8
- package/lib/typescript/lib/module/api/track/Quality.d.ts +0 -0
- package/lib/typescript/lib/module/api/track/TextTrack.d.ts +0 -20
- package/lib/typescript/lib/module/api/track/TextTrackCue.d.ts +0 -0
- package/lib/typescript/lib/module/api/track/Track.d.ts +0 -0
- package/lib/typescript/lib/module/api/track/barrel.d.ts +0 -2
- package/lib/typescript/lib/module/api/utils/TypeUtils.d.ts +0 -12
- package/lib/typescript/lib/module/api/utils/barrel.d.ts +0 -1
- package/lib/typescript/lib/module/index.d.ts +0 -3
- package/lib/typescript/lib/module/internal/THEOplayerView.d.ts +0 -25
- package/lib/typescript/lib/module/internal/THEOplayerView.style.d.ts +0 -11
- package/lib/typescript/lib/module/internal/THEOplayerView.web.d.ts +0 -24
- package/lib/typescript/lib/module/internal/ads/THEOplayerNativeAdsAPI.d.ts +0 -13
- package/lib/typescript/lib/module/internal/ads/THEOplayerNativeGoogleDAI.d.ts +0 -8
- package/lib/typescript/lib/module/internal/ads/THEOplayerWebAdsAPI.d.ts +0 -13
- package/lib/typescript/lib/module/internal/ads/THEOplayerWebGoogleDAI.d.ts +0 -8
- package/lib/typescript/lib/module/internal/cast/THEOplayerNativeAirplay.d.ts +0 -8
- package/lib/typescript/lib/module/internal/cast/THEOplayerNativeCastApi.d.ts +0 -11
- package/lib/typescript/lib/module/internal/cast/THEOplayerNativeChromecast.d.ts +0 -10
- package/lib/typescript/lib/module/internal/cast/THEOplayerWebCastApi.d.ts +0 -7
- package/lib/typescript/lib/module/internal/drm/ContentProtectionRegistry.d.ts +0 -13
- package/lib/typescript/lib/module/internal/drm/ContentProtectionRegistry.web.d.ts +0 -4
- package/lib/typescript/lib/module/internal/drm/NativeCertificateRequest.d.ts +0 -17
- package/lib/typescript/lib/module/internal/drm/NativeCertificateResponse.d.ts +0 -20
- package/lib/typescript/lib/module/internal/drm/NativeContentProtectionEvent.d.ts +0 -0
- package/lib/typescript/lib/module/internal/drm/NativeLicenseRequest.d.ts +0 -19
- package/lib/typescript/lib/module/internal/drm/NativeLicenseResponse.d.ts +0 -21
- package/lib/typescript/lib/module/internal/utils/TypeUtils.d.ts +0 -5
- package/lib/typescript/lib/module/internal/web/TrackUtils.d.ts +0 -31
- package/lib/typescript/lib/module/internal/web/stub/CastButtonStub.d.ts +0 -2
- package/lib/typescript/src/api/THEOplayerView.d.ts +0 -217
- package/lib/typescript/src/api/barrel.d.ts +0 -12
- package/lib/typescript/src/api/cast/Airplay.d.ts +0 -27
- package/lib/typescript/src/api/cast/CastAPI.d.ts +0 -25
- package/lib/typescript/src/api/cast/CastState.d.ts +0 -10
- package/lib/typescript/src/api/cast/Chromecast.d.ts +0 -39
- package/lib/typescript/src/api/config/PlayerConfiguration.d.ts +0 -24
- package/lib/typescript/src/api/event/AdEvent.d.ts +0 -13
- package/lib/typescript/src/api/event/CastEvent.d.ts +0 -21
- package/lib/typescript/src/api/event/PlayerEvent.d.ts +0 -56
- package/lib/typescript/src/api/event/TrackEvent.d.ts +0 -92
- package/lib/typescript/src/api/event/barrel.d.ts +0 -4
- package/lib/typescript/src/api/source/ads/Ads.d.ts +0 -94
- package/lib/typescript/src/api/source/ads/FreeWheelAdDescription.d.ts +0 -85
- package/lib/typescript/src/api/source/ads/IMAAdDescription.d.ts +0 -25
- package/lib/typescript/src/api/track/MediaTrack.d.ts +0 -58
- package/lib/typescript/src/api/track/TextTrack.d.ts +0 -86
- package/lib/typescript/src/api/track/Track.d.ts +0 -43
- package/lib/typescript/src/api/track/barrel.d.ts +0 -5
- package/lib/typescript/src/index.d.ts +0 -3
- package/lib/typescript/src/internal/THEOplayerView.d.ts +0 -87
- package/lib/typescript/src/internal/THEOplayerView.web.d.ts +0 -32
- package/lib/typescript/src/internal/ads/THEOplayerNativeAdsAPI.d.ts +0 -17
- package/lib/typescript/src/internal/ads/THEOplayerNativeGoogleDAI.d.ts +0 -10
- package/lib/typescript/src/internal/ads/THEOplayerWebAdsAPI.d.ts +0 -15
- package/lib/typescript/src/internal/cast/THEOplayerNativeAirplay.d.ts +0 -9
- package/lib/typescript/src/internal/cast/THEOplayerNativeCastApi.d.ts +0 -10
- package/lib/typescript/src/internal/cast/THEOplayerNativeChromecast.d.ts +0 -11
- package/lib/typescript/src/internal/cast/THEOplayerWebCastApi.d.ts +0 -9
- package/lib/typescript/src/internal/web/TrackUtils.d.ts +0 -7
- package/lib/typescript/src/internal/web/stub/CastButtonStub.d.ts +0 -3
- package/src/internal/ads/THEOplayerNativeAdsAPI.ts +0 -44
- package/src/internal/ads/THEOplayerNativeGoogleDAI.ts +0 -23
- package/src/internal/ads/THEOplayerWebAdsAPI.ts +0 -51
- package/src/internal/cast/THEOplayerNativeAirplay.ts +0 -22
- package/src/internal/cast/THEOplayerNativeCastApi.ts +0 -28
- package/src/internal/cast/THEOplayerNativeChromecast.ts +0 -30
- package/src/internal/cast/THEOplayerWebCastApi.ts +0 -21
- package/src/internal/web/TrackUtils.ts +0 -65
- package/src/internal/web/stub/CastButtonStub.tsx +0 -7
- /package/lib/typescript/{src/__tests__ → __tests__}/index.test.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/abr/ABRConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/abr/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/Ad.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/AdBreak.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/AdsAPI.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/AdsConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/CompanionAd.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/GoogleDai.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/GoogleImaAd.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/GoogleImaConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/ads/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/cast/CastConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/cast/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/config/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/ContentProtectionAPI.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/ContentProtectionIntegration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/ContentProtectionIntegrationFactory.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/ContentProtectionRequest.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/ContentProtectionResponse.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/drm/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/error/ChromecastError.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/error/PlayerError.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/error/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/SourceDescription.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/SpotXAdDescription.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/THEOplayerAdDescription.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/ssai/GoogleDAIConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/ssai/ImagineServerSideAdInsertionConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/ssai/ServerSideAdInsertionConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/ssai/YospaceServerSideAdInsertionConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/ads/ssai/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/dash/DashPlaybackConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/dash/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/drm/DRMConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/drm/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/hls/HlsPlaybackConfiguration.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/hls/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/metadata/MetadataDescription.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/source/metadata/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/timeranges/TimeRange.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/timeranges/barrel.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/track/Quality.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/track/TextTrackCue.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/utils/TypeUtils.d.ts +0 -0
- /package/lib/typescript/{src/api → api}/utils/barrel.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/THEOplayerView.style.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal/adapter}/ads/THEOplayerWebGoogleDAI.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/ContentProtectionRegistry.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/ContentProtectionRegistry.web.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/NativeCertificateRequest.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/NativeCertificateResponse.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/NativeContentProtectionEvent.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/NativeLicenseRequest.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/drm/NativeLicenseResponse.d.ts +0 -0
- /package/lib/typescript/{src/internal → internal}/utils/TypeUtils.d.ts +0 -0
- /package/src/internal/{ads → adapter/ads}/THEOplayerWebGoogleDAI.ts +0 -0
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
|
+
import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';
|
|
5
|
+
import { THEOplayerWebAdsAdapter } from './ads/THEOplayerWebAdsAdapter';
|
|
6
|
+
import { THEOplayerWebCastAdapter } from './cast/THEOplayerWebCastAdapter';
|
|
7
|
+
import { findNativeQualitiesByUid, fromNativeMediaTrackList, fromNativeTextTrackList } from './web/TrackUtils';
|
|
8
|
+
import { WebEventForwarder } from './WebEventForwarder';
|
|
9
|
+
import { WebPresentationModeManager } from './web/WebPresentationModeManager';
|
|
10
|
+
import { WebMediaSession } from './web/WebMediaSession';
|
|
11
|
+
import { PresentationMode } from 'react-native-theoplayer';
|
|
12
|
+
const defaultBackgroundAudioConfiguration = {
|
|
13
|
+
enabled: false
|
|
14
|
+
};
|
|
15
|
+
const defaultPipConfiguration = {
|
|
16
|
+
startsAutomatically: false
|
|
17
|
+
};
|
|
18
|
+
export class THEOplayerWebAdapter extends DefaultEventDispatcher {
|
|
19
|
+
constructor(player, config) {
|
|
20
|
+
var _config$mediaControl;
|
|
21
|
+
super();
|
|
22
|
+
_defineProperty(this, "_player", void 0);
|
|
23
|
+
_defineProperty(this, "_adsAdapter", void 0);
|
|
24
|
+
_defineProperty(this, "_castAdapter", void 0);
|
|
25
|
+
_defineProperty(this, "_eventForwarder", void 0);
|
|
26
|
+
_defineProperty(this, "_presentationModeManager", void 0);
|
|
27
|
+
_defineProperty(this, "_mediaSession", undefined);
|
|
28
|
+
_defineProperty(this, "_targetVideoQuality", undefined);
|
|
29
|
+
_defineProperty(this, "_backgroundAudioConfiguration", defaultBackgroundAudioConfiguration);
|
|
30
|
+
_defineProperty(this, "_pipConfiguration", defaultPipConfiguration);
|
|
31
|
+
_defineProperty(this, "onVisibilityChange", () => {
|
|
32
|
+
var _this$_mediaSession;
|
|
33
|
+
if (document.visibilityState !== 'visible') {
|
|
34
|
+
// Apply background configuration: by default, pause when going to background, unless in pip
|
|
35
|
+
if (this.presentationMode !== PresentationMode.pip && !this.backgroundAudioConfiguration.enabled) {
|
|
36
|
+
this._player.pause();
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
// Apply media session controls
|
|
40
|
+
(_this$_mediaSession = this._mediaSession) === null || _this$_mediaSession === void 0 ? void 0 : _this$_mediaSession.updateActionHandlers();
|
|
41
|
+
});
|
|
42
|
+
this._player = player;
|
|
43
|
+
this._adsAdapter = new THEOplayerWebAdsAdapter(this._player);
|
|
44
|
+
this._castAdapter = new THEOplayerWebCastAdapter(this._player);
|
|
45
|
+
this._eventForwarder = new WebEventForwarder(this._player, this);
|
|
46
|
+
this._presentationModeManager = new WebPresentationModeManager(this._player, this);
|
|
47
|
+
document.addEventListener('visibilitychange', this.onVisibilityChange);
|
|
48
|
+
|
|
49
|
+
// Optionally create a media session connector
|
|
50
|
+
if ((config === null || config === void 0 ? void 0 : (_config$mediaControl = config.mediaControl) === null || _config$mediaControl === void 0 ? void 0 : _config$mediaControl.mediaSessionEnabled) !== false) {
|
|
51
|
+
this._mediaSession = new WebMediaSession(this, player);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
get abr() {
|
|
55
|
+
return this._player.abr;
|
|
56
|
+
}
|
|
57
|
+
get source() {
|
|
58
|
+
return this._player.source;
|
|
59
|
+
}
|
|
60
|
+
set source(source) {
|
|
61
|
+
this._targetVideoQuality = undefined;
|
|
62
|
+
this._player.source = source;
|
|
63
|
+
}
|
|
64
|
+
play() {
|
|
65
|
+
this._player.play();
|
|
66
|
+
}
|
|
67
|
+
pause() {
|
|
68
|
+
this._player.pause();
|
|
69
|
+
}
|
|
70
|
+
get paused() {
|
|
71
|
+
return this._player.paused;
|
|
72
|
+
}
|
|
73
|
+
get autoplay() {
|
|
74
|
+
return this._player.autoplay;
|
|
75
|
+
}
|
|
76
|
+
set autoplay(autoplay) {
|
|
77
|
+
this._player.autoplay = autoplay;
|
|
78
|
+
}
|
|
79
|
+
set preload(type) {
|
|
80
|
+
this._player.preload = type;
|
|
81
|
+
}
|
|
82
|
+
get preload() {
|
|
83
|
+
return this._player.preload;
|
|
84
|
+
}
|
|
85
|
+
get seekable() {
|
|
86
|
+
const nativeRange = this._player.seekable;
|
|
87
|
+
return [...Array(nativeRange.length)].map((_, index) => ({
|
|
88
|
+
start: 1e3 * nativeRange.start(index),
|
|
89
|
+
end: 1e3 * nativeRange.end(index)
|
|
90
|
+
}));
|
|
91
|
+
}
|
|
92
|
+
get buffered() {
|
|
93
|
+
const nativeRange = this._player.buffered;
|
|
94
|
+
return [...Array(nativeRange.length)].map((_, index) => ({
|
|
95
|
+
start: 1e3 * nativeRange.start(index),
|
|
96
|
+
end: 1e3 * nativeRange.end(index)
|
|
97
|
+
}));
|
|
98
|
+
}
|
|
99
|
+
get playbackRate() {
|
|
100
|
+
return this._player.playbackRate;
|
|
101
|
+
}
|
|
102
|
+
set playbackRate(playbackRate) {
|
|
103
|
+
this._player.playbackRate = playbackRate;
|
|
104
|
+
}
|
|
105
|
+
get pipConfiguration() {
|
|
106
|
+
return this._pipConfiguration;
|
|
107
|
+
}
|
|
108
|
+
set pipConfiguration(config) {
|
|
109
|
+
this._pipConfiguration = config;
|
|
110
|
+
}
|
|
111
|
+
get backgroundAudioConfiguration() {
|
|
112
|
+
return this._backgroundAudioConfiguration;
|
|
113
|
+
}
|
|
114
|
+
set backgroundAudioConfiguration(config) {
|
|
115
|
+
var _this$_mediaSession2;
|
|
116
|
+
this._backgroundAudioConfiguration = config;
|
|
117
|
+
|
|
118
|
+
// Notify media session
|
|
119
|
+
(_this$_mediaSession2 = this._mediaSession) === null || _this$_mediaSession2 === void 0 ? void 0 : _this$_mediaSession2.updateActionHandlers();
|
|
120
|
+
}
|
|
121
|
+
get volume() {
|
|
122
|
+
return this._player.volume;
|
|
123
|
+
}
|
|
124
|
+
set volume(volume) {
|
|
125
|
+
this._player.volume = volume;
|
|
126
|
+
}
|
|
127
|
+
get muted() {
|
|
128
|
+
return this._player.muted;
|
|
129
|
+
}
|
|
130
|
+
set muted(muted) {
|
|
131
|
+
this._player.muted = muted;
|
|
132
|
+
}
|
|
133
|
+
get seeking() {
|
|
134
|
+
return this._player.seeking;
|
|
135
|
+
}
|
|
136
|
+
get presentationMode() {
|
|
137
|
+
return this._presentationModeManager.presentationMode;
|
|
138
|
+
}
|
|
139
|
+
set presentationMode(presentationMode) {
|
|
140
|
+
this._presentationModeManager.presentationMode = presentationMode;
|
|
141
|
+
}
|
|
142
|
+
get audioTracks() {
|
|
143
|
+
return fromNativeMediaTrackList(this._player.audioTracks);
|
|
144
|
+
}
|
|
145
|
+
get videoTracks() {
|
|
146
|
+
return fromNativeMediaTrackList(this._player.videoTracks);
|
|
147
|
+
}
|
|
148
|
+
get textTracks() {
|
|
149
|
+
return fromNativeTextTrackList(this._player.textTracks);
|
|
150
|
+
}
|
|
151
|
+
get selectedTextTrack() {
|
|
152
|
+
var _this$_player$textTra;
|
|
153
|
+
return (_this$_player$textTra = this._player.textTracks.find(textTrack => {
|
|
154
|
+
return textTrack.mode === 'showing';
|
|
155
|
+
})) === null || _this$_player$textTra === void 0 ? void 0 : _this$_player$textTra.uid;
|
|
156
|
+
}
|
|
157
|
+
set selectedTextTrack(selectedTextTrack) {
|
|
158
|
+
this._player.textTracks.forEach(textTrack => {
|
|
159
|
+
textTrack.mode = textTrack.uid === selectedTextTrack ? 'showing' : 'disabled';
|
|
160
|
+
});
|
|
161
|
+
}
|
|
162
|
+
get textTrackStyle() {
|
|
163
|
+
return this._player.textTrackStyle;
|
|
164
|
+
}
|
|
165
|
+
get selectedVideoTrack() {
|
|
166
|
+
var _this$_player$videoTr;
|
|
167
|
+
return (_this$_player$videoTr = this._player.videoTracks.find(videoTrack => videoTrack.enabled)) === null || _this$_player$videoTr === void 0 ? void 0 : _this$_player$videoTr.uid;
|
|
168
|
+
}
|
|
169
|
+
set selectedVideoTrack(selectedVideoTrack) {
|
|
170
|
+
this._targetVideoQuality = undefined;
|
|
171
|
+
this._player.videoTracks.forEach(videoTrack => {
|
|
172
|
+
videoTrack.enabled = videoTrack.uid === selectedVideoTrack;
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
get selectedAudioTrack() {
|
|
176
|
+
var _this$_player$audioTr;
|
|
177
|
+
return (_this$_player$audioTr = this._player.audioTracks.find(audioTrack => {
|
|
178
|
+
return audioTrack.enabled;
|
|
179
|
+
})) === null || _this$_player$audioTr === void 0 ? void 0 : _this$_player$audioTr.uid;
|
|
180
|
+
}
|
|
181
|
+
set selectedAudioTrack(selectedAudioTrack) {
|
|
182
|
+
this._player.audioTracks.forEach(audioTrack => {
|
|
183
|
+
audioTrack.enabled = audioTrack.uid === selectedAudioTrack;
|
|
184
|
+
});
|
|
185
|
+
}
|
|
186
|
+
get targetVideoQuality() {
|
|
187
|
+
return this._targetVideoQuality;
|
|
188
|
+
}
|
|
189
|
+
set targetVideoQuality(targetVideoQuality) {
|
|
190
|
+
const enabledVideoTrack = this._player.videoTracks.find(videoTrack => videoTrack.enabled);
|
|
191
|
+
if (enabledVideoTrack) {
|
|
192
|
+
enabledVideoTrack.targetQuality = findNativeQualitiesByUid(enabledVideoTrack, targetVideoQuality);
|
|
193
|
+
}
|
|
194
|
+
this._targetVideoQuality = targetVideoQuality;
|
|
195
|
+
}
|
|
196
|
+
get currentTime() {
|
|
197
|
+
return 1e3 * this._player.currentTime;
|
|
198
|
+
}
|
|
199
|
+
set currentTime(currentTime) {
|
|
200
|
+
if (isNaN(currentTime)) {
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
if (this._player) {
|
|
204
|
+
this._player.currentTime = currentTime / 1e3;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
get duration() {
|
|
208
|
+
return this._player.duration * 1e3;
|
|
209
|
+
}
|
|
210
|
+
get ads() {
|
|
211
|
+
return this._adsAdapter;
|
|
212
|
+
}
|
|
213
|
+
get cast() {
|
|
214
|
+
return this._castAdapter;
|
|
215
|
+
}
|
|
216
|
+
destroy() {
|
|
217
|
+
var _this$_mediaSession3;
|
|
218
|
+
this._eventForwarder.unload();
|
|
219
|
+
(_this$_mediaSession3 = this._mediaSession) === null || _this$_mediaSession3 === void 0 ? void 0 : _this$_mediaSession3.destroy();
|
|
220
|
+
document.removeEventListener('visibilitychange', this.onVisibilityChange);
|
|
221
|
+
}
|
|
222
|
+
get nativeHandle() {
|
|
223
|
+
return this._player;
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
//# sourceMappingURL=THEOplayerWebAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["DefaultEventDispatcher","THEOplayerWebAdsAdapter","THEOplayerWebCastAdapter","findNativeQualitiesByUid","fromNativeMediaTrackList","fromNativeTextTrackList","WebEventForwarder","WebPresentationModeManager","WebMediaSession","PresentationMode","defaultBackgroundAudioConfiguration","enabled","defaultPipConfiguration","startsAutomatically","THEOplayerWebAdapter","constructor","player","config","_config$mediaControl","_defineProperty","undefined","_this$_mediaSession","document","visibilityState","presentationMode","pip","backgroundAudioConfiguration","_player","pause","_mediaSession","updateActionHandlers","_adsAdapter","_castAdapter","_eventForwarder","_presentationModeManager","addEventListener","onVisibilityChange","mediaControl","mediaSessionEnabled","abr","source","_targetVideoQuality","play","paused","autoplay","preload","type","seekable","nativeRange","Array","length","map","_","index","start","end","buffered","playbackRate","pipConfiguration","_pipConfiguration","_backgroundAudioConfiguration","_this$_mediaSession2","volume","muted","seeking","audioTracks","videoTracks","textTracks","selectedTextTrack","_this$_player$textTra","find","textTrack","mode","uid","forEach","textTrackStyle","selectedVideoTrack","_this$_player$videoTr","videoTrack","selectedAudioTrack","_this$_player$audioTr","audioTrack","targetVideoQuality","enabledVideoTrack","targetQuality","currentTime","isNaN","duration","ads","cast","destroy","_this$_mediaSession3","unload","removeEventListener","nativeHandle"],"sources":["THEOplayerWebAdapter.ts"],"sourcesContent":["import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';\nimport type {\n AdsAPI,\n CastAPI,\n MediaTrack,\n NativeHandleType,\n PlayerEventMap,\n PreloadType,\n TextTrack,\n TextTrackStyle,\n THEOplayer,\n PlayerConfiguration,\n} from 'react-native-theoplayer';\nimport { THEOplayerWebAdsAdapter } from './ads/THEOplayerWebAdsAdapter';\nimport { THEOplayerWebCastAdapter } from './cast/THEOplayerWebCastAdapter';\nimport type * as THEOplayerWeb from 'theoplayer';\nimport type { MediaTrack as NativeMediaTrack, TextTrack as NativeTextTrack } from 'theoplayer';\nimport { findNativeQualitiesByUid, fromNativeMediaTrackList, fromNativeTextTrackList } from './web/TrackUtils';\nimport type { ABRConfiguration, SourceDescription } from 'src/api/barrel';\nimport { WebEventForwarder } from './WebEventForwarder';\nimport type { PiPConfiguration } from 'src/api/pip/PiPConfiguration';\nimport type { BackgroundAudioConfiguration } from 'src/api/backgroundAudio/BackgroundAudioConfiguration';\nimport { WebPresentationModeManager } from './web/WebPresentationModeManager';\nimport { WebMediaSession } from './web/WebMediaSession';\nimport { PresentationMode } from 'react-native-theoplayer';\n\nconst defaultBackgroundAudioConfiguration: BackgroundAudioConfiguration = {\n enabled: false,\n};\n\nconst defaultPipConfiguration: PiPConfiguration = {\n startsAutomatically: false,\n};\n\nexport class THEOplayerWebAdapter extends DefaultEventDispatcher<PlayerEventMap> implements THEOplayer {\n private readonly _player: THEOplayerWeb.ChromelessPlayer;\n private readonly _adsAdapter: THEOplayerWebAdsAdapter;\n private readonly _castAdapter: THEOplayerWebCastAdapter;\n private readonly _eventForwarder: WebEventForwarder;\n private readonly _presentationModeManager: WebPresentationModeManager;\n private readonly _mediaSession: WebMediaSession | undefined = undefined;\n private _targetVideoQuality: number | number[] | undefined = undefined;\n private _backgroundAudioConfiguration: BackgroundAudioConfiguration = defaultBackgroundAudioConfiguration;\n private _pipConfiguration: PiPConfiguration = defaultPipConfiguration;\n\n constructor(player: THEOplayerWeb.ChromelessPlayer, config?: PlayerConfiguration) {\n super();\n this._player = player;\n this._adsAdapter = new THEOplayerWebAdsAdapter(this._player);\n this._castAdapter = new THEOplayerWebCastAdapter(this._player);\n this._eventForwarder = new WebEventForwarder(this._player, this);\n this._presentationModeManager = new WebPresentationModeManager(this._player, this);\n document.addEventListener('visibilitychange', this.onVisibilityChange);\n\n // Optionally create a media session connector\n if (config?.mediaControl?.mediaSessionEnabled !== false) {\n this._mediaSession = new WebMediaSession(this, player);\n }\n }\n\n get abr(): ABRConfiguration | undefined {\n return this._player.abr;\n }\n\n get source(): SourceDescription | undefined {\n return this._player.source as SourceDescription;\n }\n\n set source(source: SourceDescription | undefined) {\n this._targetVideoQuality = undefined;\n this._player.source = source;\n }\n\n play(): void {\n this._player.play();\n }\n\n pause(): void {\n this._player.pause();\n }\n\n get paused(): boolean {\n return this._player.paused;\n }\n\n get autoplay(): boolean {\n return this._player.autoplay;\n }\n\n set autoplay(autoplay: boolean) {\n this._player.autoplay = autoplay;\n }\n\n set preload(type: PreloadType) {\n this._player.preload = type;\n }\n\n get preload(): PreloadType {\n return this._player.preload;\n }\n\n get seekable() {\n const nativeRange = this._player.seekable;\n return [...Array(nativeRange.length)].map((_, index) => ({ start: 1e3 * nativeRange.start(index), end: 1e3 * nativeRange.end(index) }));\n }\n\n get buffered() {\n const nativeRange = this._player.buffered;\n return [...Array(nativeRange.length)].map((_, index) => ({ start: 1e3 * nativeRange.start(index), end: 1e3 * nativeRange.end(index) }));\n }\n\n get playbackRate(): number {\n return this._player.playbackRate;\n }\n\n set playbackRate(playbackRate: number) {\n this._player.playbackRate = playbackRate;\n }\n\n get pipConfiguration(): PiPConfiguration {\n return this._pipConfiguration;\n }\n\n set pipConfiguration(config: PiPConfiguration) {\n this._pipConfiguration = config;\n }\n\n get backgroundAudioConfiguration(): BackgroundAudioConfiguration {\n return this._backgroundAudioConfiguration;\n }\n\n set backgroundAudioConfiguration(config: BackgroundAudioConfiguration) {\n this._backgroundAudioConfiguration = config;\n\n // Notify media session\n this._mediaSession?.updateActionHandlers();\n }\n\n get volume(): number {\n return this._player.volume;\n }\n\n set volume(volume: number) {\n this._player.volume = volume;\n }\n\n get muted(): boolean {\n return this._player.muted;\n }\n\n set muted(muted: boolean) {\n this._player.muted = muted;\n }\n\n get seeking(): boolean {\n return this._player.seeking;\n }\n\n get presentationMode(): PresentationMode {\n return this._presentationModeManager.presentationMode;\n }\n\n set presentationMode(presentationMode: PresentationMode) {\n this._presentationModeManager.presentationMode = presentationMode;\n }\n\n get audioTracks(): MediaTrack[] {\n return fromNativeMediaTrackList(this._player.audioTracks);\n }\n\n get videoTracks(): MediaTrack[] {\n return fromNativeMediaTrackList(this._player.videoTracks);\n }\n\n get textTracks(): TextTrack[] {\n return fromNativeTextTrackList(this._player.textTracks);\n }\n\n get selectedTextTrack(): number | undefined {\n return this._player.textTracks.find((textTrack: NativeTextTrack) => {\n return textTrack.mode === 'showing';\n })?.uid;\n }\n\n set selectedTextTrack(selectedTextTrack: number | undefined) {\n this._player.textTracks.forEach((textTrack: NativeTextTrack) => {\n textTrack.mode = textTrack.uid === selectedTextTrack ? 'showing' : 'disabled';\n });\n }\n\n get textTrackStyle(): TextTrackStyle {\n return this._player.textTrackStyle as TextTrackStyle;\n }\n\n get selectedVideoTrack(): number | undefined {\n return this._player.videoTracks.find((videoTrack: NativeMediaTrack) => videoTrack.enabled)?.uid;\n }\n\n set selectedVideoTrack(selectedVideoTrack: number | undefined) {\n this._targetVideoQuality = undefined;\n this._player.videoTracks.forEach((videoTrack: NativeMediaTrack) => {\n videoTrack.enabled = videoTrack.uid === selectedVideoTrack;\n });\n }\n\n get selectedAudioTrack(): number | undefined {\n return this._player.audioTracks.find((audioTrack: NativeMediaTrack) => {\n return audioTrack.enabled;\n })?.uid;\n }\n\n set selectedAudioTrack(selectedAudioTrack: number | undefined) {\n this._player.audioTracks.forEach((audioTrack: NativeMediaTrack) => {\n audioTrack.enabled = audioTrack.uid === selectedAudioTrack;\n });\n }\n\n get targetVideoQuality(): number | number[] | undefined {\n return this._targetVideoQuality;\n }\n\n set targetVideoQuality(targetVideoQuality: number | number[] | undefined) {\n const enabledVideoTrack = this._player.videoTracks.find((videoTrack: NativeMediaTrack) => videoTrack.enabled);\n if (enabledVideoTrack) {\n enabledVideoTrack.targetQuality = findNativeQualitiesByUid(enabledVideoTrack, targetVideoQuality);\n }\n this._targetVideoQuality = targetVideoQuality;\n }\n\n get currentTime(): number {\n return 1e3 * this._player.currentTime;\n }\n\n set currentTime(currentTime: number) {\n if (isNaN(currentTime)) {\n return;\n }\n if (this._player) {\n this._player.currentTime = currentTime / 1e3;\n }\n }\n\n get duration(): number {\n return this._player.duration * 1e3;\n }\n\n public get ads(): AdsAPI {\n return this._adsAdapter;\n }\n\n public get cast(): CastAPI {\n return this._castAdapter;\n }\n\n destroy(): void {\n this._eventForwarder.unload();\n this._mediaSession?.destroy();\n document.removeEventListener('visibilitychange', this.onVisibilityChange);\n }\n\n get nativeHandle(): NativeHandleType {\n return this._player;\n }\n\n private readonly onVisibilityChange = () => {\n if (document.visibilityState !== 'visible') {\n // Apply background configuration: by default, pause when going to background, unless in pip\n if (this.presentationMode !== PresentationMode.pip && !this.backgroundAudioConfiguration.enabled) {\n this._player.pause();\n }\n }\n // Apply media session controls\n this._mediaSession?.updateActionHandlers();\n };\n}\n"],"mappings":"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"}
|
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
2
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
|
|
3
|
+
function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
|
4
|
+
import { AdEventType, MediaTrackEventType, MediaTrackType, PlayerEventType, PresentationMode, TextTrackEventType, TrackListEventType } from 'react-native-theoplayer';
|
|
5
|
+
import { BaseEvent } from './event/BaseEvent';
|
|
6
|
+
import { DefaultAdEvent, DefaultAirplayStateChangeEvent, DefaultChromecastChangeEvent, DefaultChromecastErrorEvent, DefaultDurationChangeEvent, DefaultErrorEvent, DefaultLoadedMetadataEvent, DefaultMediaTrackEvent, DefaultMediaTrackListEvent, DefaultPresentationModeChangeEvent, DefaultProgressEvent, DefaultRateChangeEvent, DefaultReadyStateChangeEvent, DefaultSegmentNotFoundEvent, DefaultTextTrackEvent, DefaultTextTrackListEvent, DefaultTimeupdateEvent, DefaultVolumeChangeEvent } from './event/PlayerEvents';
|
|
7
|
+
import { fromNativeCue, fromNativeMediaTrack, fromNativeTextTrack } from './web/TrackUtils';
|
|
8
|
+
export class WebEventForwarder {
|
|
9
|
+
constructor(player, facade) {
|
|
10
|
+
_defineProperty(this, "_player", void 0);
|
|
11
|
+
_defineProperty(this, "_facade", void 0);
|
|
12
|
+
_defineProperty(this, "onSourceChange", () => {
|
|
13
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SOURCE_CHANGE));
|
|
14
|
+
});
|
|
15
|
+
_defineProperty(this, "onLoadStart", () => {
|
|
16
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOAD_START));
|
|
17
|
+
});
|
|
18
|
+
_defineProperty(this, "onLoadedData", () => {
|
|
19
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOADED_DATA));
|
|
20
|
+
});
|
|
21
|
+
_defineProperty(this, "onLoadedMetadata", () => {
|
|
22
|
+
var _this$_player$textTra, _this$_player$videoTr, _this$_player$audioTr;
|
|
23
|
+
this._facade.dispatchEvent(new DefaultLoadedMetadataEvent(this._player.textTracks.map(textTrack => fromNativeTextTrack(textTrack)), this._player.audioTracks.map(audioTrack => fromNativeMediaTrack(audioTrack)), this._player.videoTracks.map(videoTrack => fromNativeMediaTrack(videoTrack)), 1e3 * this._player.duration, (_this$_player$textTra = this._player.textTracks.find(track => track.mode === 'showing')) === null || _this$_player$textTra === void 0 ? void 0 : _this$_player$textTra.uid, (_this$_player$videoTr = this._player.videoTracks.find(track => track.enabled)) === null || _this$_player$videoTr === void 0 ? void 0 : _this$_player$videoTr.uid, (_this$_player$audioTr = this._player.audioTracks.find(track => track.enabled)) === null || _this$_player$audioTr === void 0 ? void 0 : _this$_player$audioTr.uid));
|
|
24
|
+
});
|
|
25
|
+
_defineProperty(this, "onError", event => {
|
|
26
|
+
this._facade.dispatchEvent(new DefaultErrorEvent({
|
|
27
|
+
errorCode: event.errorObject.code.toString(),
|
|
28
|
+
errorMessage: event.errorObject.message
|
|
29
|
+
}));
|
|
30
|
+
});
|
|
31
|
+
_defineProperty(this, "onProgress", () => {
|
|
32
|
+
this._facade.dispatchEvent(new DefaultProgressEvent(fromTimeRanges(this._player.seekable), fromTimeRanges(this._player.buffered)));
|
|
33
|
+
});
|
|
34
|
+
_defineProperty(this, "onCanPlay", () => {
|
|
35
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.CANPLAY));
|
|
36
|
+
});
|
|
37
|
+
_defineProperty(this, "onPlay", () => {
|
|
38
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAY));
|
|
39
|
+
});
|
|
40
|
+
_defineProperty(this, "onPlaying", () => {
|
|
41
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAYING));
|
|
42
|
+
});
|
|
43
|
+
_defineProperty(this, "onPause", () => {
|
|
44
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PAUSE));
|
|
45
|
+
});
|
|
46
|
+
_defineProperty(this, "onSeeking", () => {
|
|
47
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKING));
|
|
48
|
+
});
|
|
49
|
+
_defineProperty(this, "onSeeked", () => {
|
|
50
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKED));
|
|
51
|
+
});
|
|
52
|
+
_defineProperty(this, "onEnded", () => {
|
|
53
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.ENDED));
|
|
54
|
+
});
|
|
55
|
+
_defineProperty(this, "onWaiting", () => {
|
|
56
|
+
this._facade.dispatchEvent(new BaseEvent(PlayerEventType.WAITING));
|
|
57
|
+
});
|
|
58
|
+
_defineProperty(this, "onReadyStateChanged", event => {
|
|
59
|
+
this._facade.dispatchEvent(new DefaultReadyStateChangeEvent(event.readyState));
|
|
60
|
+
});
|
|
61
|
+
_defineProperty(this, "onTimeUpdate", event => {
|
|
62
|
+
var _event$currentProgram;
|
|
63
|
+
this._facade.dispatchEvent(new DefaultTimeupdateEvent(event.currentTime * 1e3, (_event$currentProgram = event.currentProgramDateTime) === null || _event$currentProgram === void 0 ? void 0 : _event$currentProgram.getTime()));
|
|
64
|
+
});
|
|
65
|
+
_defineProperty(this, "onDurationChange", event => {
|
|
66
|
+
this._facade.dispatchEvent(new DefaultDurationChangeEvent(event.duration * 1e3));
|
|
67
|
+
});
|
|
68
|
+
_defineProperty(this, "onPlaybackRateChange", event => {
|
|
69
|
+
this._facade.dispatchEvent(new DefaultRateChangeEvent(event.playbackRate));
|
|
70
|
+
});
|
|
71
|
+
_defineProperty(this, "onSegmentNotFound", () => {
|
|
72
|
+
this._facade.dispatchEvent(new DefaultSegmentNotFoundEvent(0, 'Segment not found', -1));
|
|
73
|
+
});
|
|
74
|
+
_defineProperty(this, "onVolumeChangeEvent", event => {
|
|
75
|
+
this._facade.dispatchEvent(new DefaultVolumeChangeEvent(event.volume, this._player.muted));
|
|
76
|
+
});
|
|
77
|
+
_defineProperty(this, "onPresentationModeChange", event => {
|
|
78
|
+
this._facade.dispatchEvent(new DefaultPresentationModeChangeEvent(event.presentationMode, PresentationMode.inline)); // TODO: move to extended event
|
|
79
|
+
});
|
|
80
|
+
_defineProperty(this, "onAddTextTrack", event => {
|
|
81
|
+
const track = event.track;
|
|
82
|
+
track.addEventListener('addcue', this.onAddTextTrackCue(track));
|
|
83
|
+
track.addEventListener('removecue', this.onRemoveTextTrackCue(track));
|
|
84
|
+
track.addEventListener('entercue', this.onEnterTextTrackCue(track));
|
|
85
|
+
track.addEventListener('exitcue', this.onExitTextTrackCue(track));
|
|
86
|
+
this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.ADD_TRACK, track));
|
|
87
|
+
});
|
|
88
|
+
_defineProperty(this, "onRemoveTextTrack", event => {
|
|
89
|
+
const track = event.track;
|
|
90
|
+
track.removeEventListener('addcue', this.onAddTextTrackCue(track));
|
|
91
|
+
track.removeEventListener('removecue', this.onRemoveTextTrackCue(track));
|
|
92
|
+
track.removeEventListener('entercue', this.onEnterTextTrackCue(track));
|
|
93
|
+
track.removeEventListener('exitcue', this.onExitTextTrackCue(track));
|
|
94
|
+
this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.REMOVE_TRACK, track));
|
|
95
|
+
});
|
|
96
|
+
_defineProperty(this, "onChangeTextTrack", event => {
|
|
97
|
+
this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.CHANGE_TRACK, event.track));
|
|
98
|
+
});
|
|
99
|
+
_defineProperty(this, "onAddAudioTrack", event => {
|
|
100
|
+
this.onAddMediaTrack(event, MediaTrackType.AUDIO);
|
|
101
|
+
});
|
|
102
|
+
_defineProperty(this, "onAddVideoTrack", event => {
|
|
103
|
+
this.onAddMediaTrack(event, MediaTrackType.VIDEO);
|
|
104
|
+
});
|
|
105
|
+
_defineProperty(this, "onAddMediaTrack", (event, trackType) => {
|
|
106
|
+
const track = event.track;
|
|
107
|
+
track.addEventListener('activequalitychanged', this.onActiveQualityChanged(trackType, track));
|
|
108
|
+
this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.ADD_TRACK, trackType, track));
|
|
109
|
+
});
|
|
110
|
+
_defineProperty(this, "onRemoveAudioTrack", event => {
|
|
111
|
+
this.onRemoveMediaTrack(event, MediaTrackType.AUDIO);
|
|
112
|
+
});
|
|
113
|
+
_defineProperty(this, "onRemoveVideoTrack", event => {
|
|
114
|
+
this.onRemoveMediaTrack(event, MediaTrackType.VIDEO);
|
|
115
|
+
});
|
|
116
|
+
_defineProperty(this, "onRemoveMediaTrack", (event, trackType) => {
|
|
117
|
+
const track = event.track;
|
|
118
|
+
track.removeEventListener('activequalitychanged', this.onActiveQualityChanged(trackType, track));
|
|
119
|
+
this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.REMOVE_TRACK, trackType, track));
|
|
120
|
+
});
|
|
121
|
+
_defineProperty(this, "onChangeAudioTrack", event => {
|
|
122
|
+
this.onChangeMediaTrack(event, MediaTrackType.AUDIO);
|
|
123
|
+
});
|
|
124
|
+
_defineProperty(this, "onChangeVideoTrack", event => {
|
|
125
|
+
this.onChangeMediaTrack(event, MediaTrackType.VIDEO);
|
|
126
|
+
});
|
|
127
|
+
_defineProperty(this, "onChangeMediaTrack", (event, trackType) => {
|
|
128
|
+
const track = event.track;
|
|
129
|
+
this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.CHANGE_TRACK, trackType, track));
|
|
130
|
+
});
|
|
131
|
+
_defineProperty(this, "onChromecastStateChange", event => {
|
|
132
|
+
this._facade.dispatchEvent(new DefaultChromecastChangeEvent(event.state));
|
|
133
|
+
});
|
|
134
|
+
_defineProperty(this, "onChromecastError", event => {
|
|
135
|
+
this._facade.dispatchEvent(new DefaultChromecastErrorEvent(event.error));
|
|
136
|
+
});
|
|
137
|
+
_defineProperty(this, "onAirplayStateChange", event => {
|
|
138
|
+
this._facade.dispatchEvent(new DefaultAirplayStateChangeEvent(event.state));
|
|
139
|
+
});
|
|
140
|
+
_defineProperty(this, "onAdEvent", event => {
|
|
141
|
+
const castedEvent = event;
|
|
142
|
+
this._facade.dispatchEvent(new DefaultAdEvent(event.type, castedEvent.ad));
|
|
143
|
+
});
|
|
144
|
+
_defineProperty(this, "onAddTextTrackCue", track => event => {
|
|
145
|
+
const {
|
|
146
|
+
cue
|
|
147
|
+
} = event;
|
|
148
|
+
if (cue) {
|
|
149
|
+
this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.ADD_CUE, track.uid, fromNativeCue(cue)));
|
|
150
|
+
}
|
|
151
|
+
});
|
|
152
|
+
_defineProperty(this, "onRemoveTextTrackCue", track => event => {
|
|
153
|
+
const {
|
|
154
|
+
cue
|
|
155
|
+
} = event;
|
|
156
|
+
if (cue) {
|
|
157
|
+
this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.REMOVE_CUE, track.uid, fromNativeCue(cue)));
|
|
158
|
+
}
|
|
159
|
+
});
|
|
160
|
+
_defineProperty(this, "onEnterTextTrackCue", track => event => {
|
|
161
|
+
const {
|
|
162
|
+
cue
|
|
163
|
+
} = event;
|
|
164
|
+
if (cue) {
|
|
165
|
+
this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.ENTER_CUE, track.uid, fromNativeCue(cue)));
|
|
166
|
+
}
|
|
167
|
+
});
|
|
168
|
+
_defineProperty(this, "onExitTextTrackCue", track => event => {
|
|
169
|
+
const {
|
|
170
|
+
cue
|
|
171
|
+
} = event;
|
|
172
|
+
if (cue) {
|
|
173
|
+
this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.EXIT_CUE, track.uid, fromNativeCue(cue)));
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
_defineProperty(this, "onActiveQualityChanged", (trackType, track) => () => {
|
|
177
|
+
const quality = track.activeQuality;
|
|
178
|
+
this._facade.dispatchEvent(new DefaultMediaTrackEvent(MediaTrackEventType.ACTIVE_QUALITY_CHANGED, trackType, track.uid, quality ? [quality] : undefined));
|
|
179
|
+
});
|
|
180
|
+
this._player = player;
|
|
181
|
+
this._facade = facade;
|
|
182
|
+
this.addEventListeners();
|
|
183
|
+
}
|
|
184
|
+
addEventListeners() {
|
|
185
|
+
var _this$_player$cast, _this$_player$cast$ch, _this$_player$cast2, _this$_player$cast2$c, _this$_player$cast3, _this$_player$cast3$a, _this$_player$ads;
|
|
186
|
+
this._player.addEventListener('sourcechange', this.onSourceChange);
|
|
187
|
+
this._player.addEventListener('loadstart', this.onLoadStart);
|
|
188
|
+
this._player.addEventListener('loadeddata', this.onLoadedData);
|
|
189
|
+
this._player.addEventListener('loadedmetadata', this.onLoadedMetadata);
|
|
190
|
+
this._player.addEventListener('error', this.onError);
|
|
191
|
+
this._player.addEventListener('progress', this.onProgress);
|
|
192
|
+
this._player.addEventListener('play', this.onPlay);
|
|
193
|
+
this._player.addEventListener('canplay', this.onCanPlay);
|
|
194
|
+
this._player.addEventListener('playing', this.onPlaying);
|
|
195
|
+
this._player.addEventListener('pause', this.onPause);
|
|
196
|
+
this._player.addEventListener('seeking', this.onSeeking);
|
|
197
|
+
this._player.addEventListener('seeked', this.onSeeked);
|
|
198
|
+
this._player.addEventListener('ended', this.onEnded);
|
|
199
|
+
this._player.addEventListener('waiting', this.onWaiting);
|
|
200
|
+
this._player.addEventListener('readystatechange', this.onReadyStateChanged);
|
|
201
|
+
this._player.addEventListener('timeupdate', this.onTimeUpdate);
|
|
202
|
+
this._player.addEventListener('durationchange', this.onDurationChange);
|
|
203
|
+
this._player.addEventListener('ratechange', this.onPlaybackRateChange);
|
|
204
|
+
this._player.addEventListener('segmentnotfound', this.onSegmentNotFound);
|
|
205
|
+
this._player.addEventListener('volumechange', this.onVolumeChangeEvent);
|
|
206
|
+
this._player.presentation.addEventListener('presentationmodechange', this.onPresentationModeChange);
|
|
207
|
+
this._player.textTracks.addEventListener('addtrack', this.onAddTextTrack);
|
|
208
|
+
this._player.textTracks.addEventListener('removetrack', this.onRemoveTextTrack);
|
|
209
|
+
this._player.textTracks.addEventListener('change', this.onChangeTextTrack);
|
|
210
|
+
this._player.audioTracks.addEventListener('addtrack', this.onAddAudioTrack);
|
|
211
|
+
this._player.audioTracks.addEventListener('removetrack', this.onRemoveAudioTrack);
|
|
212
|
+
this._player.audioTracks.addEventListener('change', this.onChangeAudioTrack);
|
|
213
|
+
this._player.videoTracks.addEventListener('addtrack', this.onAddVideoTrack);
|
|
214
|
+
this._player.videoTracks.addEventListener('removetrack', this.onRemoveVideoTrack);
|
|
215
|
+
this._player.videoTracks.addEventListener('change', this.onChangeVideoTrack);
|
|
216
|
+
(_this$_player$cast = this._player.cast) === null || _this$_player$cast === void 0 ? void 0 : (_this$_player$cast$ch = _this$_player$cast.chromecast) === null || _this$_player$cast$ch === void 0 ? void 0 : _this$_player$cast$ch.addEventListener('statechange', this.onChromecastStateChange);
|
|
217
|
+
(_this$_player$cast2 = this._player.cast) === null || _this$_player$cast2 === void 0 ? void 0 : (_this$_player$cast2$c = _this$_player$cast2.chromecast) === null || _this$_player$cast2$c === void 0 ? void 0 : _this$_player$cast2$c.addEventListener('error', this.onChromecastError);
|
|
218
|
+
(_this$_player$cast3 = this._player.cast) === null || _this$_player$cast3 === void 0 ? void 0 : (_this$_player$cast3$a = _this$_player$cast3.airplay) === null || _this$_player$cast3$a === void 0 ? void 0 : _this$_player$cast3$a.addEventListener('statechange', this.onAirplayStateChange);
|
|
219
|
+
(_this$_player$ads = this._player.ads) === null || _this$_player$ads === void 0 ? void 0 : _this$_player$ads.addEventListener(FORWARDED_AD_EVENTS, this.onAdEvent);
|
|
220
|
+
}
|
|
221
|
+
unload() {
|
|
222
|
+
this.removeEventListeners();
|
|
223
|
+
}
|
|
224
|
+
removeEventListeners() {
|
|
225
|
+
var _this$_player$cast4, _this$_player$cast4$c, _this$_player$cast5, _this$_player$cast5$c, _this$_player$cast6, _this$_player$cast6$a, _this$_player$ads2;
|
|
226
|
+
this._player.removeEventListener('sourcechange', this.onSourceChange);
|
|
227
|
+
this._player.removeEventListener('loadstart', this.onLoadStart);
|
|
228
|
+
this._player.removeEventListener('loadeddata', this.onLoadedData);
|
|
229
|
+
this._player.removeEventListener('loadedmetadata', this.onLoadedMetadata);
|
|
230
|
+
this._player.removeEventListener('error', this.onError);
|
|
231
|
+
this._player.removeEventListener('progress', this.onProgress);
|
|
232
|
+
this._player.removeEventListener('canplay', this.onCanPlay);
|
|
233
|
+
this._player.removeEventListener('play', this.onPlay);
|
|
234
|
+
this._player.removeEventListener('playing', this.onPlaying);
|
|
235
|
+
this._player.removeEventListener('pause', this.onPause);
|
|
236
|
+
this._player.removeEventListener('seeking', this.onSeeking);
|
|
237
|
+
this._player.removeEventListener('seeked', this.onSeeked);
|
|
238
|
+
this._player.removeEventListener('ended', this.onEnded);
|
|
239
|
+
this._player.removeEventListener('waiting', this.onWaiting);
|
|
240
|
+
this._player.removeEventListener('readystatechange', this.onReadyStateChanged);
|
|
241
|
+
this._player.removeEventListener('timeupdate', this.onTimeUpdate);
|
|
242
|
+
this._player.removeEventListener('durationchange', this.onDurationChange);
|
|
243
|
+
this._player.removeEventListener('ratechange', this.onPlaybackRateChange);
|
|
244
|
+
this._player.removeEventListener('segmentnotfound', this.onSegmentNotFound);
|
|
245
|
+
this._player.removeEventListener('volumechange', this.onVolumeChangeEvent);
|
|
246
|
+
this._player.presentation.removeEventListener('presentationmodechange', this.onPresentationModeChange);
|
|
247
|
+
this._player.textTracks.removeEventListener('addtrack', this.onAddTextTrack);
|
|
248
|
+
this._player.textTracks.removeEventListener('removetrack', this.onRemoveTextTrack);
|
|
249
|
+
this._player.textTracks.removeEventListener('change', this.onChangeTextTrack);
|
|
250
|
+
this._player.audioTracks.removeEventListener('addtrack', this.onAddAudioTrack);
|
|
251
|
+
this._player.audioTracks.removeEventListener('removetrack', this.onRemoveAudioTrack);
|
|
252
|
+
this._player.audioTracks.removeEventListener('change', this.onChangeAudioTrack);
|
|
253
|
+
this._player.videoTracks.removeEventListener('addtrack', this.onAddVideoTrack);
|
|
254
|
+
this._player.videoTracks.removeEventListener('removetrack', this.onRemoveVideoTrack);
|
|
255
|
+
this._player.videoTracks.removeEventListener('change', this.onChangeVideoTrack);
|
|
256
|
+
(_this$_player$cast4 = this._player.cast) === null || _this$_player$cast4 === void 0 ? void 0 : (_this$_player$cast4$c = _this$_player$cast4.chromecast) === null || _this$_player$cast4$c === void 0 ? void 0 : _this$_player$cast4$c.removeEventListener('statechange', this.onChromecastStateChange);
|
|
257
|
+
(_this$_player$cast5 = this._player.cast) === null || _this$_player$cast5 === void 0 ? void 0 : (_this$_player$cast5$c = _this$_player$cast5.chromecast) === null || _this$_player$cast5$c === void 0 ? void 0 : _this$_player$cast5$c.removeEventListener('error', this.onChromecastError);
|
|
258
|
+
(_this$_player$cast6 = this._player.cast) === null || _this$_player$cast6 === void 0 ? void 0 : (_this$_player$cast6$a = _this$_player$cast6.airplay) === null || _this$_player$cast6$a === void 0 ? void 0 : _this$_player$cast6$a.removeEventListener('statechange', this.onAirplayStateChange);
|
|
259
|
+
(_this$_player$ads2 = this._player.ads) === null || _this$_player$ads2 === void 0 ? void 0 : _this$_player$ads2.removeEventListener(FORWARDED_AD_EVENTS, this.onAdEvent);
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
const FORWARDED_AD_EVENTS = [AdEventType.ADD_AD_BREAK, AdEventType.REMOVE_AD_BREAK, AdEventType.AD_LOADED, AdEventType.AD_BREAK_BEGIN, AdEventType.AD_BREAK_END, AdEventType.AD_BREAK_CHANGE, AdEventType.UPDATE_AD_BREAK, AdEventType.ADD_AD, AdEventType.AD_BEGIN, AdEventType.AD_END, AdEventType.UPDATE_AD, AdEventType.AD_FIRST_QUARTILE, AdEventType.AD_MIDPOINT, AdEventType.AD_THIRD_QUARTILE, AdEventType.AD_SKIP, AdEventType.AD_IMPRESSION, AdEventType.AD_ERROR, AdEventType.AD_METADATA, AdEventType.AD_BUFFERING];
|
|
263
|
+
function fromTimeRanges(timeRanges) {
|
|
264
|
+
const result = [];
|
|
265
|
+
for (let i = 0; i < timeRanges.length; i++) {
|
|
266
|
+
result.push({
|
|
267
|
+
start: timeRanges.start(i) * 1e3,
|
|
268
|
+
end: timeRanges.end(i) * 1e3
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
return result;
|
|
272
|
+
}
|
|
273
|
+
//# sourceMappingURL=WebEventForwarder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AdEventType","MediaTrackEventType","MediaTrackType","PlayerEventType","PresentationMode","TextTrackEventType","TrackListEventType","BaseEvent","DefaultAdEvent","DefaultAirplayStateChangeEvent","DefaultChromecastChangeEvent","DefaultChromecastErrorEvent","DefaultDurationChangeEvent","DefaultErrorEvent","DefaultLoadedMetadataEvent","DefaultMediaTrackEvent","DefaultMediaTrackListEvent","DefaultPresentationModeChangeEvent","DefaultProgressEvent","DefaultRateChangeEvent","DefaultReadyStateChangeEvent","DefaultSegmentNotFoundEvent","DefaultTextTrackEvent","DefaultTextTrackListEvent","DefaultTimeupdateEvent","DefaultVolumeChangeEvent","fromNativeCue","fromNativeMediaTrack","fromNativeTextTrack","WebEventForwarder","constructor","player","facade","_defineProperty","_facade","dispatchEvent","SOURCE_CHANGE","LOAD_START","LOADED_DATA","_this$_player$textTra","_this$_player$videoTr","_this$_player$audioTr","_player","textTracks","map","textTrack","audioTracks","audioTrack","videoTracks","videoTrack","duration","find","track","mode","uid","enabled","event","errorCode","errorObject","code","toString","errorMessage","message","fromTimeRanges","seekable","buffered","CANPLAY","PLAY","PLAYING","PAUSE","SEEKING","SEEKED","ENDED","WAITING","readyState","_event$currentProgram","currentTime","currentProgramDateTime","getTime","playbackRate","volume","muted","presentationMode","inline","addEventListener","onAddTextTrackCue","onRemoveTextTrackCue","onEnterTextTrackCue","onExitTextTrackCue","ADD_TRACK","removeEventListener","REMOVE_TRACK","CHANGE_TRACK","onAddMediaTrack","AUDIO","VIDEO","trackType","onActiveQualityChanged","onRemoveMediaTrack","onChangeMediaTrack","state","error","castedEvent","type","ad","cue","ADD_CUE","REMOVE_CUE","ENTER_CUE","EXIT_CUE","quality","activeQuality","ACTIVE_QUALITY_CHANGED","undefined","addEventListeners","_this$_player$cast","_this$_player$cast$ch","_this$_player$cast2","_this$_player$cast2$c","_this$_player$cast3","_this$_player$cast3$a","_this$_player$ads","onSourceChange","onLoadStart","onLoadedData","onLoadedMetadata","onError","onProgress","onPlay","onCanPlay","onPlaying","onPause","onSeeking","onSeeked","onEnded","onWaiting","onReadyStateChanged","onTimeUpdate","onDurationChange","onPlaybackRateChange","onSegmentNotFound","onVolumeChangeEvent","presentation","onPresentationModeChange","onAddTextTrack","onRemoveTextTrack","onChangeTextTrack","onAddAudioTrack","onRemoveAudioTrack","onChangeAudioTrack","onAddVideoTrack","onRemoveVideoTrack","onChangeVideoTrack","cast","chromecast","onChromecastStateChange","onChromecastError","airplay","onAirplayStateChange","ads","FORWARDED_AD_EVENTS","onAdEvent","unload","removeEventListeners","_this$_player$cast4","_this$_player$cast4$c","_this$_player$cast5","_this$_player$cast5$c","_this$_player$cast6","_this$_player$cast6$a","_this$_player$ads2","ADD_AD_BREAK","REMOVE_AD_BREAK","AD_LOADED","AD_BREAK_BEGIN","AD_BREAK_END","AD_BREAK_CHANGE","UPDATE_AD_BREAK","ADD_AD","AD_BEGIN","AD_END","UPDATE_AD","AD_FIRST_QUARTILE","AD_MIDPOINT","AD_THIRD_QUARTILE","AD_SKIP","AD_IMPRESSION","AD_ERROR","AD_METADATA","AD_BUFFERING","timeRanges","result","i","length","push","start","end"],"sources":["WebEventForwarder.ts"],"sourcesContent":["import type * as THEOplayer from 'theoplayer';\nimport type {\n AddTrackEvent,\n CastStateChangeEvent,\n ChromecastErrorEvent,\n DurationChangeEvent as NativeDurationChangeEvent,\n ErrorEvent as NativeErrorEvent,\n Event as NativeEvent,\n MediaTrack as NativeMediaTrack,\n PresentationModeChangeEvent,\n RateChangeEvent as NativeRateChangeEvent,\n ReadyStateChangeEvent as NativeReadyStateChangeEvent,\n RemoveTrackEvent,\n TextTrack as NativeTextTrack,\n TextTrackCue as NativeTextTrackCue,\n TimeUpdateEvent as NativeTimeUpdateEvent,\n TrackChangeEvent,\n VolumeChangeEvent as NativeVolumeChangeEvent,\n} from 'theoplayer';\nimport type { AdEvent, MediaTrack, TextTrack, TimeRange } from 'react-native-theoplayer';\nimport {\n AdEventType,\n CastState,\n MediaTrackEventType,\n MediaTrackType,\n PlayerEventType,\n PresentationMode,\n TextTrackEventType,\n TrackListEventType,\n} from 'react-native-theoplayer';\nimport type { THEOplayerWebAdapter } from './THEOplayerWebAdapter';\nimport { BaseEvent } from './event/BaseEvent';\nimport {\n DefaultAdEvent,\n DefaultAirplayStateChangeEvent,\n DefaultChromecastChangeEvent,\n DefaultChromecastErrorEvent,\n DefaultDurationChangeEvent,\n DefaultErrorEvent,\n DefaultLoadedMetadataEvent,\n DefaultMediaTrackEvent,\n DefaultMediaTrackListEvent,\n DefaultPresentationModeChangeEvent,\n DefaultProgressEvent,\n DefaultRateChangeEvent,\n DefaultReadyStateChangeEvent,\n DefaultSegmentNotFoundEvent,\n DefaultTextTrackEvent,\n DefaultTextTrackListEvent,\n DefaultTimeupdateEvent,\n DefaultVolumeChangeEvent,\n} from './event/PlayerEvents';\nimport { fromNativeCue, fromNativeMediaTrack, fromNativeTextTrack } from './web/TrackUtils';\n\nexport class WebEventForwarder {\n private readonly _player: THEOplayer.ChromelessPlayer;\n private readonly _facade: THEOplayerWebAdapter;\n\n constructor(player: THEOplayer.ChromelessPlayer, facade: THEOplayerWebAdapter) {\n this._player = player;\n this._facade = facade;\n this.addEventListeners();\n }\n\n private addEventListeners() {\n this._player.addEventListener('sourcechange', this.onSourceChange);\n this._player.addEventListener('loadstart', this.onLoadStart);\n this._player.addEventListener('loadeddata', this.onLoadedData);\n this._player.addEventListener('loadedmetadata', this.onLoadedMetadata);\n this._player.addEventListener('error', this.onError);\n this._player.addEventListener('progress', this.onProgress);\n this._player.addEventListener('play', this.onPlay);\n this._player.addEventListener('canplay', this.onCanPlay);\n this._player.addEventListener('playing', this.onPlaying);\n this._player.addEventListener('pause', this.onPause);\n this._player.addEventListener('seeking', this.onSeeking);\n this._player.addEventListener('seeked', this.onSeeked);\n this._player.addEventListener('ended', this.onEnded);\n this._player.addEventListener('waiting', this.onWaiting);\n this._player.addEventListener('readystatechange', this.onReadyStateChanged);\n this._player.addEventListener('timeupdate', this.onTimeUpdate);\n this._player.addEventListener('durationchange', this.onDurationChange);\n this._player.addEventListener('ratechange', this.onPlaybackRateChange);\n this._player.addEventListener('segmentnotfound', this.onSegmentNotFound);\n this._player.addEventListener('volumechange', this.onVolumeChangeEvent);\n this._player.presentation.addEventListener('presentationmodechange', this.onPresentationModeChange);\n\n this._player.textTracks.addEventListener('addtrack', this.onAddTextTrack);\n this._player.textTracks.addEventListener('removetrack', this.onRemoveTextTrack);\n this._player.textTracks.addEventListener('change', this.onChangeTextTrack);\n\n this._player.audioTracks.addEventListener('addtrack', this.onAddAudioTrack);\n this._player.audioTracks.addEventListener('removetrack', this.onRemoveAudioTrack);\n this._player.audioTracks.addEventListener('change', this.onChangeAudioTrack);\n\n this._player.videoTracks.addEventListener('addtrack', this.onAddVideoTrack);\n this._player.videoTracks.addEventListener('removetrack', this.onRemoveVideoTrack);\n this._player.videoTracks.addEventListener('change', this.onChangeVideoTrack);\n\n this._player.cast?.chromecast?.addEventListener('statechange', this.onChromecastStateChange);\n this._player.cast?.chromecast?.addEventListener('error', this.onChromecastError);\n this._player.cast?.airplay?.addEventListener('statechange', this.onAirplayStateChange);\n\n this._player.ads?.addEventListener(FORWARDED_AD_EVENTS, this.onAdEvent);\n }\n\n unload(): void {\n this.removeEventListeners();\n }\n\n private removeEventListeners() {\n this._player.removeEventListener('sourcechange', this.onSourceChange);\n this._player.removeEventListener('loadstart', this.onLoadStart);\n this._player.removeEventListener('loadeddata', this.onLoadedData);\n this._player.removeEventListener('loadedmetadata', this.onLoadedMetadata);\n this._player.removeEventListener('error', this.onError);\n this._player.removeEventListener('progress', this.onProgress);\n this._player.removeEventListener('canplay', this.onCanPlay);\n this._player.removeEventListener('play', this.onPlay);\n this._player.removeEventListener('playing', this.onPlaying);\n this._player.removeEventListener('pause', this.onPause);\n this._player.removeEventListener('seeking', this.onSeeking);\n this._player.removeEventListener('seeked', this.onSeeked);\n this._player.removeEventListener('ended', this.onEnded);\n this._player.removeEventListener('waiting', this.onWaiting);\n this._player.removeEventListener('readystatechange', this.onReadyStateChanged);\n this._player.removeEventListener('timeupdate', this.onTimeUpdate);\n this._player.removeEventListener('durationchange', this.onDurationChange);\n this._player.removeEventListener('ratechange', this.onPlaybackRateChange);\n this._player.removeEventListener('segmentnotfound', this.onSegmentNotFound);\n this._player.removeEventListener('volumechange', this.onVolumeChangeEvent);\n this._player.presentation.removeEventListener('presentationmodechange', this.onPresentationModeChange);\n\n this._player.textTracks.removeEventListener('addtrack', this.onAddTextTrack);\n this._player.textTracks.removeEventListener('removetrack', this.onRemoveTextTrack);\n this._player.textTracks.removeEventListener('change', this.onChangeTextTrack);\n\n this._player.audioTracks.removeEventListener('addtrack', this.onAddAudioTrack);\n this._player.audioTracks.removeEventListener('removetrack', this.onRemoveAudioTrack);\n this._player.audioTracks.removeEventListener('change', this.onChangeAudioTrack);\n\n this._player.videoTracks.removeEventListener('addtrack', this.onAddVideoTrack);\n this._player.videoTracks.removeEventListener('removetrack', this.onRemoveVideoTrack);\n this._player.videoTracks.removeEventListener('change', this.onChangeVideoTrack);\n\n this._player.cast?.chromecast?.removeEventListener('statechange', this.onChromecastStateChange);\n this._player.cast?.chromecast?.removeEventListener('error', this.onChromecastError);\n this._player.cast?.airplay?.removeEventListener('statechange', this.onAirplayStateChange);\n\n this._player.ads?.removeEventListener(FORWARDED_AD_EVENTS, this.onAdEvent);\n }\n\n private readonly onSourceChange = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SOURCE_CHANGE));\n };\n\n private readonly onLoadStart = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOAD_START));\n };\n\n private readonly onLoadedData = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOADED_DATA));\n };\n\n private readonly onLoadedMetadata = () => {\n this._facade.dispatchEvent(\n new DefaultLoadedMetadataEvent(\n this._player.textTracks.map((textTrack: NativeTextTrack) => fromNativeTextTrack(textTrack)),\n this._player.audioTracks.map((audioTrack: NativeMediaTrack) => fromNativeMediaTrack(audioTrack)),\n this._player.videoTracks.map((videoTrack: NativeMediaTrack) => fromNativeMediaTrack(videoTrack)),\n 1e3 * this._player.duration,\n this._player.textTracks.find((track: NativeTextTrack) => track.mode === 'showing')?.uid,\n this._player.videoTracks.find((track: NativeMediaTrack) => track.enabled)?.uid,\n this._player.audioTracks.find((track: NativeMediaTrack) => track.enabled)?.uid,\n ),\n );\n };\n\n private readonly onError = (event: NativeErrorEvent) => {\n this._facade.dispatchEvent(\n new DefaultErrorEvent({\n errorCode: event.errorObject.code.toString(),\n errorMessage: event.errorObject.message,\n }),\n );\n };\n\n private readonly onProgress = () => {\n this._facade.dispatchEvent(new DefaultProgressEvent(fromTimeRanges(this._player.seekable), fromTimeRanges(this._player.buffered)));\n };\n\n private readonly onCanPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.CANPLAY));\n };\n\n private readonly onPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAY));\n };\n\n private readonly onPlaying = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAYING));\n };\n\n private readonly onPause = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PAUSE));\n };\n\n private readonly onSeeking = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKING));\n };\n\n private readonly onSeeked = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKED));\n };\n\n private readonly onEnded = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.ENDED));\n };\n\n private readonly onWaiting = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.WAITING));\n };\n\n private readonly onReadyStateChanged = (event: NativeReadyStateChangeEvent) => {\n this._facade.dispatchEvent(new DefaultReadyStateChangeEvent(event.readyState));\n };\n\n private readonly onTimeUpdate = (event: NativeTimeUpdateEvent) => {\n this._facade.dispatchEvent(new DefaultTimeupdateEvent(event.currentTime * 1e3, event.currentProgramDateTime?.getTime()));\n };\n\n private readonly onDurationChange = (event: NativeDurationChangeEvent) => {\n this._facade.dispatchEvent(new DefaultDurationChangeEvent(event.duration * 1e3));\n };\n\n private readonly onPlaybackRateChange = (event: NativeRateChangeEvent) => {\n this._facade.dispatchEvent(new DefaultRateChangeEvent(event.playbackRate));\n };\n\n private readonly onSegmentNotFound = () => {\n this._facade.dispatchEvent(new DefaultSegmentNotFoundEvent(0, 'Segment not found', -1));\n };\n\n private readonly onVolumeChangeEvent = (event: NativeVolumeChangeEvent) => {\n this._facade.dispatchEvent(new DefaultVolumeChangeEvent(event.volume, this._player.muted));\n };\n\n private readonly onPresentationModeChange = (event: PresentationModeChangeEvent) => {\n this._facade.dispatchEvent(new DefaultPresentationModeChangeEvent(event.presentationMode as PresentationMode, PresentationMode.inline)); // TODO: move to extended event\n };\n\n private readonly onAddTextTrack = (event: AddTrackEvent) => {\n const track = event.track as NativeTextTrack;\n track.addEventListener('addcue', this.onAddTextTrackCue(track));\n track.addEventListener('removecue', this.onRemoveTextTrackCue(track));\n track.addEventListener('entercue', this.onEnterTextTrackCue(track));\n track.addEventListener('exitcue', this.onExitTextTrackCue(track));\n this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.ADD_TRACK, track as TextTrack));\n };\n\n private readonly onRemoveTextTrack = (event: RemoveTrackEvent) => {\n const track = event.track as NativeTextTrack;\n track.removeEventListener('addcue', this.onAddTextTrackCue(track));\n track.removeEventListener('removecue', this.onRemoveTextTrackCue(track));\n track.removeEventListener('entercue', this.onEnterTextTrackCue(track));\n track.removeEventListener('exitcue', this.onExitTextTrackCue(track));\n this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.REMOVE_TRACK, track as NativeTextTrack as TextTrack));\n };\n\n private readonly onChangeTextTrack = (event: TrackChangeEvent) => {\n this._facade.dispatchEvent(new DefaultTextTrackListEvent(TrackListEventType.CHANGE_TRACK, event.track as NativeTextTrack as TextTrack));\n };\n\n private readonly onAddAudioTrack = (event: AddTrackEvent) => {\n this.onAddMediaTrack(event, MediaTrackType.AUDIO);\n };\n\n private readonly onAddVideoTrack = (event: AddTrackEvent) => {\n this.onAddMediaTrack(event, MediaTrackType.VIDEO);\n };\n\n private readonly onAddMediaTrack = (event: AddTrackEvent, trackType: MediaTrackType) => {\n const track = event.track as NativeMediaTrack;\n track.addEventListener('activequalitychanged', this.onActiveQualityChanged(trackType, track));\n this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.ADD_TRACK, trackType, track as MediaTrack));\n };\n\n private readonly onRemoveAudioTrack = (event: RemoveTrackEvent) => {\n this.onRemoveMediaTrack(event, MediaTrackType.AUDIO);\n };\n\n private readonly onRemoveVideoTrack = (event: RemoveTrackEvent) => {\n this.onRemoveMediaTrack(event, MediaTrackType.VIDEO);\n };\n\n private readonly onRemoveMediaTrack = (event: RemoveTrackEvent, trackType: MediaTrackType) => {\n const track = event.track as NativeMediaTrack;\n track.removeEventListener('activequalitychanged', this.onActiveQualityChanged(trackType, track));\n this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.REMOVE_TRACK, trackType, track as MediaTrack));\n };\n\n private readonly onChangeAudioTrack = (event: TrackChangeEvent) => {\n this.onChangeMediaTrack(event, MediaTrackType.AUDIO);\n };\n\n private readonly onChangeVideoTrack = (event: TrackChangeEvent) => {\n this.onChangeMediaTrack(event, MediaTrackType.VIDEO);\n };\n\n private onChangeMediaTrack = (event: TrackChangeEvent, trackType: MediaTrackType) => {\n const track = event.track as NativeMediaTrack;\n this._facade.dispatchEvent(new DefaultMediaTrackListEvent(TrackListEventType.CHANGE_TRACK, trackType, track as MediaTrack));\n };\n\n private readonly onChromecastStateChange = (event: CastStateChangeEvent) => {\n this._facade.dispatchEvent(new DefaultChromecastChangeEvent(event.state as CastState));\n };\n\n private readonly onChromecastError = (event: ChromecastErrorEvent) => {\n this._facade.dispatchEvent(new DefaultChromecastErrorEvent(event.error));\n };\n\n private readonly onAirplayStateChange = (event: CastStateChangeEvent) => {\n this._facade.dispatchEvent(new DefaultAirplayStateChangeEvent(event.state as CastState));\n };\n\n private readonly onAdEvent = (event: NativeEvent) => {\n const castedEvent = event as AdEvent;\n this._facade.dispatchEvent(new DefaultAdEvent(event.type as AdEventType, castedEvent.ad));\n };\n\n private readonly onAddTextTrackCue = (track: NativeTextTrack) => (event: NativeEvent<'addcue'>) => {\n const { cue } = event as unknown as { cue: NativeTextTrackCue };\n if (cue) {\n this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.ADD_CUE, track.uid, fromNativeCue(cue)));\n }\n };\n\n private readonly onRemoveTextTrackCue = (track: NativeTextTrack) => (event: NativeEvent<'removecue'>) => {\n const { cue } = event as unknown as { cue: NativeTextTrackCue };\n if (cue) {\n this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.REMOVE_CUE, track.uid, fromNativeCue(cue)));\n }\n };\n\n private readonly onEnterTextTrackCue = (track: NativeTextTrack) => (event: NativeEvent<'entercue'>) => {\n const { cue } = event as unknown as { cue: NativeTextTrackCue };\n if (cue) {\n this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.ENTER_CUE, track.uid, fromNativeCue(cue)));\n }\n };\n\n private readonly onExitTextTrackCue = (track: NativeTextTrack) => (event: NativeEvent<'exitcue'>) => {\n const { cue } = event as unknown as { cue: NativeTextTrackCue };\n if (cue) {\n this._facade.dispatchEvent(new DefaultTextTrackEvent(TextTrackEventType.EXIT_CUE, track.uid, fromNativeCue(cue)));\n }\n };\n\n private readonly onActiveQualityChanged = (trackType: MediaTrackType, track: NativeMediaTrack) => () => {\n const quality = track.activeQuality;\n this._facade.dispatchEvent(\n new DefaultMediaTrackEvent(MediaTrackEventType.ACTIVE_QUALITY_CHANGED, trackType, track.uid, quality ? [quality] : undefined),\n );\n };\n}\n\nconst FORWARDED_AD_EVENTS: Array<AdEventType> = [\n AdEventType.ADD_AD_BREAK,\n AdEventType.REMOVE_AD_BREAK,\n AdEventType.AD_LOADED,\n AdEventType.AD_BREAK_BEGIN,\n AdEventType.AD_BREAK_END,\n AdEventType.AD_BREAK_CHANGE,\n AdEventType.UPDATE_AD_BREAK,\n AdEventType.ADD_AD,\n AdEventType.AD_BEGIN,\n AdEventType.AD_END,\n AdEventType.UPDATE_AD,\n AdEventType.AD_FIRST_QUARTILE,\n AdEventType.AD_MIDPOINT,\n AdEventType.AD_THIRD_QUARTILE,\n AdEventType.AD_SKIP,\n AdEventType.AD_IMPRESSION,\n AdEventType.AD_ERROR,\n AdEventType.AD_METADATA,\n AdEventType.AD_BUFFERING,\n];\n\nfunction fromTimeRanges(timeRanges: TimeRanges): TimeRange[] {\n const result: TimeRange[] = [];\n for (let i = 0; i < timeRanges.length; i++) {\n result.push({\n start: timeRanges.start(i) * 1e3,\n end: timeRanges.end(i) * 1e3,\n });\n }\n return result;\n}\n"],"mappings":"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"}
|