react-native-theoplayer 2.9.0 → 2.11.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.
Files changed (77) hide show
  1. package/CHANGELOG.md +34 -1
  2. package/README.md +11 -9
  3. package/android/src/main/AndroidManifest.xml +1 -1
  4. package/android/src/main/java/com/theoplayer/PlayerEventEmitter.kt +9 -4
  5. package/android/src/main/java/com/theoplayer/ReactTHEOplayerContext.kt +15 -7
  6. package/android/src/main/java/com/theoplayer/player/PlayerModule.kt +11 -0
  7. package/android/src/main/java/com/theoplayer/presentation/PipUtils.kt +18 -11
  8. package/android/src/main/java/com/theoplayer/track/TextTrackStyleAdapter.kt +79 -0
  9. package/android/src/main/java/com/theoplayer/util/ViewResolver.kt +6 -0
  10. package/ios/THEOplayerRCTBridge.m +3 -0
  11. package/ios/THEOplayerRCTPlayerAPI.swift +52 -0
  12. package/ios/THEOplayerRCTTypeUtils.swift +15 -0
  13. package/ios/THEOplayerRCTView.swift +8 -1
  14. package/ios/ads/THEOplayerRCTAdsAPI+DAI.swift +1 -1
  15. package/ios/ads/THEOplayerRCTSourceDescriptionBuilder+Ads.swift +1 -1
  16. package/ios/ads/THEOplayerRCTView+AdsConfig.swift +1 -1
  17. package/ios/backgroundAudio/THEOplayerRCTNowPlayingManager.swift +3 -3
  18. package/lib/commonjs/api/player/PlayerVersion.js +2 -0
  19. package/lib/commonjs/api/player/PlayerVersion.js.map +1 -0
  20. package/lib/commonjs/api/player/THEOplayer.js.map +1 -1
  21. package/lib/commonjs/api/player/barrel.js +11 -0
  22. package/lib/commonjs/api/player/barrel.js.map +1 -1
  23. package/lib/commonjs/api/track/TextTrackStyle.js +29 -0
  24. package/lib/commonjs/api/track/TextTrackStyle.js.map +1 -1
  25. package/lib/commonjs/internal/THEOplayerView.js +2 -3
  26. package/lib/commonjs/internal/THEOplayerView.js.map +1 -1
  27. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js +10 -3
  28. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js.map +1 -1
  29. package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js +9 -0
  30. package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js.map +1 -1
  31. package/lib/commonjs/internal/adapter/event/native/NativePlayerEvent.js.map +1 -1
  32. package/lib/commonjs/internal/adapter/track/NamedColors.json +143 -0
  33. package/lib/commonjs/internal/adapter/track/TextTrackStyleAdapter.js +118 -22
  34. package/lib/commonjs/internal/adapter/track/TextTrackStyleAdapter.js.map +1 -1
  35. package/lib/commonjs/internal/adapter/web/WebMediaSession.js +1 -1
  36. package/lib/commonjs/internal/adapter/web/WebMediaSession.js.map +1 -1
  37. package/lib/module/api/player/PlayerVersion.js +2 -0
  38. package/lib/module/api/player/PlayerVersion.js.map +1 -0
  39. package/lib/module/api/player/THEOplayer.js.map +1 -1
  40. package/lib/module/api/player/barrel.js +1 -0
  41. package/lib/module/api/player/barrel.js.map +1 -1
  42. package/lib/module/api/track/TextTrackStyle.js +23 -0
  43. package/lib/module/api/track/TextTrackStyle.js.map +1 -1
  44. package/lib/module/internal/THEOplayerView.js +2 -3
  45. package/lib/module/internal/THEOplayerView.js.map +1 -1
  46. package/lib/module/internal/adapter/THEOplayerAdapter.js +10 -3
  47. package/lib/module/internal/adapter/THEOplayerAdapter.js.map +1 -1
  48. package/lib/module/internal/adapter/THEOplayerWebAdapter.js +7 -0
  49. package/lib/module/internal/adapter/THEOplayerWebAdapter.js.map +1 -1
  50. package/lib/module/internal/adapter/event/native/NativePlayerEvent.js.map +1 -1
  51. package/lib/module/internal/adapter/track/NamedColors.json +143 -0
  52. package/lib/module/internal/adapter/track/TextTrackStyleAdapter.js +117 -22
  53. package/lib/module/internal/adapter/track/TextTrackStyleAdapter.js.map +1 -1
  54. package/lib/module/internal/adapter/web/WebMediaSession.js +1 -1
  55. package/lib/module/internal/adapter/web/WebMediaSession.js.map +1 -1
  56. package/lib/typescript/api/player/PlayerVersion.d.ts +14 -0
  57. package/lib/typescript/api/player/THEOplayer.d.ts +5 -0
  58. package/lib/typescript/api/player/barrel.d.ts +1 -0
  59. package/lib/typescript/api/track/TextTrackStyle.d.ts +43 -5
  60. package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts +4 -2
  61. package/lib/typescript/internal/adapter/THEOplayerWebAdapter.d.ts +3 -2
  62. package/lib/typescript/internal/adapter/event/native/NativePlayerEvent.d.ts +2 -1
  63. package/lib/typescript/internal/adapter/track/TextTrackStyleAdapter.d.ts +26 -8
  64. package/package.json +1 -1
  65. package/react-native-theoplayer.podspec +1 -1
  66. package/src/api/player/PlayerVersion.ts +15 -0
  67. package/src/api/player/THEOplayer.ts +6 -0
  68. package/src/api/player/barrel.ts +1 -0
  69. package/src/api/track/TextTrackStyle.ts +45 -5
  70. package/src/internal/THEOplayerView.tsx +2 -4
  71. package/src/internal/adapter/THEOplayerAdapter.ts +12 -3
  72. package/src/internal/adapter/THEOplayerWebAdapter.ts +9 -1
  73. package/src/internal/adapter/event/native/NativePlayerEvent.ts +11 -1
  74. package/src/internal/adapter/track/NamedColors.json +143 -0
  75. package/src/internal/adapter/track/TextTrackStyleAdapter.ts +132 -21
  76. package/src/internal/adapter/web/WebMediaSession.ts +1 -1
  77. package/android/src/main/java/com/theoplayer/media/CustomMediaButtonReceiver.kt +0 -25
@@ -1 +1 @@
1
- {"version":3,"names":["React","PureComponent","findNodeHandle","Platform","requireNativeComponent","StyleSheet","UIManager","View","CastEventType","PlayerEventType","styles","decodeNanInf","BaseEvent","DefaultAdEvent","DefaultAirplayStateChangeEvent","DefaultChromecastChangeEvent","DefaultChromecastErrorEvent","DefaultDurationChangeEvent","DefaultErrorEvent","DefaultLoadedMetadataEvent","DefaultMediaTrackEvent","DefaultMediaTrackListEvent","DefaultPresentationModeChangeEvent","DefaultProgressEvent","DefaultRateChangeEvent","DefaultReadyStateChangeEvent","DefaultSegmentNotFoundEvent","DefaultTextTrackEvent","DefaultTextTrackListEvent","DefaultVolumeChangeEvent","DefaultTimeupdateEvent","toMediaTrackType","toMediaTrackTypeEventType","toTextTrackEventType","toTrackListEventType","THEOplayerAdapter","INVALID_HANDLE","THEOplayerView","constructor","props","_defineProperty","event","_this$props$onPlayerR","_this$props","state","nativeEvent","_facade","initializeWithNativePlayerState_","onPlayerReady","call","reset","dispatchEvent","SOURCE_CHANGE","LOAD_START","LOADED_DATA","textTracks","audioTracks","videoTracks","duration","selectedTextTrack","selectedVideoTrack","selectedAudioTrack","volume","muted","error","setState","seekable","buffered","CANPLAY","PLAY","PLAYING","PAUSE","SEEKING","SEEKED","WAITING","ENDED","readyState","currentTime","currentProgramDateTime","playbackRate","segmentStartTime","retryCount","type","track","cue","startTime","endTime","trackUid","trackType","qualities","ad","CHROMECAST_STATE_CHANGE","AIRPLAY_STATE_CHANGE","CHROMECAST_ERROR","presentationMode","previousPresentationMode","context","_root","createRef","initialState","componentWillUnmount","onPlayerDestroy","DESTROY","OS","command","Commands","destroy","dispatchViewManagerCommand","current","clearEventListeners","nativeHandle","render","config","style","children","createElement","base","THEOplayerRCTView","ref","absoluteFill","onNativePlayerReady","_onNativePlayerReady","onNativeSourceChange","_onSourceChange","onNativeLoadStart","_onLoadStart","onNativeLoadedData","_onLoadedData","onNativeLoadedMetadata","_onLoadedMetadata","onNativeVolumeChange","_onVolumeChange","onNativeError","_onError","onNativeProgress","_onProgress","onNativeCanPlay","_onCanPlay","onNativePlay","_onPlay","onNativePlaying","_onPlaying","onNativePause","_onPause","onNativeSeeking","_onSeeking","onNativeSeeked","_onSeeked","onNativeWaiting","_onWaiting","onNativeEnded","_onEnded","onNativeReadyStateChange","_onReadStateChange","onNativeTimeUpdate","_onTimeUpdate","onNativeDurationChange","_onDurationChange","onNativeRateChange","_onRateChange","onNativeSegmentNotFound","_onSegmentNotFound","onNativeTextTrackListEvent","_onTextTrackListEvent","onNativeTextTrackEvent","_onTextTrackEvent","onNativeMediaTrackListEvent","_onMediaTrackListEvent","onNativeMediaTrackEvent","_onMediaTrackEvent","onNativeAdEvent","_onAdEvent","onNativeCastEvent","_onCastEvent","onNativePresentationModeChange","_onPresentationModeChange","undefined","LINKING_ERROR","select","ios","default","ComponentName","getViewManagerConfig","Error"],"sources":["THEOplayerView.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport {\n findNodeHandle,\n HostComponent,\n NativeSyntheticEvent,\n Platform,\n requireNativeComponent,\n StyleProp,\n StyleSheet,\n UIManager,\n View,\n ViewStyle,\n} from 'react-native';\nimport type { PlayerConfiguration, PlayerError, THEOplayerViewProps } from 'react-native-theoplayer';\nimport { CastEventType, PlayerEventType } from 'react-native-theoplayer';\n\nimport styles from './THEOplayerView.style';\nimport { decodeNanInf } from './utils/TypeUtils';\nimport { BaseEvent } from './adapter/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 DefaultVolumeChangeEvent,\n DefaultTimeupdateEvent,\n} from './adapter/event/PlayerEvents';\nimport type { NativeCastEvent } from './adapter/event/native/NativeCastEvent';\nimport type {\n NativeMediaTrackEvent,\n NativeMediaTrackListEvent,\n NativeTextTrackEvent,\n NativeTextTrackListEvent,\n} from './adapter/event/native/NativeTrackEvent';\nimport { toMediaTrackType, toMediaTrackTypeEventType, toTextTrackEventType, toTrackListEventType } from './adapter/event/native/NativeTrackEvent';\nimport type {\n NativeDurationChangeEvent,\n NativeErrorEvent,\n NativeLoadedMetadataEvent,\n NativePlayerStateEvent,\n NativePresentationModeChangeEvent,\n NativeProgressEvent,\n NativeRateChangeEvent,\n NativeReadyStateChangeEvent,\n NativeSegmentNotFoundEvent,\n NativeTimeUpdateEvent,\n NativeVolumeChangeEvent,\n} from './adapter/event/native/NativePlayerEvent';\nimport type { NativeAdEvent } from './adapter/event/native/NativeAdEvent';\nimport { THEOplayerAdapter } from './adapter/THEOplayerAdapter';\n\nconst INVALID_HANDLE = -1;\n\ninterface THEOplayerRCTViewProps {\n ref: React.RefObject<THEOplayerViewNativeComponent>;\n style?: StyleProp<ViewStyle>;\n config?: PlayerConfiguration;\n onNativePlayerReady: (event: NativeSyntheticEvent<NativePlayerStateEvent>) => void;\n onNativeSourceChange: () => void;\n onNativeLoadStart: () => void;\n onNativeLoadedData: () => void;\n onNativeLoadedMetadata: (event: NativeSyntheticEvent<NativeLoadedMetadataEvent>) => void;\n onNativeReadyStateChange?: (event: NativeSyntheticEvent<NativeReadyStateChangeEvent>) => void;\n onNativeError: (event: NativeSyntheticEvent<NativeErrorEvent>) => void;\n onNativeProgress: (event: NativeSyntheticEvent<NativeProgressEvent>) => void;\n onNativeVolumeChange: (event: NativeSyntheticEvent<NativeVolumeChangeEvent>) => void;\n onNativeCanPlay: () => void;\n onNativePlay: () => void;\n onNativePlaying: () => void;\n onNativePause: () => void;\n onNativeSeeking: () => void;\n onNativeSeeked: () => void;\n onNativeEnded: () => void;\n onNativeWaiting: () => void;\n onNativeTimeUpdate: (event: NativeSyntheticEvent<NativeTimeUpdateEvent>) => void;\n onNativeDurationChange: (event: NativeSyntheticEvent<NativeDurationChangeEvent>) => void;\n onNativeRateChange: (event: NativeSyntheticEvent<NativeRateChangeEvent>) => void;\n onNativeSegmentNotFound: (event: NativeSyntheticEvent<NativeSegmentNotFoundEvent>) => void;\n onNativeTextTrackListEvent: (event: NativeSyntheticEvent<NativeTextTrackListEvent>) => void;\n onNativeTextTrackEvent: (event: NativeSyntheticEvent<NativeTextTrackEvent>) => void;\n onNativeMediaTrackListEvent: (event: NativeSyntheticEvent<NativeMediaTrackListEvent>) => void;\n onNativeMediaTrackEvent: (event: NativeSyntheticEvent<NativeMediaTrackEvent>) => void;\n onNativeAdEvent: (event: NativeSyntheticEvent<NativeAdEvent>) => void;\n onNativeCastEvent: (event: NativeSyntheticEvent<NativeCastEvent>) => void;\n onNativePresentationModeChange: (event: NativeSyntheticEvent<NativePresentationModeChangeEvent>) => void;\n}\n\ninterface THEOplayerRCTViewState {\n error?: PlayerError;\n}\n\ntype THEOplayerViewNativeComponent = HostComponent<THEOplayerRCTViewProps>;\n\nexport class THEOplayerView extends PureComponent<React.PropsWithChildren<THEOplayerViewProps>, THEOplayerRCTViewState> {\n private readonly _root: React.RefObject<THEOplayerViewNativeComponent>;\n private readonly _facade: THEOplayerAdapter;\n\n private static initialState: THEOplayerRCTViewState = {\n error: undefined,\n };\n\n constructor(props: THEOplayerViewProps) {\n super(props);\n this._root = React.createRef();\n this.state = THEOplayerView.initialState;\n this._facade = new THEOplayerAdapter(this);\n }\n\n componentWillUnmount() {\n // Notify the player will be destroyed.\n const { onPlayerDestroy } = this.props;\n if (onPlayerDestroy) {\n onPlayerDestroy(this._facade);\n }\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.DESTROY));\n\n if (Platform.OS === 'ios') {\n // TODO: move to native module\n // on iOS, we trigger an explicit 'destroy' to clean up the underlying THEOplayer\n const command = (UIManager as { [index: string]: any })['THEOplayerRCTView'].Commands.destroy;\n UIManager.dispatchViewManagerCommand(findNodeHandle(this._root.current), command, []);\n }\n this._facade.clearEventListeners();\n }\n\n public get nativeHandle(): number {\n return findNodeHandle(this._root.current) || INVALID_HANDLE;\n }\n\n private reset() {\n this.setState(THEOplayerView.initialState);\n }\n\n private _onNativePlayerReady = (event: NativeSyntheticEvent<NativePlayerStateEvent>) => {\n // Optionally apply an initial player state\n const { state } = event?.nativeEvent;\n if (state) {\n this._facade.initializeWithNativePlayerState_(state);\n }\n this.props.onPlayerReady?.(this._facade);\n };\n\n private _onSourceChange = () => {\n this.reset();\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SOURCE_CHANGE));\n };\n\n private _onLoadStart = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOAD_START));\n };\n\n private _onLoadedData = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOADED_DATA));\n };\n\n private _onLoadedMetadata = (event: NativeSyntheticEvent<NativeLoadedMetadataEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultLoadedMetadataEvent(\n nativeEvent.textTracks,\n nativeEvent.audioTracks,\n nativeEvent.videoTracks,\n decodeNanInf(nativeEvent.duration),\n nativeEvent.selectedTextTrack,\n nativeEvent.selectedVideoTrack,\n nativeEvent.selectedAudioTrack,\n ),\n );\n };\n\n private _onVolumeChange = (event: NativeSyntheticEvent<NativeVolumeChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultVolumeChangeEvent(event.nativeEvent.volume, event.nativeEvent.muted));\n };\n\n private _onError = (event: NativeSyntheticEvent<NativeErrorEvent>) => {\n const { error } = event.nativeEvent;\n this.setState({ error });\n this._facade.dispatchEvent(new DefaultErrorEvent(event.nativeEvent.error));\n };\n\n private _onProgress = (event: NativeSyntheticEvent<NativeProgressEvent>) => {\n this._facade.dispatchEvent(new DefaultProgressEvent(event.nativeEvent.seekable, event.nativeEvent.buffered));\n };\n\n private _onCanPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.CANPLAY));\n };\n\n private _onPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAY));\n };\n\n private _onPlaying = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAYING));\n };\n\n private _onPause = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PAUSE));\n };\n\n private _onSeeking = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKING));\n };\n\n private _onSeeked = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKED));\n };\n\n private _onWaiting = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.WAITING));\n };\n\n private _onEnded = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.ENDED));\n };\n\n private _onReadStateChange = (event: NativeSyntheticEvent<NativeReadyStateChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultReadyStateChangeEvent(event.nativeEvent.readyState));\n };\n\n private _onTimeUpdate = (event: NativeSyntheticEvent<NativeTimeUpdateEvent>) => {\n this._facade.dispatchEvent(new DefaultTimeupdateEvent(event.nativeEvent.currentTime, event.nativeEvent.currentProgramDateTime));\n };\n\n private _onDurationChange = (event: NativeSyntheticEvent<NativeDurationChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultDurationChangeEvent(decodeNanInf(event.nativeEvent.duration)));\n };\n\n private _onRateChange = (event: NativeSyntheticEvent<NativeRateChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultRateChangeEvent(event.nativeEvent.playbackRate));\n };\n\n private _onSegmentNotFound = (event: NativeSyntheticEvent<NativeSegmentNotFoundEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultSegmentNotFoundEvent(nativeEvent.segmentStartTime, nativeEvent.error, nativeEvent.retryCount));\n };\n\n private _onTextTrackListEvent = (event: NativeSyntheticEvent<NativeTextTrackListEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultTextTrackListEvent(toTrackListEventType(nativeEvent.type), nativeEvent.track));\n };\n\n private _onTextTrackEvent = (event: NativeSyntheticEvent<NativeTextTrackEvent>) => {\n const nativeEvent = event.nativeEvent;\n const cue = nativeEvent.cue;\n if (cue) {\n cue.startTime = decodeNanInf(cue.startTime);\n cue.endTime = decodeNanInf(cue.endTime);\n }\n this._facade.dispatchEvent(new DefaultTextTrackEvent(toTextTrackEventType(nativeEvent.type), nativeEvent.trackUid, cue));\n };\n\n private _onMediaTrackListEvent = (event: NativeSyntheticEvent<NativeMediaTrackListEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultMediaTrackListEvent(toTrackListEventType(nativeEvent.type), toMediaTrackType(nativeEvent.trackType), nativeEvent.track),\n );\n };\n\n private _onMediaTrackEvent = (event: NativeSyntheticEvent<NativeMediaTrackEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultMediaTrackEvent(\n toMediaTrackTypeEventType(nativeEvent.type),\n toMediaTrackType(nativeEvent.trackType),\n nativeEvent.trackUid,\n nativeEvent.qualities,\n ),\n );\n };\n\n private _onAdEvent = (event: NativeSyntheticEvent<NativeAdEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultAdEvent(nativeEvent.type, nativeEvent.ad));\n };\n\n private _onCastEvent = (event: NativeSyntheticEvent<NativeCastEvent>) => {\n switch (event.nativeEvent.type) {\n case CastEventType.CHROMECAST_STATE_CHANGE:\n this._facade.dispatchEvent(new DefaultChromecastChangeEvent(event.nativeEvent.state));\n break;\n case CastEventType.AIRPLAY_STATE_CHANGE:\n this._facade.dispatchEvent(new DefaultAirplayStateChangeEvent(event.nativeEvent.state));\n break;\n case CastEventType.CHROMECAST_ERROR:\n this._facade.dispatchEvent(new DefaultChromecastErrorEvent(event.nativeEvent.error));\n break;\n }\n };\n\n private _onPresentationModeChange = (event: NativeSyntheticEvent<NativePresentationModeChangeEvent>) => {\n this._facade.dispatchEvent(\n new DefaultPresentationModeChangeEvent(\n event.nativeEvent.presentationMode,\n event.nativeEvent.previousPresentationMode,\n event.nativeEvent.context,\n ),\n );\n };\n\n public render(): JSX.Element {\n const { config, style, children } = this.props;\n return (\n <View style={[styles.base, style]}>\n <THEOplayerRCTView\n ref={this._root}\n style={StyleSheet.absoluteFill}\n config={config || {}}\n onNativePlayerReady={this._onNativePlayerReady}\n onNativeSourceChange={this._onSourceChange}\n onNativeLoadStart={this._onLoadStart}\n onNativeLoadedData={this._onLoadedData}\n onNativeLoadedMetadata={this._onLoadedMetadata}\n onNativeVolumeChange={this._onVolumeChange}\n onNativeError={this._onError}\n onNativeProgress={this._onProgress}\n onNativeCanPlay={this._onCanPlay}\n onNativePlay={this._onPlay}\n onNativePlaying={this._onPlaying}\n onNativePause={this._onPause}\n onNativeSeeking={this._onSeeking}\n onNativeSeeked={this._onSeeked}\n onNativeWaiting={this._onWaiting}\n onNativeEnded={this._onEnded}\n onNativeReadyStateChange={this._onReadStateChange}\n onNativeTimeUpdate={this._onTimeUpdate}\n onNativeDurationChange={this._onDurationChange}\n onNativeRateChange={this._onRateChange}\n onNativeSegmentNotFound={this._onSegmentNotFound}\n onNativeTextTrackListEvent={this._onTextTrackListEvent}\n onNativeTextTrackEvent={this._onTextTrackEvent}\n onNativeMediaTrackListEvent={this._onMediaTrackListEvent}\n onNativeMediaTrackEvent={this._onMediaTrackEvent}\n onNativeAdEvent={this._onAdEvent}\n onNativeCastEvent={this._onCastEvent}\n onNativePresentationModeChange={this._onPresentationModeChange}\n />\n {children}\n </View>\n );\n }\n}\n\nconst LINKING_ERROR =\n `The package 'react-native-theoplayer' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nconst ComponentName = 'THEOplayerRCTView';\n\nconst THEOplayerRCTView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<THEOplayerRCTViewProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,aAAa,QAAQ,OAAO;AAC5C,SACEC,cAAc,EAGdC,QAAQ,EACRC,sBAAsB,EAEtBC,UAAU,EACVC,SAAS,EACTC,IAAI,QAEC,cAAc;AAErB,SAASC,aAAa,EAAEC,eAAe,QAAQ,yBAAyB;AAExE,OAAOC,MAAM,MAAM,wBAAwB;AAC3C,SAASC,YAAY,QAAQ,mBAAmB;AAChD,SAASC,SAAS,QAAQ,2BAA2B;AACrD,SACEC,cAAc,EACdC,8BAA8B,EAC9BC,4BAA4B,EAC5BC,2BAA2B,EAC3BC,0BAA0B,EAC1BC,iBAAiB,EACjBC,0BAA0B,EAC1BC,sBAAsB,EACtBC,0BAA0B,EAC1BC,kCAAkC,EAClCC,oBAAoB,EACpBC,sBAAsB,EACtBC,4BAA4B,EAC5BC,2BAA2B,EAC3BC,qBAAqB,EACrBC,yBAAyB,EACzBC,wBAAwB,EACxBC,sBAAsB,QACjB,8BAA8B;AAQrC,SAASC,gBAAgB,EAAEC,yBAAyB,EAAEC,oBAAoB,EAAEC,oBAAoB,QAAQ,yCAAyC;AAejJ,SAASC,iBAAiB,QAAQ,6BAA6B;AAE/D,MAAMC,cAAc,GAAG,CAAC,CAAC;AA0CzB,OAAO,MAAMC,cAAc,SAASpC,aAAa,CAAuE;EAQtHqC,WAAWA,CAACC,KAA0B,EAAE;IACtC,KAAK,CAACA,KAAK,CAAC;IAACC,eAAA;IAAAA,eAAA;IAAAA,eAAA,+BA+BiBC,KAAmD,IAAK;MAAA,IAAAC,qBAAA,EAAAC,WAAA;MACtF;MACA,MAAM;QAAEC;MAAM,CAAC,GAAGH,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,WAAW;MACpC,IAAID,KAAK,EAAE;QACT,IAAI,CAACE,OAAO,CAACC,gCAAgC,CAACH,KAAK,CAAC;MACtD;MACA,CAAAF,qBAAA,IAAAC,WAAA,OAAI,CAACJ,KAAK,EAACS,aAAa,cAAAN,qBAAA,uBAAxBA,qBAAA,CAAAO,IAAA,CAAAN,WAAA,EAA2B,IAAI,CAACG,OAAO,CAAC;IAC1C,CAAC;IAAAN,eAAA,0BAEyB,MAAM;MAC9B,IAAI,CAACU,KAAK,EAAE;MACZ,IAAI,CAACJ,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC2C,aAAa,CAAC,CAAC;IAC1E,CAAC;IAAAZ,eAAA,uBAEsB,MAAM;MAC3B,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC4C,UAAU,CAAC,CAAC;IACvE,CAAC;IAAAb,eAAA,wBAEuB,MAAM;MAC5B,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC6C,WAAW,CAAC,CAAC;IACxE,CAAC;IAAAd,eAAA,4BAE4BC,KAAsD,IAAK;MACtF,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CACxB,IAAIhC,0BAA0B,CAC5B0B,WAAW,CAACU,UAAU,EACtBV,WAAW,CAACW,WAAW,EACvBX,WAAW,CAACY,WAAW,EACvB9C,YAAY,CAACkC,WAAW,CAACa,QAAQ,CAAC,EAClCb,WAAW,CAACc,iBAAiB,EAC7Bd,WAAW,CAACe,kBAAkB,EAC9Bf,WAAW,CAACgB,kBAAkB,CAC/B,CACF;IACH,CAAC;IAAArB,eAAA,0BAE0BC,KAAoD,IAAK;MAClF,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAItB,wBAAwB,CAACY,KAAK,CAACI,WAAW,CAACiB,MAAM,EAAErB,KAAK,CAACI,WAAW,CAACkB,KAAK,CAAC,CAAC;IAC7G,CAAC;IAAAvB,eAAA,mBAEmBC,KAA6C,IAAK;MACpE,MAAM;QAAEuB;MAAM,CAAC,GAAGvB,KAAK,CAACI,WAAW;MACnC,IAAI,CAACoB,QAAQ,CAAC;QAAED;MAAM,CAAC,CAAC;MACxB,IAAI,CAAClB,OAAO,CAACK,aAAa,CAAC,IAAIjC,iBAAiB,CAACuB,KAAK,CAACI,WAAW,CAACmB,KAAK,CAAC,CAAC;IAC5E,CAAC;IAAAxB,eAAA,sBAEsBC,KAAgD,IAAK;MAC1E,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAI5B,oBAAoB,CAACkB,KAAK,CAACI,WAAW,CAACqB,QAAQ,EAAEzB,KAAK,CAACI,WAAW,CAACsB,QAAQ,CAAC,CAAC;IAC9G,CAAC;IAAA3B,eAAA,qBAEoB,MAAM;MACzB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC2D,OAAO,CAAC,CAAC;IACpE,CAAC;IAAA5B,eAAA,kBAEiB,MAAM;MACtB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC4D,IAAI,CAAC,CAAC;IACjE,CAAC;IAAA7B,eAAA,qBAEoB,MAAM;MACzB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC6D,OAAO,CAAC,CAAC;IACpE,CAAC;IAAA9B,eAAA,mBAEkB,MAAM;MACvB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC8D,KAAK,CAAC,CAAC;IAClE,CAAC;IAAA/B,eAAA,qBAEoB,MAAM;MACzB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC+D,OAAO,CAAC,CAAC;IACpE,CAAC;IAAAhC,eAAA,oBAEmB,MAAM;MACxB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAACgE,MAAM,CAAC,CAAC;IACnE,CAAC;IAAAjC,eAAA,qBAEoB,MAAM;MACzB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAACiE,OAAO,CAAC,CAAC;IACpE,CAAC;IAAAlC,eAAA,mBAEkB,MAAM;MACvB,IAAI,CAACM,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAACkE,KAAK,CAAC,CAAC;IAClE,CAAC;IAAAnC,eAAA,6BAE6BC,KAAwD,IAAK;MACzF,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAI1B,4BAA4B,CAACgB,KAAK,CAACI,WAAW,CAAC+B,UAAU,CAAC,CAAC;IAC5F,CAAC;IAAApC,eAAA,wBAEwBC,KAAkD,IAAK;MAC9E,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAIrB,sBAAsB,CAACW,KAAK,CAACI,WAAW,CAACgC,WAAW,EAAEpC,KAAK,CAACI,WAAW,CAACiC,sBAAsB,CAAC,CAAC;IACjI,CAAC;IAAAtC,eAAA,4BAE4BC,KAAsD,IAAK;MACtF,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAIlC,0BAA0B,CAACN,YAAY,CAAC8B,KAAK,CAACI,WAAW,CAACa,QAAQ,CAAC,CAAC,CAAC;IACtG,CAAC;IAAAlB,eAAA,wBAEwBC,KAAkD,IAAK;MAC9E,IAAI,CAACK,OAAO,CAACK,aAAa,CAAC,IAAI3B,sBAAsB,CAACiB,KAAK,CAACI,WAAW,CAACkC,YAAY,CAAC,CAAC;IACxF,CAAC;IAAAvC,eAAA,6BAE6BC,KAAuD,IAAK;MACxF,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CAAC,IAAIzB,2BAA2B,CAACmB,WAAW,CAACmC,gBAAgB,EAAEnC,WAAW,CAACmB,KAAK,EAAEnB,WAAW,CAACoC,UAAU,CAAC,CAAC;IACtI,CAAC;IAAAzC,eAAA,gCAEgCC,KAAqD,IAAK;MACzF,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CAAC,IAAIvB,yBAAyB,CAACM,oBAAoB,CAACW,WAAW,CAACqC,IAAI,CAAC,EAAErC,WAAW,CAACsC,KAAK,CAAC,CAAC;IACtH,CAAC;IAAA3C,eAAA,4BAE4BC,KAAiD,IAAK;MACjF,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,MAAMuC,GAAG,GAAGvC,WAAW,CAACuC,GAAG;MAC3B,IAAIA,GAAG,EAAE;QACPA,GAAG,CAACC,SAAS,GAAG1E,YAAY,CAACyE,GAAG,CAACC,SAAS,CAAC;QAC3CD,GAAG,CAACE,OAAO,GAAG3E,YAAY,CAACyE,GAAG,CAACE,OAAO,CAAC;MACzC;MACA,IAAI,CAACxC,OAAO,CAACK,aAAa,CAAC,IAAIxB,qBAAqB,CAACM,oBAAoB,CAACY,WAAW,CAACqC,IAAI,CAAC,EAAErC,WAAW,CAAC0C,QAAQ,EAAEH,GAAG,CAAC,CAAC;IAC1H,CAAC;IAAA5C,eAAA,iCAEiCC,KAAsD,IAAK;MAC3F,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CACxB,IAAI9B,0BAA0B,CAACa,oBAAoB,CAACW,WAAW,CAACqC,IAAI,CAAC,EAAEnD,gBAAgB,CAACc,WAAW,CAAC2C,SAAS,CAAC,EAAE3C,WAAW,CAACsC,KAAK,CAAC,CACnI;IACH,CAAC;IAAA3C,eAAA,6BAE6BC,KAAkD,IAAK;MACnF,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CACxB,IAAI/B,sBAAsB,CACxBY,yBAAyB,CAACa,WAAW,CAACqC,IAAI,CAAC,EAC3CnD,gBAAgB,CAACc,WAAW,CAAC2C,SAAS,CAAC,EACvC3C,WAAW,CAAC0C,QAAQ,EACpB1C,WAAW,CAAC4C,SAAS,CACtB,CACF;IACH,CAAC;IAAAjD,eAAA,qBAEqBC,KAA0C,IAAK;MACnE,MAAMI,WAAW,GAAGJ,KAAK,CAACI,WAAW;MACrC,IAAI,CAACC,OAAO,CAACK,aAAa,CAAC,IAAItC,cAAc,CAACgC,WAAW,CAACqC,IAAI,EAAErC,WAAW,CAAC6C,EAAE,CAAC,CAAC;IAClF,CAAC;IAAAlD,eAAA,uBAEuBC,KAA4C,IAAK;MACvE,QAAQA,KAAK,CAACI,WAAW,CAACqC,IAAI;QAC5B,KAAK1E,aAAa,CAACmF,uBAAuB;UACxC,IAAI,CAAC7C,OAAO,CAACK,aAAa,CAAC,IAAIpC,4BAA4B,CAAC0B,KAAK,CAACI,WAAW,CAACD,KAAK,CAAC,CAAC;UACrF;QACF,KAAKpC,aAAa,CAACoF,oBAAoB;UACrC,IAAI,CAAC9C,OAAO,CAACK,aAAa,CAAC,IAAIrC,8BAA8B,CAAC2B,KAAK,CAACI,WAAW,CAACD,KAAK,CAAC,CAAC;UACvF;QACF,KAAKpC,aAAa,CAACqF,gBAAgB;UACjC,IAAI,CAAC/C,OAAO,CAACK,aAAa,CAAC,IAAInC,2BAA2B,CAACyB,KAAK,CAACI,WAAW,CAACmB,KAAK,CAAC,CAAC;UACpF;MAAM;IAEZ,CAAC;IAAAxB,eAAA,oCAEoCC,KAA8D,IAAK;MACtG,IAAI,CAACK,OAAO,CAACK,aAAa,CACxB,IAAI7B,kCAAkC,CACpCmB,KAAK,CAACI,WAAW,CAACiD,gBAAgB,EAClCrD,KAAK,CAACI,WAAW,CAACkD,wBAAwB,EAC1CtD,KAAK,CAACI,WAAW,CAACmD,OAAO,CAC1B,CACF;IACH,CAAC;IAnMC,IAAI,CAACC,KAAK,gBAAGjG,KAAK,CAACkG,SAAS,EAAE;IAC9B,IAAI,CAACtD,KAAK,GAAGP,cAAc,CAAC8D,YAAY;IACxC,IAAI,CAACrD,OAAO,GAAG,IAAIX,iBAAiB,CAAC,IAAI,CAAC;EAC5C;EAEAiE,oBAAoBA,CAAA,EAAG;IACrB;IACA,MAAM;MAAEC;IAAgB,CAAC,GAAG,IAAI,CAAC9D,KAAK;IACtC,IAAI8D,eAAe,EAAE;MACnBA,eAAe,CAAC,IAAI,CAACvD,OAAO,CAAC;IAC/B;IACA,IAAI,CAACA,OAAO,CAACK,aAAa,CAAC,IAAIvC,SAAS,CAACH,eAAe,CAAC6F,OAAO,CAAC,CAAC;IAElE,IAAInG,QAAQ,CAACoG,EAAE,KAAK,KAAK,EAAE;MACzB;MACA;MACA,MAAMC,OAAO,GAAIlG,SAAS,CAA8B,mBAAmB,CAAC,CAACmG,QAAQ,CAACC,OAAO;MAC7FpG,SAAS,CAACqG,0BAA0B,CAACzG,cAAc,CAAC,IAAI,CAAC+F,KAAK,CAACW,OAAO,CAAC,EAAEJ,OAAO,EAAE,EAAE,CAAC;IACvF;IACA,IAAI,CAAC1D,OAAO,CAAC+D,mBAAmB,EAAE;EACpC;EAEA,IAAWC,YAAYA,CAAA,EAAW;IAChC,OAAO5G,cAAc,CAAC,IAAI,CAAC+F,KAAK,CAACW,OAAO,CAAC,IAAIxE,cAAc;EAC7D;EAEQc,KAAKA,CAAA,EAAG;IACd,IAAI,CAACe,QAAQ,CAAC5B,cAAc,CAAC8D,YAAY,CAAC;EAC5C;EAyKOY,MAAMA,CAAA,EAAgB;IAC3B,MAAM;MAAEC,MAAM;MAAEC,KAAK;MAAEC;IAAS,CAAC,GAAG,IAAI,CAAC3E,KAAK;IAC9C,oBACEvC,KAAA,CAAAmH,aAAA,CAAC5G,IAAI;MAAC0G,KAAK,EAAE,CAACvG,MAAM,CAAC0G,IAAI,EAAEH,KAAK;IAAE,gBAChCjH,KAAA,CAAAmH,aAAA,CAACE,iBAAiB;MAChBC,GAAG,EAAE,IAAI,CAACrB,KAAM;MAChBgB,KAAK,EAAE5G,UAAU,CAACkH,YAAa;MAC/BP,MAAM,EAAEA,MAAM,IAAI,CAAC,CAAE;MACrBQ,mBAAmB,EAAE,IAAI,CAACC,oBAAqB;MAC/CC,oBAAoB,EAAE,IAAI,CAACC,eAAgB;MAC3CC,iBAAiB,EAAE,IAAI,CAACC,YAAa;MACrCC,kBAAkB,EAAE,IAAI,CAACC,aAAc;MACvCC,sBAAsB,EAAE,IAAI,CAACC,iBAAkB;MAC/CC,oBAAoB,EAAE,IAAI,CAACC,eAAgB;MAC3CC,aAAa,EAAE,IAAI,CAACC,QAAS;MAC7BC,gBAAgB,EAAE,IAAI,CAACC,WAAY;MACnCC,eAAe,EAAE,IAAI,CAACC,UAAW;MACjCC,YAAY,EAAE,IAAI,CAACC,OAAQ;MAC3BC,eAAe,EAAE,IAAI,CAACC,UAAW;MACjCC,aAAa,EAAE,IAAI,CAACC,QAAS;MAC7BC,eAAe,EAAE,IAAI,CAACC,UAAW;MACjCC,cAAc,EAAE,IAAI,CAACC,SAAU;MAC/BC,eAAe,EAAE,IAAI,CAACC,UAAW;MACjCC,aAAa,EAAE,IAAI,CAACC,QAAS;MAC7BC,wBAAwB,EAAE,IAAI,CAACC,kBAAmB;MAClDC,kBAAkB,EAAE,IAAI,CAACC,aAAc;MACvCC,sBAAsB,EAAE,IAAI,CAACC,iBAAkB;MAC/CC,kBAAkB,EAAE,IAAI,CAACC,aAAc;MACvCC,uBAAuB,EAAE,IAAI,CAACC,kBAAmB;MACjDC,0BAA0B,EAAE,IAAI,CAACC,qBAAsB;MACvDC,sBAAsB,EAAE,IAAI,CAACC,iBAAkB;MAC/CC,2BAA2B,EAAE,IAAI,CAACC,sBAAuB;MACzDC,uBAAuB,EAAE,IAAI,CAACC,kBAAmB;MACjDC,eAAe,EAAE,IAAI,CAACC,UAAW;MACjCC,iBAAiB,EAAE,IAAI,CAACC,YAAa;MACrCC,8BAA8B,EAAE,IAAI,CAACC;IAA0B,EAC/D,EACD7D,QAAQ,CACJ;EAEX;AACF;AAAC1E,eAAA,CAxPYH,cAAc,kBAI6B;EACpD2B,KAAK,EAAEgH;AACT,CAAC;AAoPH,MAAMC,aAAa,GAChB,kFAAiF,GAClF9K,QAAQ,CAAC+K,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,6CAA6C;AAE/C,MAAMC,aAAa,GAAG,mBAAmB;AAEzC,MAAMhE,iBAAiB,GACrB/G,SAAS,CAACgL,oBAAoB,CAACD,aAAa,CAAC,IAAI,IAAI,GACjDjL,sBAAsB,CAAyBiL,aAAa,CAAC,GAC7D,MAAM;EACJ,MAAM,IAAIE,KAAK,CAACN,aAAa,CAAC;AAChC,CAAC"}
1
+ {"version":3,"names":["React","PureComponent","findNodeHandle","Platform","requireNativeComponent","StyleSheet","UIManager","View","CastEventType","PlayerEventType","styles","decodeNanInf","BaseEvent","DefaultAdEvent","DefaultAirplayStateChangeEvent","DefaultChromecastChangeEvent","DefaultChromecastErrorEvent","DefaultDurationChangeEvent","DefaultErrorEvent","DefaultLoadedMetadataEvent","DefaultMediaTrackEvent","DefaultMediaTrackListEvent","DefaultPresentationModeChangeEvent","DefaultProgressEvent","DefaultRateChangeEvent","DefaultReadyStateChangeEvent","DefaultSegmentNotFoundEvent","DefaultTextTrackEvent","DefaultTextTrackListEvent","DefaultVolumeChangeEvent","DefaultTimeupdateEvent","toMediaTrackType","toMediaTrackTypeEventType","toTextTrackEventType","toTrackListEventType","THEOplayerAdapter","INVALID_HANDLE","THEOplayerView","constructor","props","_defineProperty","event","_this$props$onPlayerR","_this$props","version","state","nativeEvent","_facade","initializeFromNativePlayer_","onPlayerReady","call","reset","dispatchEvent","SOURCE_CHANGE","LOAD_START","LOADED_DATA","textTracks","audioTracks","videoTracks","duration","selectedTextTrack","selectedVideoTrack","selectedAudioTrack","volume","muted","error","setState","seekable","buffered","CANPLAY","PLAY","PLAYING","PAUSE","SEEKING","SEEKED","WAITING","ENDED","readyState","currentTime","currentProgramDateTime","playbackRate","segmentStartTime","retryCount","type","track","cue","startTime","endTime","trackUid","trackType","qualities","ad","CHROMECAST_STATE_CHANGE","AIRPLAY_STATE_CHANGE","CHROMECAST_ERROR","presentationMode","previousPresentationMode","context","_root","createRef","initialState","componentWillUnmount","onPlayerDestroy","DESTROY","OS","command","Commands","destroy","dispatchViewManagerCommand","current","clearEventListeners","nativeHandle","render","config","style","children","createElement","base","THEOplayerRCTView","ref","absoluteFill","onNativePlayerReady","_onNativePlayerReady","onNativeSourceChange","_onSourceChange","onNativeLoadStart","_onLoadStart","onNativeLoadedData","_onLoadedData","onNativeLoadedMetadata","_onLoadedMetadata","onNativeVolumeChange","_onVolumeChange","onNativeError","_onError","onNativeProgress","_onProgress","onNativeCanPlay","_onCanPlay","onNativePlay","_onPlay","onNativePlaying","_onPlaying","onNativePause","_onPause","onNativeSeeking","_onSeeking","onNativeSeeked","_onSeeked","onNativeWaiting","_onWaiting","onNativeEnded","_onEnded","onNativeReadyStateChange","_onReadStateChange","onNativeTimeUpdate","_onTimeUpdate","onNativeDurationChange","_onDurationChange","onNativeRateChange","_onRateChange","onNativeSegmentNotFound","_onSegmentNotFound","onNativeTextTrackListEvent","_onTextTrackListEvent","onNativeTextTrackEvent","_onTextTrackEvent","onNativeMediaTrackListEvent","_onMediaTrackListEvent","onNativeMediaTrackEvent","_onMediaTrackEvent","onNativeAdEvent","_onAdEvent","onNativeCastEvent","_onCastEvent","onNativePresentationModeChange","_onPresentationModeChange","undefined","LINKING_ERROR","select","ios","default","ComponentName","getViewManagerConfig","Error"],"sources":["THEOplayerView.tsx"],"sourcesContent":["import React, { PureComponent } from 'react';\nimport {\n findNodeHandle,\n HostComponent,\n NativeSyntheticEvent,\n Platform,\n requireNativeComponent,\n StyleProp,\n StyleSheet,\n UIManager,\n View,\n ViewStyle,\n} from 'react-native';\nimport type { PlayerConfiguration, PlayerError, THEOplayerViewProps } from 'react-native-theoplayer';\nimport { CastEventType, PlayerEventType } from 'react-native-theoplayer';\n\nimport styles from './THEOplayerView.style';\nimport { decodeNanInf } from './utils/TypeUtils';\nimport { BaseEvent } from './adapter/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 DefaultVolumeChangeEvent,\n DefaultTimeupdateEvent,\n} from './adapter/event/PlayerEvents';\nimport type { NativeCastEvent } from './adapter/event/native/NativeCastEvent';\nimport type {\n NativeMediaTrackEvent,\n NativeMediaTrackListEvent,\n NativeTextTrackEvent,\n NativeTextTrackListEvent,\n} from './adapter/event/native/NativeTrackEvent';\nimport { toMediaTrackType, toMediaTrackTypeEventType, toTextTrackEventType, toTrackListEventType } from './adapter/event/native/NativeTrackEvent';\nimport type {\n NativeDurationChangeEvent,\n NativeErrorEvent,\n NativeLoadedMetadataEvent,\n NativePlayerStateEvent,\n NativePresentationModeChangeEvent,\n NativeProgressEvent,\n NativeRateChangeEvent,\n NativeReadyStateChangeEvent,\n NativeSegmentNotFoundEvent,\n NativeTimeUpdateEvent,\n NativeVolumeChangeEvent,\n} from './adapter/event/native/NativePlayerEvent';\nimport type { NativeAdEvent } from './adapter/event/native/NativeAdEvent';\nimport { THEOplayerAdapter } from './adapter/THEOplayerAdapter';\n\nconst INVALID_HANDLE = -1;\n\ninterface THEOplayerRCTViewProps {\n ref: React.RefObject<THEOplayerViewNativeComponent>;\n style?: StyleProp<ViewStyle>;\n config?: PlayerConfiguration;\n onNativePlayerReady: (event: NativeSyntheticEvent<NativePlayerStateEvent>) => void;\n onNativeSourceChange: () => void;\n onNativeLoadStart: () => void;\n onNativeLoadedData: () => void;\n onNativeLoadedMetadata: (event: NativeSyntheticEvent<NativeLoadedMetadataEvent>) => void;\n onNativeReadyStateChange?: (event: NativeSyntheticEvent<NativeReadyStateChangeEvent>) => void;\n onNativeError: (event: NativeSyntheticEvent<NativeErrorEvent>) => void;\n onNativeProgress: (event: NativeSyntheticEvent<NativeProgressEvent>) => void;\n onNativeVolumeChange: (event: NativeSyntheticEvent<NativeVolumeChangeEvent>) => void;\n onNativeCanPlay: () => void;\n onNativePlay: () => void;\n onNativePlaying: () => void;\n onNativePause: () => void;\n onNativeSeeking: () => void;\n onNativeSeeked: () => void;\n onNativeEnded: () => void;\n onNativeWaiting: () => void;\n onNativeTimeUpdate: (event: NativeSyntheticEvent<NativeTimeUpdateEvent>) => void;\n onNativeDurationChange: (event: NativeSyntheticEvent<NativeDurationChangeEvent>) => void;\n onNativeRateChange: (event: NativeSyntheticEvent<NativeRateChangeEvent>) => void;\n onNativeSegmentNotFound: (event: NativeSyntheticEvent<NativeSegmentNotFoundEvent>) => void;\n onNativeTextTrackListEvent: (event: NativeSyntheticEvent<NativeTextTrackListEvent>) => void;\n onNativeTextTrackEvent: (event: NativeSyntheticEvent<NativeTextTrackEvent>) => void;\n onNativeMediaTrackListEvent: (event: NativeSyntheticEvent<NativeMediaTrackListEvent>) => void;\n onNativeMediaTrackEvent: (event: NativeSyntheticEvent<NativeMediaTrackEvent>) => void;\n onNativeAdEvent: (event: NativeSyntheticEvent<NativeAdEvent>) => void;\n onNativeCastEvent: (event: NativeSyntheticEvent<NativeCastEvent>) => void;\n onNativePresentationModeChange: (event: NativeSyntheticEvent<NativePresentationModeChangeEvent>) => void;\n}\n\ninterface THEOplayerRCTViewState {\n error?: PlayerError;\n}\n\ntype THEOplayerViewNativeComponent = HostComponent<THEOplayerRCTViewProps>;\n\nexport class THEOplayerView extends PureComponent<React.PropsWithChildren<THEOplayerViewProps>, THEOplayerRCTViewState> {\n private readonly _root: React.RefObject<THEOplayerViewNativeComponent>;\n private readonly _facade: THEOplayerAdapter;\n\n private static initialState: THEOplayerRCTViewState = {\n error: undefined,\n };\n\n constructor(props: THEOplayerViewProps) {\n super(props);\n this._root = React.createRef();\n this.state = THEOplayerView.initialState;\n this._facade = new THEOplayerAdapter(this);\n }\n\n componentWillUnmount() {\n // Notify the player will be destroyed.\n const { onPlayerDestroy } = this.props;\n if (onPlayerDestroy) {\n onPlayerDestroy(this._facade);\n }\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.DESTROY));\n\n if (Platform.OS === 'ios') {\n // TODO: move to native module\n // on iOS, we trigger an explicit 'destroy' to clean up the underlying THEOplayer\n const command = (UIManager as { [index: string]: any })['THEOplayerRCTView'].Commands.destroy;\n UIManager.dispatchViewManagerCommand(findNodeHandle(this._root.current), command, []);\n }\n this._facade.clearEventListeners();\n }\n\n public get nativeHandle(): number {\n return findNodeHandle(this._root.current) || INVALID_HANDLE;\n }\n\n private reset() {\n this.setState(THEOplayerView.initialState);\n }\n\n private _onNativePlayerReady = (event: NativeSyntheticEvent<NativePlayerStateEvent>) => {\n // Optionally apply an initial player state\n const { version, state } = event?.nativeEvent;\n this._facade.initializeFromNativePlayer_(version, state);\n this.props.onPlayerReady?.(this._facade);\n };\n\n private _onSourceChange = () => {\n this.reset();\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SOURCE_CHANGE));\n };\n\n private _onLoadStart = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOAD_START));\n };\n\n private _onLoadedData = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.LOADED_DATA));\n };\n\n private _onLoadedMetadata = (event: NativeSyntheticEvent<NativeLoadedMetadataEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultLoadedMetadataEvent(\n nativeEvent.textTracks,\n nativeEvent.audioTracks,\n nativeEvent.videoTracks,\n decodeNanInf(nativeEvent.duration),\n nativeEvent.selectedTextTrack,\n nativeEvent.selectedVideoTrack,\n nativeEvent.selectedAudioTrack,\n ),\n );\n };\n\n private _onVolumeChange = (event: NativeSyntheticEvent<NativeVolumeChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultVolumeChangeEvent(event.nativeEvent.volume, event.nativeEvent.muted));\n };\n\n private _onError = (event: NativeSyntheticEvent<NativeErrorEvent>) => {\n const { error } = event.nativeEvent;\n this.setState({ error });\n this._facade.dispatchEvent(new DefaultErrorEvent(event.nativeEvent.error));\n };\n\n private _onProgress = (event: NativeSyntheticEvent<NativeProgressEvent>) => {\n this._facade.dispatchEvent(new DefaultProgressEvent(event.nativeEvent.seekable, event.nativeEvent.buffered));\n };\n\n private _onCanPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.CANPLAY));\n };\n\n private _onPlay = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAY));\n };\n\n private _onPlaying = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PLAYING));\n };\n\n private _onPause = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.PAUSE));\n };\n\n private _onSeeking = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKING));\n };\n\n private _onSeeked = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.SEEKED));\n };\n\n private _onWaiting = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.WAITING));\n };\n\n private _onEnded = () => {\n this._facade.dispatchEvent(new BaseEvent(PlayerEventType.ENDED));\n };\n\n private _onReadStateChange = (event: NativeSyntheticEvent<NativeReadyStateChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultReadyStateChangeEvent(event.nativeEvent.readyState));\n };\n\n private _onTimeUpdate = (event: NativeSyntheticEvent<NativeTimeUpdateEvent>) => {\n this._facade.dispatchEvent(new DefaultTimeupdateEvent(event.nativeEvent.currentTime, event.nativeEvent.currentProgramDateTime));\n };\n\n private _onDurationChange = (event: NativeSyntheticEvent<NativeDurationChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultDurationChangeEvent(decodeNanInf(event.nativeEvent.duration)));\n };\n\n private _onRateChange = (event: NativeSyntheticEvent<NativeRateChangeEvent>) => {\n this._facade.dispatchEvent(new DefaultRateChangeEvent(event.nativeEvent.playbackRate));\n };\n\n private _onSegmentNotFound = (event: NativeSyntheticEvent<NativeSegmentNotFoundEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultSegmentNotFoundEvent(nativeEvent.segmentStartTime, nativeEvent.error, nativeEvent.retryCount));\n };\n\n private _onTextTrackListEvent = (event: NativeSyntheticEvent<NativeTextTrackListEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultTextTrackListEvent(toTrackListEventType(nativeEvent.type), nativeEvent.track));\n };\n\n private _onTextTrackEvent = (event: NativeSyntheticEvent<NativeTextTrackEvent>) => {\n const nativeEvent = event.nativeEvent;\n const cue = nativeEvent.cue;\n if (cue) {\n cue.startTime = decodeNanInf(cue.startTime);\n cue.endTime = decodeNanInf(cue.endTime);\n }\n this._facade.dispatchEvent(new DefaultTextTrackEvent(toTextTrackEventType(nativeEvent.type), nativeEvent.trackUid, cue));\n };\n\n private _onMediaTrackListEvent = (event: NativeSyntheticEvent<NativeMediaTrackListEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultMediaTrackListEvent(toTrackListEventType(nativeEvent.type), toMediaTrackType(nativeEvent.trackType), nativeEvent.track),\n );\n };\n\n private _onMediaTrackEvent = (event: NativeSyntheticEvent<NativeMediaTrackEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(\n new DefaultMediaTrackEvent(\n toMediaTrackTypeEventType(nativeEvent.type),\n toMediaTrackType(nativeEvent.trackType),\n nativeEvent.trackUid,\n nativeEvent.qualities,\n ),\n );\n };\n\n private _onAdEvent = (event: NativeSyntheticEvent<NativeAdEvent>) => {\n const nativeEvent = event.nativeEvent;\n this._facade.dispatchEvent(new DefaultAdEvent(nativeEvent.type, nativeEvent.ad));\n };\n\n private _onCastEvent = (event: NativeSyntheticEvent<NativeCastEvent>) => {\n switch (event.nativeEvent.type) {\n case CastEventType.CHROMECAST_STATE_CHANGE:\n this._facade.dispatchEvent(new DefaultChromecastChangeEvent(event.nativeEvent.state));\n break;\n case CastEventType.AIRPLAY_STATE_CHANGE:\n this._facade.dispatchEvent(new DefaultAirplayStateChangeEvent(event.nativeEvent.state));\n break;\n case CastEventType.CHROMECAST_ERROR:\n this._facade.dispatchEvent(new DefaultChromecastErrorEvent(event.nativeEvent.error));\n break;\n }\n };\n\n private _onPresentationModeChange = (event: NativeSyntheticEvent<NativePresentationModeChangeEvent>) => {\n this._facade.dispatchEvent(\n new DefaultPresentationModeChangeEvent(\n event.nativeEvent.presentationMode,\n event.nativeEvent.previousPresentationMode,\n event.nativeEvent.context,\n ),\n );\n };\n\n public render(): JSX.Element {\n const { config, style, children } = this.props;\n return (\n <View style={[styles.base, style]}>\n <THEOplayerRCTView\n ref={this._root}\n style={StyleSheet.absoluteFill}\n config={config || {}}\n onNativePlayerReady={this._onNativePlayerReady}\n onNativeSourceChange={this._onSourceChange}\n onNativeLoadStart={this._onLoadStart}\n onNativeLoadedData={this._onLoadedData}\n onNativeLoadedMetadata={this._onLoadedMetadata}\n onNativeVolumeChange={this._onVolumeChange}\n onNativeError={this._onError}\n onNativeProgress={this._onProgress}\n onNativeCanPlay={this._onCanPlay}\n onNativePlay={this._onPlay}\n onNativePlaying={this._onPlaying}\n onNativePause={this._onPause}\n onNativeSeeking={this._onSeeking}\n onNativeSeeked={this._onSeeked}\n onNativeWaiting={this._onWaiting}\n onNativeEnded={this._onEnded}\n onNativeReadyStateChange={this._onReadStateChange}\n onNativeTimeUpdate={this._onTimeUpdate}\n onNativeDurationChange={this._onDurationChange}\n onNativeRateChange={this._onRateChange}\n onNativeSegmentNotFound={this._onSegmentNotFound}\n onNativeTextTrackListEvent={this._onTextTrackListEvent}\n onNativeTextTrackEvent={this._onTextTrackEvent}\n onNativeMediaTrackListEvent={this._onMediaTrackListEvent}\n onNativeMediaTrackEvent={this._onMediaTrackEvent}\n onNativeAdEvent={this._onAdEvent}\n onNativeCastEvent={this._onCastEvent}\n onNativePresentationModeChange={this._onPresentationModeChange}\n />\n {children}\n </View>\n );\n }\n}\n\nconst LINKING_ERROR =\n `The package 'react-native-theoplayer' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\nconst ComponentName = 'THEOplayerRCTView';\n\nconst THEOplayerRCTView =\n UIManager.getViewManagerConfig(ComponentName) != null\n ? requireNativeComponent<THEOplayerRCTViewProps>(ComponentName)\n : () => {\n throw new Error(LINKING_ERROR);\n };\n"],"mappings":"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"}
@@ -47,6 +47,7 @@ export class THEOplayerAdapter extends DefaultEventDispatcher {
47
47
  _defineProperty(this, "_castAdapter", void 0);
48
48
  _defineProperty(this, "_abrAdapter", void 0);
49
49
  _defineProperty(this, "_textTrackStyleAdapter", void 0);
50
+ _defineProperty(this, "_playerVersion", void 0);
50
51
  _defineProperty(this, "onSourceChange", () => {
51
52
  this.applyAutoplay();
52
53
  });
@@ -430,12 +431,18 @@ export class THEOplayerAdapter extends DefaultEventDispatcher {
430
431
  NativeModules.PlayerModule.setPaused(this._view.nativeHandle, false);
431
432
  }
432
433
  }
434
+ get version() {
435
+ return this._playerVersion;
436
+ }
433
437
  get nativeHandle() {
434
438
  return this._view.nativeHandle;
435
439
  }
436
- initializeWithNativePlayerState_(state) {
437
- Object.assign(this._state, state);
438
- this._castAdapter.init_();
440
+ initializeFromNativePlayer_(version, state) {
441
+ this._playerVersion = version;
442
+ if (state) {
443
+ Object.assign(this._state, state);
444
+ this._castAdapter.init_();
445
+ }
439
446
  }
440
447
  }
441
448
  //# sourceMappingURL=THEOplayerAdapter.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DefaultEventDispatcher","addTextTrackCue","addTrack","AspectRatio","findMediaTrackByUid","findTextTrackByUid","MediaTrackEventType","MediaTrackType","PlayerEventType","PresentationMode","removeTextTrackCue","removeTrack","TextTrackEventType","TextTrackMode","TrackListEventType","THEOplayerNativeAdsAdapter","THEOplayerNativeCastAdapter","AbrAdapter","NativeModules","Platform","TextTrackStyleAdapter","defaultPlayerState","source","undefined","autoplay","paused","seekable","buffered","pipConfig","startsAutomatically","backgroundAudioConfig","enabled","presentationMode","inline","muted","seeking","volume","currentTime","duration","NaN","playbackRate","preload","aspectRatio","FIT","audioTracks","videoTracks","textTracks","targetVideoQuality","selectedVideoTrack","selectedAudioTrack","selectedTextTrack","THEOplayerAdapter","constructor","view","initialState","arguments","length","_defineProperty","applyAutoplay","_state","event","_event$seekable","_event$buffered","sort","a","b","end","subType","cue","trackUid","track","ADD_CUE","REMOVE_CUE","ADD_TRACK","REMOVE_TRACK","CHANGE_TRACK","trackType","tracks","VIDEO","ACTIVE_QUALITY_CHANGED","Object","assign","activeQuality","qualities","isAudio","AUDIO","_view","_adsAdapter","_castAdapter","_abrAdapter","_textTrackStyleAdapter","addEventListener","SOURCE_CHANGE","onSourceChange","LOADED_METADATA","onLoadedMetadata","PAUSE","onPause","PLAYING","onPlaying","TIME_UPDATE","onTimeupdate","DURATION_CHANGE","onDurationChange","RATE_CHANGE","onRateChange","SEEKING","onSeeking","SEEKED","onSeeked","PROGRESS","onProgress","TEXT_TRACK_LIST","onTextTrackList","TEXT_TRACK","onTextTrack","MEDIA_TRACK","onMediaTrack","MEDIA_TRACK_LIST","onMediaTrackList","PRESENTATIONMODE_CHANGE","onPresentationModeChange","hasValidSource","abr","OS","ads","play","pause","type","PlayerModule","setPreload","nativeHandle","seekableEnd","ranges","cast","isNaN","seekTime","Infinity","setCurrentTime","pipConfiguration","setPipConfig","backgroundAudioConfiguration","setBackgroundAudioConfig","setPresentationMode","setMuted","setPlaybackRate","setSelectedAudioTrack","setSelectedVideoTrack","forEach","uid","mode","showing","disabled","setSelectedTextTrack","textTrackStyle","setSource","target","Array","isArray","targetQuality","setTargetVideoQuality","setVolume","ratio","setAspectRatio","setPaused","initializeWithNativePlayerState_","state","init_"],"sources":["THEOplayerAdapter.ts"],"sourcesContent":["import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';\nimport type {\n ABRConfiguration,\n AdsAPI,\n CastAPI,\n DurationChangeEvent,\n LoadedMetadataEvent,\n MediaTrack,\n MediaTrackEvent,\n MediaTrackListEvent,\n NativeHandleType,\n PiPConfiguration,\n PlayerEventMap,\n PresentationModeChangeEvent,\n ProgressEvent,\n RateChangeEvent,\n SourceDescription,\n TextTrack,\n TextTrackEvent,\n TextTrackListEvent,\n THEOplayer,\n THEOplayerView,\n TimeUpdateEvent,\n} from 'react-native-theoplayer';\nimport {\n addTextTrackCue,\n addTrack,\n AspectRatio,\n findMediaTrackByUid,\n findTextTrackByUid,\n MediaTrackEventType,\n MediaTrackType,\n PlayerEventType,\n PreloadType,\n PresentationMode,\n removeTextTrackCue,\n removeTrack,\n TextTrackEventType,\n TextTrackMode,\n TextTrackStyle,\n TrackListEventType,\n} from 'react-native-theoplayer';\nimport { THEOplayerNativeAdsAdapter } from './ads/THEOplayerNativeAdsAdapter';\nimport { THEOplayerNativeCastAdapter } from './cast/THEOplayerNativeCastAdapter';\nimport { AbrAdapter } from './abr/AbrAdapter';\nimport { NativeModules, Platform } from 'react-native';\nimport { TextTrackStyleAdapter } from './track/TextTrackStyleAdapter';\nimport type { BackgroundAudioConfiguration } from 'src/api/backgroundAudio/BackgroundAudioConfiguration';\nimport type { NativePlayerState } from './NativePlayerState';\n\nconst defaultPlayerState: NativePlayerState = {\n source: undefined,\n autoplay: false,\n paused: false,\n seekable: [],\n buffered: [],\n pipConfig: { startsAutomatically: false },\n backgroundAudioConfig: { enabled: false },\n presentationMode: PresentationMode.inline,\n muted: false,\n seeking: false,\n volume: 1,\n currentTime: 0,\n duration: NaN,\n playbackRate: 1,\n preload: 'none',\n aspectRatio: AspectRatio.FIT,\n audioTracks: [],\n videoTracks: [],\n textTracks: [],\n targetVideoQuality: undefined,\n selectedVideoTrack: undefined,\n selectedAudioTrack: undefined,\n selectedTextTrack: undefined,\n};\n\nexport class THEOplayerAdapter extends DefaultEventDispatcher<PlayerEventMap> implements THEOplayer {\n private readonly _view: THEOplayerView;\n private readonly _state: NativePlayerState;\n private readonly _adsAdapter: THEOplayerNativeAdsAdapter;\n private readonly _castAdapter: THEOplayerNativeCastAdapter;\n private readonly _abrAdapter: AbrAdapter;\n private readonly _textTrackStyleAdapter: TextTrackStyleAdapter;\n\n constructor(view: THEOplayerView, initialState: NativePlayerState = defaultPlayerState) {\n super();\n this._view = view;\n this._state = { ...initialState };\n this._adsAdapter = new THEOplayerNativeAdsAdapter(this._view);\n this._castAdapter = new THEOplayerNativeCastAdapter(this, this._view);\n this._abrAdapter = new AbrAdapter(this._view);\n this._textTrackStyleAdapter = new TextTrackStyleAdapter(this._view);\n\n this.addEventListener(PlayerEventType.SOURCE_CHANGE, this.onSourceChange);\n this.addEventListener(PlayerEventType.LOADED_METADATA, this.onLoadedMetadata);\n this.addEventListener(PlayerEventType.PAUSE, this.onPause);\n this.addEventListener(PlayerEventType.PLAYING, this.onPlaying);\n this.addEventListener(PlayerEventType.TIME_UPDATE, this.onTimeupdate);\n this.addEventListener(PlayerEventType.DURATION_CHANGE, this.onDurationChange);\n this.addEventListener(PlayerEventType.RATE_CHANGE, this.onRateChange);\n this.addEventListener(PlayerEventType.SEEKING, this.onSeeking);\n this.addEventListener(PlayerEventType.SEEKED, this.onSeeked);\n this.addEventListener(PlayerEventType.PROGRESS, this.onProgress);\n this.addEventListener(PlayerEventType.TEXT_TRACK_LIST, this.onTextTrackList);\n this.addEventListener(PlayerEventType.TEXT_TRACK, this.onTextTrack);\n this.addEventListener(PlayerEventType.MEDIA_TRACK, this.onMediaTrack);\n this.addEventListener(PlayerEventType.MEDIA_TRACK_LIST, this.onMediaTrackList);\n this.addEventListener(PlayerEventType.PRESENTATIONMODE_CHANGE, this.onPresentationModeChange);\n }\n\n private onSourceChange = () => {\n this.applyAutoplay();\n };\n\n private hasValidSource(): boolean {\n return this._state.source !== undefined;\n }\n\n private onPause = () => {\n this._state.paused = true;\n };\n\n private onPlaying = () => {\n this._state.paused = false;\n };\n\n private onPresentationModeChange = (event: PresentationModeChangeEvent) => {\n this._state.presentationMode = event.presentationMode;\n };\n\n private onTimeupdate = (event: TimeUpdateEvent) => {\n this._state.currentTime = event.currentTime;\n };\n\n private onLoadedMetadata = (event: LoadedMetadataEvent) => {\n this._state.duration = event.duration;\n this._state.audioTracks = event.audioTracks;\n this._state.videoTracks = event.videoTracks;\n this._state.textTracks = event.textTracks;\n this._state.selectedAudioTrack = event.selectedAudioTrack;\n this._state.selectedVideoTrack = event.selectedVideoTrack;\n this._state.selectedTextTrack = event.selectedTextTrack;\n };\n\n private onDurationChange = (event: DurationChangeEvent) => {\n this._state.duration = event.duration;\n };\n\n private onRateChange = (event: RateChangeEvent) => {\n this._state.playbackRate = event.playbackRate;\n };\n\n private onSeeking = () => {\n this._state.seeking = true;\n };\n\n private onSeeked = () => {\n this._state.seeking = false;\n };\n\n private onProgress = (event: ProgressEvent) => {\n this._state.seekable = event.seekable?.sort((a, b) => a.end - b.end);\n this._state.buffered = event.buffered?.sort((a, b) => a.end - b.end);\n };\n\n private onTextTrack = (event: TextTrackEvent) => {\n const { subType, cue, trackUid } = event;\n const track = findTextTrackByUid(this._state.textTracks, trackUid);\n switch (subType) {\n case TextTrackEventType.ADD_CUE:\n addTextTrackCue(track, cue);\n break;\n case TextTrackEventType.REMOVE_CUE:\n removeTextTrackCue(track, cue);\n break;\n }\n };\n\n private onTextTrackList = (event: TextTrackListEvent) => {\n const { subType, track } = event;\n switch (subType) {\n case TrackListEventType.ADD_TRACK:\n this._state.textTracks = addTrack(this._state.textTracks, track);\n break;\n case TrackListEventType.REMOVE_TRACK:\n this._state.textTracks = removeTrack(this._state.textTracks, track);\n break;\n case TrackListEventType.CHANGE_TRACK:\n this._state.textTracks = removeTrack(this._state.textTracks, track);\n this._state.textTracks = addTrack(this._state.textTracks, track);\n break;\n }\n };\n\n private onMediaTrack = (event: MediaTrackEvent) => {\n const { subType, trackType, trackUid } = event;\n const tracks = trackType === MediaTrackType.VIDEO ? this._state.videoTracks : this._state.audioTracks;\n const track = findMediaTrackByUid(tracks, trackUid);\n switch (subType) {\n case MediaTrackEventType.ACTIVE_QUALITY_CHANGED:\n // Update local state\n if (track) {\n Object.assign(track, { ...track, activeQuality: event.qualities });\n }\n break;\n }\n };\n\n private onMediaTrackList = (event: MediaTrackListEvent) => {\n const { subType, trackType, track } = event;\n const isAudio = trackType === MediaTrackType.AUDIO;\n switch (subType) {\n case TrackListEventType.ADD_TRACK:\n if (isAudio) {\n this._state.audioTracks = addTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = addTrack(this._state.videoTracks, track);\n }\n break;\n case TrackListEventType.REMOVE_TRACK:\n if (isAudio) {\n this._state.audioTracks = removeTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = removeTrack(this._state.videoTracks, track);\n }\n break;\n case TrackListEventType.CHANGE_TRACK:\n if (isAudio) {\n this._state.audioTracks = removeTrack(this._state.audioTracks, track);\n this._state.audioTracks = addTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = removeTrack(this._state.videoTracks, track);\n this._state.videoTracks = addTrack(this._state.videoTracks, track);\n }\n break;\n }\n };\n\n get abr(): ABRConfiguration | undefined {\n return Platform.OS === 'android' ? this._abrAdapter : undefined;\n }\n\n get ads(): AdsAPI {\n return this._adsAdapter;\n }\n\n private applyAutoplay() {\n if (!this.hasValidSource()) {\n return;\n }\n if (this._state.autoplay) {\n this.play();\n } else {\n this.pause();\n }\n }\n\n set autoplay(autoplay: boolean) {\n this._state.autoplay = autoplay;\n\n // Apply autoplay in case a source was already set.\n // If autoplay is changed before setting a source, `onSourceChange` applies autoplay.\n this.applyAutoplay();\n }\n\n get autoplay(): boolean {\n return this._state.autoplay;\n }\n\n set preload(type: PreloadType) {\n this._state.preload = type;\n NativeModules.PlayerModule.setPreload(this._view.nativeHandle, type);\n }\n\n get preload(): PreloadType {\n return this._state.preload;\n }\n\n get seekable() {\n return this._state.seekable;\n }\n\n private seekableEnd(): number {\n const ranges = this.seekable;\n return ranges.length === 0 ? 0 : ranges[ranges.length - 1].end;\n }\n\n get buffered() {\n return this._state.buffered;\n }\n\n get cast(): CastAPI {\n return this._castAdapter;\n }\n\n get currentTime(): number {\n return this._state.currentTime;\n }\n\n set currentTime(currentTime: number) {\n if (!this.hasValidSource()) {\n return;\n }\n\n if (isNaN(currentTime)) {\n return;\n }\n\n // Sanitise currentTime\n let seekTime = currentTime;\n if (currentTime === Infinity) {\n seekTime = this.seekableEnd();\n }\n\n this._state.currentTime = seekTime;\n NativeModules.PlayerModule.setCurrentTime(this._view.nativeHandle, seekTime);\n }\n\n get duration(): number {\n return this._state.duration;\n }\n\n get pipConfiguration(): PiPConfiguration {\n return this._state.pipConfig;\n }\n\n set pipConfiguration(pipConfiguration: PiPConfiguration) {\n this._state.pipConfig = pipConfiguration;\n NativeModules.PlayerModule.setPipConfig(this._view.nativeHandle, pipConfiguration);\n }\n\n get backgroundAudioConfiguration(): BackgroundAudioConfiguration {\n return this._state.backgroundAudioConfig;\n }\n\n set backgroundAudioConfiguration(backgroundAudioConfiguration: BackgroundAudioConfiguration) {\n this._state.backgroundAudioConfig = backgroundAudioConfiguration;\n NativeModules.PlayerModule.setBackgroundAudioConfig(this._view.nativeHandle, backgroundAudioConfiguration);\n }\n\n get presentationMode(): PresentationMode {\n return this._state.presentationMode;\n }\n\n set presentationMode(presentationMode: PresentationMode) {\n this._state.presentationMode = presentationMode;\n NativeModules.PlayerModule.setPresentationMode(this._view.nativeHandle, presentationMode);\n }\n\n get muted(): boolean {\n return this._state.muted;\n }\n\n set muted(muted: boolean) {\n this._state.muted = muted;\n NativeModules.PlayerModule.setMuted(this._view.nativeHandle, muted);\n }\n\n get seeking(): boolean {\n return this._state.seeking;\n }\n\n get paused(): boolean {\n return this._state.paused;\n }\n\n get playbackRate(): number {\n return this._state.playbackRate;\n }\n\n set playbackRate(playbackRate: number) {\n this._state.playbackRate = playbackRate;\n NativeModules.PlayerModule.setPlaybackRate(this._view.nativeHandle, playbackRate);\n }\n\n get audioTracks(): MediaTrack[] {\n return this._state.audioTracks;\n }\n\n get selectedAudioTrack(): number | undefined {\n return this._state.selectedAudioTrack;\n }\n\n set selectedAudioTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedAudioTrack = trackUid;\n NativeModules.PlayerModule.setSelectedAudioTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get videoTracks(): MediaTrack[] {\n return this._state.videoTracks;\n }\n\n get selectedVideoTrack(): number | undefined {\n return this._state.selectedVideoTrack;\n }\n\n set selectedVideoTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedVideoTrack = trackUid;\n this._state.targetVideoQuality = undefined;\n NativeModules.PlayerModule.setSelectedVideoTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get textTracks(): TextTrack[] {\n return this._state.textTracks;\n }\n\n get selectedTextTrack(): number | undefined {\n return this._state.selectedTextTrack;\n }\n\n set selectedTextTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedTextTrack = trackUid;\n this.textTracks.forEach((track) => {\n if (track.uid === trackUid) {\n track.mode = TextTrackMode.showing;\n } else if (track.mode === TextTrackMode.showing) {\n track.mode = TextTrackMode.disabled;\n }\n });\n NativeModules.PlayerModule.setSelectedTextTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get textTrackStyle(): TextTrackStyle {\n return this._textTrackStyleAdapter;\n }\n\n get source(): SourceDescription | undefined {\n return this._state.source;\n }\n\n set source(source: SourceDescription | undefined) {\n // This is to correctly reset autoplay during a source change.\n this.pause();\n this._state.source = source;\n NativeModules.PlayerModule.setSource(this._view.nativeHandle, source);\n // Reset state for play-out of new source\n Object.assign(this._state, {\n playbackRate: 1,\n seeking: false,\n audioTracks: [],\n videoTracks: [],\n textTracks: [],\n seekable: [],\n buffered: [],\n selectedTextTrack: undefined,\n selectedVideoTrack: undefined,\n selectedAudioTrack: undefined,\n targetVideoQuality: undefined,\n });\n }\n\n get targetVideoQuality(): number | number[] | undefined {\n return this._state.targetVideoQuality;\n }\n\n set targetVideoQuality(target: number | number[] | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n // Always pass an array for targetVideoQuality.\n this._state.targetVideoQuality = !target ? [] : Array.isArray(target) ? target : [target];\n\n // Update local state\n const track = findMediaTrackByUid(this._state.videoTracks, this.selectedVideoTrack);\n if (track) {\n Object.assign(track, { ...track, targetQuality: this._state.targetVideoQuality });\n }\n NativeModules.PlayerModule.setTargetVideoQuality(this._view.nativeHandle, this._state.targetVideoQuality);\n }\n\n get volume(): number {\n return this._state.volume;\n }\n\n set volume(volume: number) {\n this._state.volume = volume;\n NativeModules.PlayerModule.setVolume(this._view.nativeHandle, volume);\n }\n\n get aspectRatio(): AspectRatio {\n return this._state.aspectRatio;\n }\n\n set aspectRatio(ratio: AspectRatio) {\n this._state.aspectRatio = ratio;\n NativeModules.PlayerModule.setAspectRatio(this._view.nativeHandle, ratio);\n }\n\n pause(): void {\n if (this.hasValidSource()) {\n this._state.paused = true;\n NativeModules.PlayerModule.setPaused(this._view.nativeHandle, true);\n }\n }\n\n play(): void {\n if (this.hasValidSource()) {\n this._state.paused = false;\n NativeModules.PlayerModule.setPaused(this._view.nativeHandle, false);\n }\n }\n\n get nativeHandle(): NativeHandleType {\n return this._view.nativeHandle;\n }\n\n initializeWithNativePlayerState_(state: NativePlayerState) {\n Object.assign(this._state, state);\n this._castAdapter.init_();\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["DefaultEventDispatcher","addTextTrackCue","addTrack","AspectRatio","findMediaTrackByUid","findTextTrackByUid","MediaTrackEventType","MediaTrackType","PlayerEventType","PresentationMode","removeTextTrackCue","removeTrack","TextTrackEventType","TextTrackMode","TrackListEventType","THEOplayerNativeAdsAdapter","THEOplayerNativeCastAdapter","AbrAdapter","NativeModules","Platform","TextTrackStyleAdapter","defaultPlayerState","source","undefined","autoplay","paused","seekable","buffered","pipConfig","startsAutomatically","backgroundAudioConfig","enabled","presentationMode","inline","muted","seeking","volume","currentTime","duration","NaN","playbackRate","preload","aspectRatio","FIT","audioTracks","videoTracks","textTracks","targetVideoQuality","selectedVideoTrack","selectedAudioTrack","selectedTextTrack","THEOplayerAdapter","constructor","view","initialState","arguments","length","_defineProperty","applyAutoplay","_state","event","_event$seekable","_event$buffered","sort","a","b","end","subType","cue","trackUid","track","ADD_CUE","REMOVE_CUE","ADD_TRACK","REMOVE_TRACK","CHANGE_TRACK","trackType","tracks","VIDEO","ACTIVE_QUALITY_CHANGED","Object","assign","activeQuality","qualities","isAudio","AUDIO","_view","_adsAdapter","_castAdapter","_abrAdapter","_textTrackStyleAdapter","addEventListener","SOURCE_CHANGE","onSourceChange","LOADED_METADATA","onLoadedMetadata","PAUSE","onPause","PLAYING","onPlaying","TIME_UPDATE","onTimeupdate","DURATION_CHANGE","onDurationChange","RATE_CHANGE","onRateChange","SEEKING","onSeeking","SEEKED","onSeeked","PROGRESS","onProgress","TEXT_TRACK_LIST","onTextTrackList","TEXT_TRACK","onTextTrack","MEDIA_TRACK","onMediaTrack","MEDIA_TRACK_LIST","onMediaTrackList","PRESENTATIONMODE_CHANGE","onPresentationModeChange","hasValidSource","abr","OS","ads","play","pause","type","PlayerModule","setPreload","nativeHandle","seekableEnd","ranges","cast","isNaN","seekTime","Infinity","setCurrentTime","pipConfiguration","setPipConfig","backgroundAudioConfiguration","setBackgroundAudioConfig","setPresentationMode","setMuted","setPlaybackRate","setSelectedAudioTrack","setSelectedVideoTrack","forEach","uid","mode","showing","disabled","setSelectedTextTrack","textTrackStyle","setSource","target","Array","isArray","targetQuality","setTargetVideoQuality","setVolume","ratio","setAspectRatio","setPaused","version","_playerVersion","initializeFromNativePlayer_","state","init_"],"sources":["THEOplayerAdapter.ts"],"sourcesContent":["import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';\nimport type {\n ABRConfiguration,\n AdsAPI,\n CastAPI,\n DurationChangeEvent,\n LoadedMetadataEvent,\n MediaTrack,\n MediaTrackEvent,\n MediaTrackListEvent,\n NativeHandleType,\n PiPConfiguration,\n PlayerEventMap,\n PresentationModeChangeEvent,\n ProgressEvent,\n RateChangeEvent,\n SourceDescription,\n TextTrack,\n TextTrackEvent,\n TextTrackListEvent,\n THEOplayer,\n THEOplayerView,\n TimeUpdateEvent,\n} from 'react-native-theoplayer';\nimport {\n addTextTrackCue,\n addTrack,\n AspectRatio,\n findMediaTrackByUid,\n findTextTrackByUid,\n MediaTrackEventType,\n MediaTrackType,\n PlayerEventType,\n PlayerVersion,\n PreloadType,\n PresentationMode,\n removeTextTrackCue,\n removeTrack,\n TextTrackEventType,\n TextTrackMode,\n TextTrackStyle,\n TrackListEventType,\n} from 'react-native-theoplayer';\nimport { THEOplayerNativeAdsAdapter } from './ads/THEOplayerNativeAdsAdapter';\nimport { THEOplayerNativeCastAdapter } from './cast/THEOplayerNativeCastAdapter';\nimport { AbrAdapter } from './abr/AbrAdapter';\nimport { NativeModules, Platform } from 'react-native';\nimport { TextTrackStyleAdapter } from './track/TextTrackStyleAdapter';\nimport type { BackgroundAudioConfiguration } from 'src/api/backgroundAudio/BackgroundAudioConfiguration';\nimport type { NativePlayerState } from './NativePlayerState';\n\nconst defaultPlayerState: NativePlayerState = {\n source: undefined,\n autoplay: false,\n paused: false,\n seekable: [],\n buffered: [],\n pipConfig: { startsAutomatically: false },\n backgroundAudioConfig: { enabled: false },\n presentationMode: PresentationMode.inline,\n muted: false,\n seeking: false,\n volume: 1,\n currentTime: 0,\n duration: NaN,\n playbackRate: 1,\n preload: 'none',\n aspectRatio: AspectRatio.FIT,\n audioTracks: [],\n videoTracks: [],\n textTracks: [],\n targetVideoQuality: undefined,\n selectedVideoTrack: undefined,\n selectedAudioTrack: undefined,\n selectedTextTrack: undefined,\n};\n\nexport class THEOplayerAdapter extends DefaultEventDispatcher<PlayerEventMap> implements THEOplayer {\n private readonly _view: THEOplayerView;\n private readonly _state: NativePlayerState;\n private readonly _adsAdapter: THEOplayerNativeAdsAdapter;\n private readonly _castAdapter: THEOplayerNativeCastAdapter;\n private readonly _abrAdapter: AbrAdapter;\n private readonly _textTrackStyleAdapter: TextTrackStyleAdapter;\n private _playerVersion!: PlayerVersion;\n\n constructor(view: THEOplayerView, initialState: NativePlayerState = defaultPlayerState) {\n super();\n this._view = view;\n this._state = { ...initialState };\n this._adsAdapter = new THEOplayerNativeAdsAdapter(this._view);\n this._castAdapter = new THEOplayerNativeCastAdapter(this, this._view);\n this._abrAdapter = new AbrAdapter(this._view);\n this._textTrackStyleAdapter = new TextTrackStyleAdapter(this._view);\n\n this.addEventListener(PlayerEventType.SOURCE_CHANGE, this.onSourceChange);\n this.addEventListener(PlayerEventType.LOADED_METADATA, this.onLoadedMetadata);\n this.addEventListener(PlayerEventType.PAUSE, this.onPause);\n this.addEventListener(PlayerEventType.PLAYING, this.onPlaying);\n this.addEventListener(PlayerEventType.TIME_UPDATE, this.onTimeupdate);\n this.addEventListener(PlayerEventType.DURATION_CHANGE, this.onDurationChange);\n this.addEventListener(PlayerEventType.RATE_CHANGE, this.onRateChange);\n this.addEventListener(PlayerEventType.SEEKING, this.onSeeking);\n this.addEventListener(PlayerEventType.SEEKED, this.onSeeked);\n this.addEventListener(PlayerEventType.PROGRESS, this.onProgress);\n this.addEventListener(PlayerEventType.TEXT_TRACK_LIST, this.onTextTrackList);\n this.addEventListener(PlayerEventType.TEXT_TRACK, this.onTextTrack);\n this.addEventListener(PlayerEventType.MEDIA_TRACK, this.onMediaTrack);\n this.addEventListener(PlayerEventType.MEDIA_TRACK_LIST, this.onMediaTrackList);\n this.addEventListener(PlayerEventType.PRESENTATIONMODE_CHANGE, this.onPresentationModeChange);\n }\n\n private onSourceChange = () => {\n this.applyAutoplay();\n };\n\n private hasValidSource(): boolean {\n return this._state.source !== undefined;\n }\n\n private onPause = () => {\n this._state.paused = true;\n };\n\n private onPlaying = () => {\n this._state.paused = false;\n };\n\n private onPresentationModeChange = (event: PresentationModeChangeEvent) => {\n this._state.presentationMode = event.presentationMode;\n };\n\n private onTimeupdate = (event: TimeUpdateEvent) => {\n this._state.currentTime = event.currentTime;\n };\n\n private onLoadedMetadata = (event: LoadedMetadataEvent) => {\n this._state.duration = event.duration;\n this._state.audioTracks = event.audioTracks;\n this._state.videoTracks = event.videoTracks;\n this._state.textTracks = event.textTracks;\n this._state.selectedAudioTrack = event.selectedAudioTrack;\n this._state.selectedVideoTrack = event.selectedVideoTrack;\n this._state.selectedTextTrack = event.selectedTextTrack;\n };\n\n private onDurationChange = (event: DurationChangeEvent) => {\n this._state.duration = event.duration;\n };\n\n private onRateChange = (event: RateChangeEvent) => {\n this._state.playbackRate = event.playbackRate;\n };\n\n private onSeeking = () => {\n this._state.seeking = true;\n };\n\n private onSeeked = () => {\n this._state.seeking = false;\n };\n\n private onProgress = (event: ProgressEvent) => {\n this._state.seekable = event.seekable?.sort((a, b) => a.end - b.end);\n this._state.buffered = event.buffered?.sort((a, b) => a.end - b.end);\n };\n\n private onTextTrack = (event: TextTrackEvent) => {\n const { subType, cue, trackUid } = event;\n const track = findTextTrackByUid(this._state.textTracks, trackUid);\n switch (subType) {\n case TextTrackEventType.ADD_CUE:\n addTextTrackCue(track, cue);\n break;\n case TextTrackEventType.REMOVE_CUE:\n removeTextTrackCue(track, cue);\n break;\n }\n };\n\n private onTextTrackList = (event: TextTrackListEvent) => {\n const { subType, track } = event;\n switch (subType) {\n case TrackListEventType.ADD_TRACK:\n this._state.textTracks = addTrack(this._state.textTracks, track);\n break;\n case TrackListEventType.REMOVE_TRACK:\n this._state.textTracks = removeTrack(this._state.textTracks, track);\n break;\n case TrackListEventType.CHANGE_TRACK:\n this._state.textTracks = removeTrack(this._state.textTracks, track);\n this._state.textTracks = addTrack(this._state.textTracks, track);\n break;\n }\n };\n\n private onMediaTrack = (event: MediaTrackEvent) => {\n const { subType, trackType, trackUid } = event;\n const tracks = trackType === MediaTrackType.VIDEO ? this._state.videoTracks : this._state.audioTracks;\n const track = findMediaTrackByUid(tracks, trackUid);\n switch (subType) {\n case MediaTrackEventType.ACTIVE_QUALITY_CHANGED:\n // Update local state\n if (track) {\n Object.assign(track, { ...track, activeQuality: event.qualities });\n }\n break;\n }\n };\n\n private onMediaTrackList = (event: MediaTrackListEvent) => {\n const { subType, trackType, track } = event;\n const isAudio = trackType === MediaTrackType.AUDIO;\n switch (subType) {\n case TrackListEventType.ADD_TRACK:\n if (isAudio) {\n this._state.audioTracks = addTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = addTrack(this._state.videoTracks, track);\n }\n break;\n case TrackListEventType.REMOVE_TRACK:\n if (isAudio) {\n this._state.audioTracks = removeTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = removeTrack(this._state.videoTracks, track);\n }\n break;\n case TrackListEventType.CHANGE_TRACK:\n if (isAudio) {\n this._state.audioTracks = removeTrack(this._state.audioTracks, track);\n this._state.audioTracks = addTrack(this._state.audioTracks, track);\n } else {\n this._state.videoTracks = removeTrack(this._state.videoTracks, track);\n this._state.videoTracks = addTrack(this._state.videoTracks, track);\n }\n break;\n }\n };\n\n get abr(): ABRConfiguration | undefined {\n return Platform.OS === 'android' ? this._abrAdapter : undefined;\n }\n\n get ads(): AdsAPI {\n return this._adsAdapter;\n }\n\n private applyAutoplay() {\n if (!this.hasValidSource()) {\n return;\n }\n if (this._state.autoplay) {\n this.play();\n } else {\n this.pause();\n }\n }\n\n set autoplay(autoplay: boolean) {\n this._state.autoplay = autoplay;\n\n // Apply autoplay in case a source was already set.\n // If autoplay is changed before setting a source, `onSourceChange` applies autoplay.\n this.applyAutoplay();\n }\n\n get autoplay(): boolean {\n return this._state.autoplay;\n }\n\n set preload(type: PreloadType) {\n this._state.preload = type;\n NativeModules.PlayerModule.setPreload(this._view.nativeHandle, type);\n }\n\n get preload(): PreloadType {\n return this._state.preload;\n }\n\n get seekable() {\n return this._state.seekable;\n }\n\n private seekableEnd(): number {\n const ranges = this.seekable;\n return ranges.length === 0 ? 0 : ranges[ranges.length - 1].end;\n }\n\n get buffered() {\n return this._state.buffered;\n }\n\n get cast(): CastAPI {\n return this._castAdapter;\n }\n\n get currentTime(): number {\n return this._state.currentTime;\n }\n\n set currentTime(currentTime: number) {\n if (!this.hasValidSource()) {\n return;\n }\n\n if (isNaN(currentTime)) {\n return;\n }\n\n // Sanitise currentTime\n let seekTime = currentTime;\n if (currentTime === Infinity) {\n seekTime = this.seekableEnd();\n }\n\n this._state.currentTime = seekTime;\n NativeModules.PlayerModule.setCurrentTime(this._view.nativeHandle, seekTime);\n }\n\n get duration(): number {\n return this._state.duration;\n }\n\n get pipConfiguration(): PiPConfiguration {\n return this._state.pipConfig;\n }\n\n set pipConfiguration(pipConfiguration: PiPConfiguration) {\n this._state.pipConfig = pipConfiguration;\n NativeModules.PlayerModule.setPipConfig(this._view.nativeHandle, pipConfiguration);\n }\n\n get backgroundAudioConfiguration(): BackgroundAudioConfiguration {\n return this._state.backgroundAudioConfig;\n }\n\n set backgroundAudioConfiguration(backgroundAudioConfiguration: BackgroundAudioConfiguration) {\n this._state.backgroundAudioConfig = backgroundAudioConfiguration;\n NativeModules.PlayerModule.setBackgroundAudioConfig(this._view.nativeHandle, backgroundAudioConfiguration);\n }\n\n get presentationMode(): PresentationMode {\n return this._state.presentationMode;\n }\n\n set presentationMode(presentationMode: PresentationMode) {\n this._state.presentationMode = presentationMode;\n NativeModules.PlayerModule.setPresentationMode(this._view.nativeHandle, presentationMode);\n }\n\n get muted(): boolean {\n return this._state.muted;\n }\n\n set muted(muted: boolean) {\n this._state.muted = muted;\n NativeModules.PlayerModule.setMuted(this._view.nativeHandle, muted);\n }\n\n get seeking(): boolean {\n return this._state.seeking;\n }\n\n get paused(): boolean {\n return this._state.paused;\n }\n\n get playbackRate(): number {\n return this._state.playbackRate;\n }\n\n set playbackRate(playbackRate: number) {\n this._state.playbackRate = playbackRate;\n NativeModules.PlayerModule.setPlaybackRate(this._view.nativeHandle, playbackRate);\n }\n\n get audioTracks(): MediaTrack[] {\n return this._state.audioTracks;\n }\n\n get selectedAudioTrack(): number | undefined {\n return this._state.selectedAudioTrack;\n }\n\n set selectedAudioTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedAudioTrack = trackUid;\n NativeModules.PlayerModule.setSelectedAudioTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get videoTracks(): MediaTrack[] {\n return this._state.videoTracks;\n }\n\n get selectedVideoTrack(): number | undefined {\n return this._state.selectedVideoTrack;\n }\n\n set selectedVideoTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedVideoTrack = trackUid;\n this._state.targetVideoQuality = undefined;\n NativeModules.PlayerModule.setSelectedVideoTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get textTracks(): TextTrack[] {\n return this._state.textTracks;\n }\n\n get selectedTextTrack(): number | undefined {\n return this._state.selectedTextTrack;\n }\n\n set selectedTextTrack(trackUid: number | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n this._state.selectedTextTrack = trackUid;\n this.textTracks.forEach((track) => {\n if (track.uid === trackUid) {\n track.mode = TextTrackMode.showing;\n } else if (track.mode === TextTrackMode.showing) {\n track.mode = TextTrackMode.disabled;\n }\n });\n NativeModules.PlayerModule.setSelectedTextTrack(this._view.nativeHandle, trackUid || -1);\n }\n\n get textTrackStyle(): TextTrackStyle {\n return this._textTrackStyleAdapter;\n }\n\n get source(): SourceDescription | undefined {\n return this._state.source;\n }\n\n set source(source: SourceDescription | undefined) {\n // This is to correctly reset autoplay during a source change.\n this.pause();\n this._state.source = source;\n NativeModules.PlayerModule.setSource(this._view.nativeHandle, source);\n // Reset state for play-out of new source\n Object.assign(this._state, {\n playbackRate: 1,\n seeking: false,\n audioTracks: [],\n videoTracks: [],\n textTracks: [],\n seekable: [],\n buffered: [],\n selectedTextTrack: undefined,\n selectedVideoTrack: undefined,\n selectedAudioTrack: undefined,\n targetVideoQuality: undefined,\n });\n }\n\n get targetVideoQuality(): number | number[] | undefined {\n return this._state.targetVideoQuality;\n }\n\n set targetVideoQuality(target: number | number[] | undefined) {\n if (!this.hasValidSource()) {\n return;\n }\n // Always pass an array for targetVideoQuality.\n this._state.targetVideoQuality = !target ? [] : Array.isArray(target) ? target : [target];\n\n // Update local state\n const track = findMediaTrackByUid(this._state.videoTracks, this.selectedVideoTrack);\n if (track) {\n Object.assign(track, { ...track, targetQuality: this._state.targetVideoQuality });\n }\n NativeModules.PlayerModule.setTargetVideoQuality(this._view.nativeHandle, this._state.targetVideoQuality);\n }\n\n get volume(): number {\n return this._state.volume;\n }\n\n set volume(volume: number) {\n this._state.volume = volume;\n NativeModules.PlayerModule.setVolume(this._view.nativeHandle, volume);\n }\n\n get aspectRatio(): AspectRatio {\n return this._state.aspectRatio;\n }\n\n set aspectRatio(ratio: AspectRatio) {\n this._state.aspectRatio = ratio;\n NativeModules.PlayerModule.setAspectRatio(this._view.nativeHandle, ratio);\n }\n\n pause(): void {\n if (this.hasValidSource()) {\n this._state.paused = true;\n NativeModules.PlayerModule.setPaused(this._view.nativeHandle, true);\n }\n }\n\n play(): void {\n if (this.hasValidSource()) {\n this._state.paused = false;\n NativeModules.PlayerModule.setPaused(this._view.nativeHandle, false);\n }\n }\n\n public get version(): PlayerVersion {\n return this._playerVersion;\n }\n\n get nativeHandle(): NativeHandleType {\n return this._view.nativeHandle;\n }\n\n initializeFromNativePlayer_(version: PlayerVersion, state: NativePlayerState | undefined) {\n this._playerVersion = version;\n if (state) {\n Object.assign(this._state, state);\n this._castAdapter.init_();\n }\n }\n}\n"],"mappings":"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"}
@@ -5,6 +5,7 @@ import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';
5
5
  import { AspectRatio, PlayerEventType, PresentationMode } from 'react-native-theoplayer';
6
6
  import { THEOplayerWebAdsAdapter } from './ads/THEOplayerWebAdsAdapter';
7
7
  import { THEOplayerWebCastAdapter } from './cast/THEOplayerWebCastAdapter';
8
+ import * as THEOplayerWeb from 'theoplayer';
8
9
  import { findNativeQualitiesByUid, fromNativeMediaTrackList, fromNativeTextTrackList } from './web/TrackUtils';
9
10
  import { WebEventForwarder } from './WebEventForwarder';
10
11
  import { WebPresentationModeManager } from './web/WebPresentationModeManager';
@@ -267,6 +268,12 @@ export class THEOplayerWebAdapter extends DefaultEventDispatcher {
267
268
  get cast() {
268
269
  return this._castAdapter;
269
270
  }
271
+ get version() {
272
+ return {
273
+ version: THEOplayerWeb.version,
274
+ playerSuiteVersion: THEOplayerWeb.playerSuiteVersion
275
+ };
276
+ }
270
277
  destroy() {
271
278
  var _this$_eventForwarder, _this$_mediaSession3, _this$_player7;
272
279
  this.dispatchEvent(new BaseEvent(PlayerEventType.DESTROY));
@@ -1 +1 @@
1
- {"version":3,"names":["DefaultEventDispatcher","AspectRatio","PlayerEventType","PresentationMode","THEOplayerWebAdsAdapter","THEOplayerWebCastAdapter","findNativeQualitiesByUid","fromNativeMediaTrackList","fromNativeTextTrackList","WebEventForwarder","WebPresentationModeManager","WebMediaSession","BaseEvent","defaultBackgroundAudioConfiguration","enabled","defaultPipConfiguration","startsAutomatically","THEOplayerWebAdapter","constructor","player","config","_config$mediaControl","_defineProperty","undefined","_this$_mediaSession","_player","document","visibilityState","presentationMode","pip","backgroundAudioConfiguration","pause","_mediaSession","updateActionHandlers","_adsAdapter","_castAdapter","_eventForwarder","_presentationModeManager","addEventListener","onVisibilityChange","mediaControl","mediaSessionEnabled","abr","_this$_player","source","_this$_player2","_targetVideoQuality","play","_this$_player3","_this$_player4","paused","autoplay","preload","type","_this$_player5","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","_this$_player6","selectedVideoTrack","_this$_player$videoTr","videoTrack","selectedAudioTrack","_this$_player$audioTr","audioTrack","targetVideoQuality","enabledVideoTrack","targetQuality","currentTime","NaN","isNaN","aspectRatio","FIT","_ratio","duration","ads","cast","destroy","_this$_eventForwarder","_this$_mediaSession3","_this$_player7","dispatchEvent","DESTROY","unload","removeEventListener","nativeHandle"],"sources":["THEOplayerWebAdapter.ts"],"sourcesContent":["import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';\nimport type {\n AdsAPI,\n CastAPI,\n MediaTrack,\n NativeHandleType,\n PlayerConfiguration,\n PlayerEventMap,\n PreloadType,\n TextTrack,\n TextTrackStyle,\n THEOplayer,\n} from 'react-native-theoplayer';\nimport { AspectRatio, PlayerEventType, PresentationMode } 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 { BaseEvent } from './event/BaseEvent';\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 _adsAdapter: THEOplayerWebAdsAdapter;\n private readonly _castAdapter: THEOplayerWebCastAdapter;\n private readonly _presentationModeManager: WebPresentationModeManager;\n private _player: THEOplayerWeb.ChromelessPlayer | undefined;\n private _eventForwarder: WebEventForwarder | undefined;\n private _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 as ABRConfiguration | undefined;\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 if (this._player) {\n this._player.source = source;\n }\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 ? this._player.paused : true;\n }\n\n get autoplay(): boolean {\n return this._player ? this._player.autoplay : false;\n }\n\n set autoplay(autoplay: boolean) {\n if (this._player) {\n this._player.autoplay = autoplay;\n }\n }\n\n set preload(type: PreloadType) {\n if (this._player) {\n this._player.preload = type;\n }\n }\n\n get preload(): PreloadType {\n return this._player?.preload || 'none';\n }\n\n get seekable() {\n if (!this._player) {\n return [];\n }\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 if (!this._player) {\n return [];\n }\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 ? this._player.playbackRate : 1;\n }\n\n set playbackRate(playbackRate: number) {\n if (this._player) {\n this._player.playbackRate = playbackRate;\n }\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 ? this._player.volume : 1;\n }\n\n set volume(volume: number) {\n if (this._player) {\n this._player.volume = volume;\n }\n }\n\n get muted(): boolean {\n return this._player ? this._player.muted : false;\n }\n\n set muted(muted: boolean) {\n if (this._player) {\n this._player.muted = muted;\n }\n }\n\n get seeking(): boolean {\n return this._player ? this._player.seeking : false;\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 this._player ? fromNativeMediaTrackList(this._player.audioTracks) : [];\n }\n\n get videoTracks(): MediaTrack[] {\n return this._player ? fromNativeMediaTrackList(this._player.videoTracks) : [];\n }\n\n get textTracks(): TextTrack[] {\n return this._player ? fromNativeTextTrackList(this._player.textTracks) : [];\n }\n\n get selectedTextTrack(): number | undefined {\n if (this._player) {\n return this._player.textTracks.find((textTrack: NativeTextTrack) => {\n return textTrack.mode === 'showing';\n })?.uid;\n }\n return undefined;\n }\n\n set selectedTextTrack(selectedTextTrack: number | undefined) {\n if (this._player) {\n this._player.textTracks.forEach((textTrack: NativeTextTrack) => {\n textTrack.mode = textTrack.uid === selectedTextTrack ? 'showing' : 'disabled';\n });\n }\n }\n\n get textTrackStyle(): TextTrackStyle {\n return this._player?.textTrackStyle as TextTrackStyle;\n }\n\n get selectedVideoTrack(): number | undefined {\n if (this._player) {\n return this._player.videoTracks.find((videoTrack: NativeMediaTrack) => videoTrack.enabled)?.uid;\n }\n return undefined;\n }\n\n set selectedVideoTrack(selectedVideoTrack: number | undefined) {\n if (this._player) {\n this._targetVideoQuality = undefined;\n this._player.videoTracks.forEach((videoTrack: NativeMediaTrack) => {\n videoTrack.enabled = videoTrack.uid === selectedVideoTrack;\n });\n }\n }\n\n get selectedAudioTrack(): number | undefined {\n if (this._player) {\n return this._player.audioTracks.find((audioTrack: NativeMediaTrack) => {\n return audioTrack.enabled;\n })?.uid;\n }\n return undefined;\n }\n\n set selectedAudioTrack(selectedAudioTrack: number | undefined) {\n if (this._player) {\n this._player.audioTracks.forEach((audioTrack: NativeMediaTrack) => {\n audioTrack.enabled = audioTrack.uid === selectedAudioTrack;\n });\n }\n }\n\n get targetVideoQuality(): number | number[] | undefined {\n if (this._player) {\n return this._targetVideoQuality;\n }\n return undefined;\n }\n\n set targetVideoQuality(targetVideoQuality: number | number[] | undefined) {\n if (this._player) {\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\n get currentTime(): number {\n return this._player ? 1e3 * this._player.currentTime : NaN;\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 aspectRatio(): AspectRatio {\n return AspectRatio.FIT;\n }\n\n set aspectRatio(_ratio: AspectRatio) {\n // unused\n }\n\n get duration(): number {\n return this._player ? this._player.duration * 1e3 : NaN;\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.dispatchEvent(new BaseEvent(PlayerEventType.DESTROY));\n this._eventForwarder?.unload();\n this._mediaSession?.destroy();\n document.removeEventListener('visibilitychange', this.onVisibilityChange);\n this._eventForwarder = undefined;\n this._mediaSession = undefined;\n this._player?.destroy();\n this._player = undefined;\n }\n\n get nativeHandle(): NativeHandleType {\n return this._player;\n }\n\n private readonly onVisibilityChange = () => {\n if (!this._player) {\n return;\n }\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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"}
1
+ {"version":3,"names":["DefaultEventDispatcher","AspectRatio","PlayerEventType","PresentationMode","THEOplayerWebAdsAdapter","THEOplayerWebCastAdapter","THEOplayerWeb","findNativeQualitiesByUid","fromNativeMediaTrackList","fromNativeTextTrackList","WebEventForwarder","WebPresentationModeManager","WebMediaSession","BaseEvent","defaultBackgroundAudioConfiguration","enabled","defaultPipConfiguration","startsAutomatically","THEOplayerWebAdapter","constructor","player","config","_config$mediaControl","_defineProperty","undefined","_this$_mediaSession","_player","document","visibilityState","presentationMode","pip","backgroundAudioConfiguration","pause","_mediaSession","updateActionHandlers","_adsAdapter","_castAdapter","_eventForwarder","_presentationModeManager","addEventListener","onVisibilityChange","mediaControl","mediaSessionEnabled","abr","_this$_player","source","_this$_player2","_targetVideoQuality","play","_this$_player3","_this$_player4","paused","autoplay","preload","type","_this$_player5","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","_this$_player6","selectedVideoTrack","_this$_player$videoTr","videoTrack","selectedAudioTrack","_this$_player$audioTr","audioTrack","targetVideoQuality","enabledVideoTrack","targetQuality","currentTime","NaN","isNaN","aspectRatio","FIT","_ratio","duration","ads","cast","version","playerSuiteVersion","destroy","_this$_eventForwarder","_this$_mediaSession3","_this$_player7","dispatchEvent","DESTROY","unload","removeEventListener","nativeHandle"],"sources":["THEOplayerWebAdapter.ts"],"sourcesContent":["import { DefaultEventDispatcher } from './event/DefaultEventDispatcher';\nimport type {\n AdsAPI,\n CastAPI,\n MediaTrack,\n NativeHandleType,\n PlayerConfiguration,\n PlayerEventMap,\n PlayerVersion,\n PreloadType,\n TextTrack,\n TextTrackStyle,\n THEOplayer,\n} from 'react-native-theoplayer';\nimport { AspectRatio, PlayerEventType, PresentationMode } from 'react-native-theoplayer';\nimport { THEOplayerWebAdsAdapter } from './ads/THEOplayerWebAdsAdapter';\nimport { THEOplayerWebCastAdapter } from './cast/THEOplayerWebCastAdapter';\nimport * 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 { BaseEvent } from './event/BaseEvent';\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 _adsAdapter: THEOplayerWebAdsAdapter;\n private readonly _castAdapter: THEOplayerWebCastAdapter;\n private readonly _presentationModeManager: WebPresentationModeManager;\n private _player: THEOplayerWeb.ChromelessPlayer | undefined;\n private _eventForwarder: WebEventForwarder | undefined;\n private _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 as ABRConfiguration | undefined;\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 if (this._player) {\n this._player.source = source;\n }\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 ? this._player.paused : true;\n }\n\n get autoplay(): boolean {\n return this._player ? this._player.autoplay : false;\n }\n\n set autoplay(autoplay: boolean) {\n if (this._player) {\n this._player.autoplay = autoplay;\n }\n }\n\n set preload(type: PreloadType) {\n if (this._player) {\n this._player.preload = type;\n }\n }\n\n get preload(): PreloadType {\n return this._player?.preload || 'none';\n }\n\n get seekable() {\n if (!this._player) {\n return [];\n }\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 if (!this._player) {\n return [];\n }\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 ? this._player.playbackRate : 1;\n }\n\n set playbackRate(playbackRate: number) {\n if (this._player) {\n this._player.playbackRate = playbackRate;\n }\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 ? this._player.volume : 1;\n }\n\n set volume(volume: number) {\n if (this._player) {\n this._player.volume = volume;\n }\n }\n\n get muted(): boolean {\n return this._player ? this._player.muted : false;\n }\n\n set muted(muted: boolean) {\n if (this._player) {\n this._player.muted = muted;\n }\n }\n\n get seeking(): boolean {\n return this._player ? this._player.seeking : false;\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 this._player ? fromNativeMediaTrackList(this._player.audioTracks) : [];\n }\n\n get videoTracks(): MediaTrack[] {\n return this._player ? fromNativeMediaTrackList(this._player.videoTracks) : [];\n }\n\n get textTracks(): TextTrack[] {\n return this._player ? fromNativeTextTrackList(this._player.textTracks) : [];\n }\n\n get selectedTextTrack(): number | undefined {\n if (this._player) {\n return this._player.textTracks.find((textTrack: NativeTextTrack) => {\n return textTrack.mode === 'showing';\n })?.uid;\n }\n return undefined;\n }\n\n set selectedTextTrack(selectedTextTrack: number | undefined) {\n if (this._player) {\n this._player.textTracks.forEach((textTrack: NativeTextTrack) => {\n textTrack.mode = textTrack.uid === selectedTextTrack ? 'showing' : 'disabled';\n });\n }\n }\n\n get textTrackStyle(): TextTrackStyle {\n return this._player?.textTrackStyle as TextTrackStyle;\n }\n\n get selectedVideoTrack(): number | undefined {\n if (this._player) {\n return this._player.videoTracks.find((videoTrack: NativeMediaTrack) => videoTrack.enabled)?.uid;\n }\n return undefined;\n }\n\n set selectedVideoTrack(selectedVideoTrack: number | undefined) {\n if (this._player) {\n this._targetVideoQuality = undefined;\n this._player.videoTracks.forEach((videoTrack: NativeMediaTrack) => {\n videoTrack.enabled = videoTrack.uid === selectedVideoTrack;\n });\n }\n }\n\n get selectedAudioTrack(): number | undefined {\n if (this._player) {\n return this._player.audioTracks.find((audioTrack: NativeMediaTrack) => {\n return audioTrack.enabled;\n })?.uid;\n }\n return undefined;\n }\n\n set selectedAudioTrack(selectedAudioTrack: number | undefined) {\n if (this._player) {\n this._player.audioTracks.forEach((audioTrack: NativeMediaTrack) => {\n audioTrack.enabled = audioTrack.uid === selectedAudioTrack;\n });\n }\n }\n\n get targetVideoQuality(): number | number[] | undefined {\n if (this._player) {\n return this._targetVideoQuality;\n }\n return undefined;\n }\n\n set targetVideoQuality(targetVideoQuality: number | number[] | undefined) {\n if (this._player) {\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\n get currentTime(): number {\n return this._player ? 1e3 * this._player.currentTime : NaN;\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 aspectRatio(): AspectRatio {\n return AspectRatio.FIT;\n }\n\n set aspectRatio(_ratio: AspectRatio) {\n // unused\n }\n\n get duration(): number {\n return this._player ? this._player.duration * 1e3 : NaN;\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 public get version(): PlayerVersion {\n return {\n version: THEOplayerWeb.version,\n playerSuiteVersion: THEOplayerWeb.playerSuiteVersion,\n };\n }\n\n destroy(): void {\n this.dispatchEvent(new BaseEvent(PlayerEventType.DESTROY));\n this._eventForwarder?.unload();\n this._mediaSession?.destroy();\n document.removeEventListener('visibilitychange', this.onVisibilityChange);\n this._eventForwarder = undefined;\n this._mediaSession = undefined;\n this._player?.destroy();\n this._player = undefined;\n }\n\n get nativeHandle(): NativeHandleType {\n return this._player;\n }\n\n private readonly onVisibilityChange = () => {\n if (!this._player) {\n return;\n }\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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"}
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["NativePlayerEvent.ts"],"sourcesContent":["import type { MediaTrack, PlayerError, PresentationMode, PresentationModeChangeContext, TextTrack, TimeRange } from 'react-native-theoplayer';\nimport type { NativePlayerState } from '../../NativePlayerState';\n\nexport interface NativeErrorEvent {\n error: PlayerError;\n}\n\nexport interface NativeLoadedMetadataEvent {\n textTracks: TextTrack[];\n audioTracks: MediaTrack[];\n videoTracks: MediaTrack[];\n duration: number;\n selectedTextTrack: number | undefined;\n selectedVideoTrack: number | undefined;\n selectedAudioTrack: number | undefined;\n}\n\nexport interface NativeVolumeChangeEvent {\n /**\n * The player's current volume.\n */\n readonly volume: number;\n\n /**\n * The player's current mute state.\n */\n readonly muted: boolean;\n}\n\nexport interface NativeTimeUpdateEvent {\n /**\n * The player's current time, in msecs.\n */\n readonly currentTime: number;\n\n /**\n * The player's current program date time, in msecs.\n */\n readonly currentProgramDateTime?: number;\n}\n\nexport interface NativeDurationChangeEvent {\n /**\n * The player's new duration, in msecs.\n */\n readonly duration: number;\n}\n\nexport interface NativeRateChangeEvent {\n /**\n * The player's new playbackRate.\n */\n readonly playbackRate: number;\n}\n\nexport interface NativeReadyStateChangeEvent {\n /**\n * The player's new ready state.\n */\n readonly readyState: number;\n}\n\nexport interface NativePresentationModeChangeEvent {\n /**\n * The player's new presentation mode.\n */\n readonly presentationMode: PresentationMode;\n\n /**\n * The player's previous presentationMode.\n */\n readonly previousPresentationMode: PresentationMode;\n\n /**\n * The context for presentationMode change.\n */\n readonly context?: PresentationModeChangeContext;\n}\n\nexport interface NativeProgressEvent {\n /**\n * The ranges of the media resource that are seekable by the player.\n */\n readonly seekable: TimeRange[];\n\n /**\n * The ranges of the media resource that are buffered by the player.\n */\n readonly buffered: TimeRange[];\n}\n\nexport interface NativeSegmentNotFoundEvent {\n /**\n * Start time of the segment.\n */\n readonly segmentStartTime: number;\n\n /**\n * Descriptive error message.\n */\n readonly error: string;\n\n /**\n * Number of times the segment was retried.\n */\n readonly retryCount: number;\n}\n\nexport interface NativePlayerStateEvent {\n readonly state: NativePlayerState;\n}\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["NativePlayerEvent.ts"],"sourcesContent":["import type {\n MediaTrack,\n PlayerError,\n PlayerVersion,\n PresentationMode,\n PresentationModeChangeContext,\n TextTrack,\n TimeRange,\n} from 'react-native-theoplayer';\nimport type { NativePlayerState } from '../../NativePlayerState';\n\nexport interface NativeErrorEvent {\n error: PlayerError;\n}\n\nexport interface NativeLoadedMetadataEvent {\n textTracks: TextTrack[];\n audioTracks: MediaTrack[];\n videoTracks: MediaTrack[];\n duration: number;\n selectedTextTrack: number | undefined;\n selectedVideoTrack: number | undefined;\n selectedAudioTrack: number | undefined;\n}\n\nexport interface NativeVolumeChangeEvent {\n /**\n * The player's current volume.\n */\n readonly volume: number;\n\n /**\n * The player's current mute state.\n */\n readonly muted: boolean;\n}\n\nexport interface NativeTimeUpdateEvent {\n /**\n * The player's current time, in msecs.\n */\n readonly currentTime: number;\n\n /**\n * The player's current program date time, in msecs.\n */\n readonly currentProgramDateTime?: number;\n}\n\nexport interface NativeDurationChangeEvent {\n /**\n * The player's new duration, in msecs.\n */\n readonly duration: number;\n}\n\nexport interface NativeRateChangeEvent {\n /**\n * The player's new playbackRate.\n */\n readonly playbackRate: number;\n}\n\nexport interface NativeReadyStateChangeEvent {\n /**\n * The player's new ready state.\n */\n readonly readyState: number;\n}\n\nexport interface NativePresentationModeChangeEvent {\n /**\n * The player's new presentation mode.\n */\n readonly presentationMode: PresentationMode;\n\n /**\n * The player's previous presentationMode.\n */\n readonly previousPresentationMode: PresentationMode;\n\n /**\n * The context for presentationMode change.\n */\n readonly context?: PresentationModeChangeContext;\n}\n\nexport interface NativeProgressEvent {\n /**\n * The ranges of the media resource that are seekable by the player.\n */\n readonly seekable: TimeRange[];\n\n /**\n * The ranges of the media resource that are buffered by the player.\n */\n readonly buffered: TimeRange[];\n}\n\nexport interface NativeSegmentNotFoundEvent {\n /**\n * Start time of the segment.\n */\n readonly segmentStartTime: number;\n\n /**\n * Descriptive error message.\n */\n readonly error: string;\n\n /**\n * Number of times the segment was retried.\n */\n readonly retryCount: number;\n}\n\nexport interface NativePlayerStateEvent {\n readonly version: PlayerVersion;\n\n readonly state: NativePlayerState;\n}\n"],"mappings":""}