bitmovin-player-react-native 0.44.1-alpha.0 → 1.0.0-alpha.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 (497) hide show
  1. package/.eslintignore +11 -0
  2. package/.eslintrc.js +7 -0
  3. package/.gitattributes +3 -0
  4. package/.prettierignore +11 -0
  5. package/.ruby-version +1 -0
  6. package/.swiftlint.yml +171 -0
  7. package/Brewfile +2 -0
  8. package/CHANGELOG.md +627 -0
  9. package/CONTRIBUTING.md +255 -0
  10. package/TODO.md +0 -0
  11. package/android/.editorconfig +8 -0
  12. package/android/build.gradle +78 -75
  13. package/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  14. package/android/gradle/wrapper/gradle-wrapper.properties +7 -0
  15. package/android/gradle.properties +1 -0
  16. package/android/gradlew +248 -0
  17. package/android/gradlew.bat +92 -0
  18. package/android/ktlint.gradle +31 -0
  19. package/android/src/main/java/com/bitmovin/player/reactnative/ActivityLifecycleListener.kt +51 -0
  20. package/android/src/main/java/com/bitmovin/player/reactnative/BitmovinCastManagerModule.kt +32 -55
  21. package/android/src/main/java/com/bitmovin/player/reactnative/BufferModule.kt +33 -45
  22. package/android/src/main/java/com/bitmovin/player/reactnative/CustomMessageHandlerModule.kt +84 -0
  23. package/android/src/main/java/com/bitmovin/player/reactnative/DebugModule.kt +6 -14
  24. package/android/src/main/java/com/bitmovin/player/reactnative/DecoderConfigModule.kt +89 -44
  25. package/android/src/main/java/com/bitmovin/player/reactnative/DrmModule.kt +80 -99
  26. package/android/src/main/java/com/bitmovin/player/reactnative/EventSubscription.kt +22 -0
  27. package/android/src/main/java/com/bitmovin/player/reactnative/FullscreenHandlerModule.kt +100 -0
  28. package/android/src/main/java/com/bitmovin/player/reactnative/MediaSessionPlaybackManager.kt +5 -5
  29. package/android/src/main/java/com/bitmovin/player/reactnative/NetworkModule.kt +98 -56
  30. package/android/src/main/java/com/bitmovin/player/reactnative/OfflineModule.kt +132 -186
  31. package/android/src/main/java/com/bitmovin/player/reactnative/PlayerAnalyticsModule.kt +37 -36
  32. package/android/src/main/java/com/bitmovin/player/reactnative/PlayerModule.kt +252 -528
  33. package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerPackage.kt +11 -0
  34. package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerView.kt +558 -213
  35. package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerViewManager.kt +99 -286
  36. package/android/src/main/java/com/bitmovin/player/reactnative/ResultWaiter.kt +58 -0
  37. package/android/src/main/java/com/bitmovin/player/reactnative/SourceModule.kt +77 -151
  38. package/android/src/main/java/com/bitmovin/player/reactnative/Types.kt +44 -0
  39. package/android/src/main/java/com/bitmovin/player/reactnative/UuidModule.kt +12 -15
  40. package/android/src/main/java/com/bitmovin/player/reactnative/converter/JsonConverter.kt +296 -456
  41. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ListExtension.kt +89 -0
  42. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/MapExtension.kt +95 -0
  43. package/android/src/main/java/com/bitmovin/player/reactnative/offline/OfflineContentManagerBridge.kt +20 -52
  44. package/android/src/main/java/com/bitmovin/player/reactnative/ui/CustomMessageHandlerBridge.kt +10 -20
  45. package/android/src/main/java/com/bitmovin/player/reactnative/ui/FullscreenHandlerBridge.kt +4 -9
  46. package/app.plugin.js +21 -0
  47. package/build/BitmovinPlayerReactNative.types.d.ts +18 -0
  48. package/build/BitmovinPlayerReactNative.types.d.ts.map +1 -0
  49. package/build/BitmovinPlayerReactNative.types.js +2 -0
  50. package/build/BitmovinPlayerReactNative.types.js.map +1 -0
  51. package/build/adaptationConfig.d.ts +18 -0
  52. package/build/adaptationConfig.d.ts.map +1 -0
  53. package/build/adaptationConfig.js +2 -0
  54. package/build/adaptationConfig.js.map +1 -0
  55. package/build/advertising.d.ts +175 -0
  56. package/build/advertising.d.ts.map +1 -0
  57. package/build/advertising.js +37 -0
  58. package/build/advertising.js.map +1 -0
  59. package/build/analytics/config.d.ts +194 -0
  60. package/build/analytics/config.d.ts.map +1 -0
  61. package/build/analytics/config.js +2 -0
  62. package/build/analytics/config.js.map +1 -0
  63. package/build/analytics/index.d.ts +3 -0
  64. package/build/analytics/index.d.ts.map +1 -0
  65. package/build/analytics/index.js +3 -0
  66. package/build/analytics/index.js.map +1 -0
  67. package/build/analytics/player.d.ts +24 -0
  68. package/build/analytics/player.d.ts.map +1 -0
  69. package/build/analytics/player.js +30 -0
  70. package/build/analytics/player.js.map +1 -0
  71. package/build/analytics/playerAnalyticsModule.d.ts +13 -0
  72. package/build/analytics/playerAnalyticsModule.d.ts.map +1 -0
  73. package/build/analytics/playerAnalyticsModule.js +3 -0
  74. package/build/analytics/playerAnalyticsModule.js.map +1 -0
  75. package/build/audioSession.d.ts +33 -0
  76. package/build/audioSession.d.ts.map +1 -0
  77. package/build/audioSession.js +21 -0
  78. package/build/audioSession.js.map +1 -0
  79. package/build/audioTrack.d.ts +39 -0
  80. package/build/audioTrack.d.ts.map +1 -0
  81. package/build/audioTrack.js +2 -0
  82. package/build/audioTrack.js.map +1 -0
  83. package/build/bitmovinCastManager.d.ts +58 -0
  84. package/build/bitmovinCastManager.d.ts.map +1 -0
  85. package/build/bitmovinCastManager.js +64 -0
  86. package/build/bitmovinCastManager.js.map +1 -0
  87. package/build/bufferApi.d.ts +85 -0
  88. package/build/bufferApi.d.ts.map +1 -0
  89. package/build/bufferApi.js +60 -0
  90. package/build/bufferApi.js.map +1 -0
  91. package/build/bufferConfig.d.ts +42 -0
  92. package/build/bufferConfig.d.ts.map +1 -0
  93. package/build/bufferConfig.js +2 -0
  94. package/build/bufferConfig.js.map +1 -0
  95. package/build/components/PlayerView/events.d.ts +310 -0
  96. package/build/components/PlayerView/events.d.ts.map +1 -0
  97. package/build/components/PlayerView/events.js +2 -0
  98. package/build/components/PlayerView/events.js.map +1 -0
  99. package/build/components/PlayerView/index.d.ts +10 -0
  100. package/build/components/PlayerView/index.d.ts.map +1 -0
  101. package/build/components/PlayerView/index.js +72 -0
  102. package/build/components/PlayerView/index.js.map +1 -0
  103. package/build/components/PlayerView/native.d.ts +30 -0
  104. package/build/components/PlayerView/native.d.ts.map +1 -0
  105. package/build/components/PlayerView/native.js +6 -0
  106. package/build/components/PlayerView/native.js.map +1 -0
  107. package/build/components/PlayerView/nativeEvents.d.ts +437 -0
  108. package/build/components/PlayerView/nativeEvents.d.ts.map +1 -0
  109. package/build/components/PlayerView/nativeEvents.js +2 -0
  110. package/build/components/PlayerView/nativeEvents.js.map +1 -0
  111. package/build/components/PlayerView/pictureInPictureConfig.d.ts +22 -0
  112. package/build/components/PlayerView/pictureInPictureConfig.d.ts.map +1 -0
  113. package/build/components/PlayerView/pictureInPictureConfig.js +2 -0
  114. package/build/components/PlayerView/pictureInPictureConfig.js.map +1 -0
  115. package/build/components/PlayerView/playerViewConfig.d.ts +111 -0
  116. package/build/components/PlayerView/playerViewConfig.d.ts.map +1 -0
  117. package/build/components/PlayerView/playerViewConfig.js +51 -0
  118. package/build/components/PlayerView/playerViewConfig.js.map +1 -0
  119. package/build/components/PlayerView/properties.d.ts +61 -0
  120. package/build/components/PlayerView/properties.d.ts.map +1 -0
  121. package/build/components/PlayerView/properties.js +2 -0
  122. package/build/components/PlayerView/properties.js.map +1 -0
  123. package/build/components/index.d.ts +5 -0
  124. package/build/components/index.d.ts.map +1 -0
  125. package/build/components/index.js +5 -0
  126. package/build/components/index.js.map +1 -0
  127. package/build/debug.d.ts +46 -0
  128. package/build/debug.d.ts.map +1 -0
  129. package/build/debug.js +52 -0
  130. package/build/debug.js.map +1 -0
  131. package/build/decoder/decoderConfig.d.ts +96 -0
  132. package/build/decoder/decoderConfig.d.ts.map +1 -0
  133. package/build/decoder/decoderConfig.js +6 -0
  134. package/build/decoder/decoderConfig.js.map +1 -0
  135. package/build/decoder/decoderConfigModule.d.ts +14 -0
  136. package/build/decoder/decoderConfigModule.d.ts.map +1 -0
  137. package/build/decoder/decoderConfigModule.js +31 -0
  138. package/build/decoder/decoderConfigModule.js.map +1 -0
  139. package/build/decoder/index.d.ts +26 -0
  140. package/build/decoder/index.d.ts.map +1 -0
  141. package/build/decoder/index.js +50 -0
  142. package/build/decoder/index.js.map +1 -0
  143. package/build/drm/drmModule.d.ts +55 -0
  144. package/build/drm/drmModule.d.ts.map +1 -0
  145. package/build/drm/drmModule.js +3 -0
  146. package/build/drm/drmModule.js.map +1 -0
  147. package/build/drm/fairplayConfig.d.ts +91 -0
  148. package/build/drm/fairplayConfig.d.ts.map +1 -0
  149. package/build/drm/fairplayConfig.js +2 -0
  150. package/build/drm/fairplayConfig.js.map +1 -0
  151. package/build/drm/index.d.ts +112 -0
  152. package/build/drm/index.d.ts.map +1 -0
  153. package/build/drm/index.js +191 -0
  154. package/build/drm/index.js.map +1 -0
  155. package/build/drm/widevineConfig.d.ts +58 -0
  156. package/build/drm/widevineConfig.d.ts.map +1 -0
  157. package/build/drm/widevineConfig.js +2 -0
  158. package/build/drm/widevineConfig.js.map +1 -0
  159. package/build/events.d.ts +692 -0
  160. package/build/events.d.ts.map +1 -0
  161. package/build/events.js +2 -0
  162. package/build/events.js.map +1 -0
  163. package/build/hooks/index.d.ts +2 -0
  164. package/build/hooks/index.d.ts.map +1 -0
  165. package/build/hooks/index.js +2 -0
  166. package/build/hooks/index.js.map +1 -0
  167. package/build/hooks/usePlayer.d.ts +8 -0
  168. package/build/hooks/usePlayer.d.ts.map +1 -0
  169. package/build/hooks/usePlayer.js +10 -0
  170. package/build/hooks/usePlayer.js.map +1 -0
  171. package/build/hooks/useProxy.d.ts +18 -0
  172. package/build/hooks/useProxy.d.ts.map +1 -0
  173. package/build/hooks/useProxy.js +16 -0
  174. package/build/hooks/useProxy.js.map +1 -0
  175. package/build/index.d.ts +32 -0
  176. package/build/index.d.ts.map +1 -0
  177. package/build/index.js +32 -0
  178. package/build/index.js.map +1 -0
  179. package/build/liveConfig.d.ts +13 -0
  180. package/build/liveConfig.d.ts.map +1 -0
  181. package/build/liveConfig.js +2 -0
  182. package/build/liveConfig.js.map +1 -0
  183. package/build/media.d.ts +85 -0
  184. package/build/media.d.ts.map +1 -0
  185. package/build/media.js +2 -0
  186. package/build/media.js.map +1 -0
  187. package/build/mediaControlConfig.d.ts +62 -0
  188. package/build/mediaControlConfig.d.ts.map +1 -0
  189. package/build/mediaControlConfig.js +2 -0
  190. package/build/mediaControlConfig.js.map +1 -0
  191. package/build/mediaTrackRole.d.ts +28 -0
  192. package/build/mediaTrackRole.d.ts.map +1 -0
  193. package/build/mediaTrackRole.js +2 -0
  194. package/build/mediaTrackRole.js.map +1 -0
  195. package/build/modules/AudioSessionModule.d.ts +8 -0
  196. package/build/modules/AudioSessionModule.d.ts.map +1 -0
  197. package/build/modules/AudioSessionModule.js +7 -0
  198. package/build/modules/AudioSessionModule.js.map +1 -0
  199. package/build/modules/BitmovinCastManagerModule.d.ts +11 -0
  200. package/build/modules/BitmovinCastManagerModule.d.ts.map +1 -0
  201. package/build/modules/BitmovinCastManagerModule.js +3 -0
  202. package/build/modules/BitmovinCastManagerModule.js.map +1 -0
  203. package/build/modules/BufferModule.d.ts +16 -0
  204. package/build/modules/BufferModule.d.ts.map +1 -0
  205. package/build/modules/BufferModule.js +3 -0
  206. package/build/modules/BufferModule.js.map +1 -0
  207. package/build/modules/DebugModule.d.ts +8 -0
  208. package/build/modules/DebugModule.d.ts.map +1 -0
  209. package/build/modules/DebugModule.js +3 -0
  210. package/build/modules/DebugModule.js.map +1 -0
  211. package/build/modules/PlayerModule.d.ts +188 -0
  212. package/build/modules/PlayerModule.d.ts.map +1 -0
  213. package/build/modules/PlayerModule.js +3 -0
  214. package/build/modules/PlayerModule.js.map +1 -0
  215. package/build/modules/SourceModule.d.ts +51 -0
  216. package/build/modules/SourceModule.d.ts.map +1 -0
  217. package/build/modules/SourceModule.js +3 -0
  218. package/build/modules/SourceModule.js.map +1 -0
  219. package/build/modules/UuidModule.d.ts +8 -0
  220. package/build/modules/UuidModule.d.ts.map +1 -0
  221. package/build/modules/UuidModule.js +3 -0
  222. package/build/modules/UuidModule.js.map +1 -0
  223. package/build/nativeInstance.d.ts +49 -0
  224. package/build/nativeInstance.d.ts.map +1 -0
  225. package/build/nativeInstance.js +20 -0
  226. package/build/nativeInstance.js.map +1 -0
  227. package/build/network/index.d.ts +50 -0
  228. package/build/network/index.d.ts.map +1 -0
  229. package/build/network/index.js +102 -0
  230. package/build/network/index.js.map +1 -0
  231. package/build/network/networkConfig.d.ts +151 -0
  232. package/build/network/networkConfig.d.ts.map +1 -0
  233. package/build/network/networkConfig.js +21 -0
  234. package/build/network/networkConfig.js.map +1 -0
  235. package/build/network/networkModule.d.ts +29 -0
  236. package/build/network/networkModule.d.ts.map +1 -0
  237. package/build/network/networkModule.js +3 -0
  238. package/build/network/networkModule.js.map +1 -0
  239. package/build/offline/index.d.ts +8 -0
  240. package/build/offline/index.d.ts.map +1 -0
  241. package/build/offline/index.js +8 -0
  242. package/build/offline/index.js.map +1 -0
  243. package/build/offline/offlineContentConfig.d.ts +18 -0
  244. package/build/offline/offlineContentConfig.d.ts.map +1 -0
  245. package/build/offline/offlineContentConfig.js +2 -0
  246. package/build/offline/offlineContentConfig.js.map +1 -0
  247. package/build/offline/offlineContentManager.d.ts +90 -0
  248. package/build/offline/offlineContentManager.d.ts.map +1 -0
  249. package/build/offline/offlineContentManager.js +177 -0
  250. package/build/offline/offlineContentManager.js.map +1 -0
  251. package/build/offline/offlineContentManagerListener.d.ts +174 -0
  252. package/build/offline/offlineContentManagerListener.d.ts.map +1 -0
  253. package/build/offline/offlineContentManagerListener.js +17 -0
  254. package/build/offline/offlineContentManagerListener.js.map +1 -0
  255. package/build/offline/offlineContentOptions.d.ts +29 -0
  256. package/build/offline/offlineContentOptions.d.ts.map +1 -0
  257. package/build/offline/offlineContentOptions.js +2 -0
  258. package/build/offline/offlineContentOptions.js.map +1 -0
  259. package/build/offline/offlineDownloadRequest.d.ts +19 -0
  260. package/build/offline/offlineDownloadRequest.d.ts.map +1 -0
  261. package/build/offline/offlineDownloadRequest.js +2 -0
  262. package/build/offline/offlineDownloadRequest.js.map +1 -0
  263. package/build/offline/offlineModule.d.ts +32 -0
  264. package/build/offline/offlineModule.d.ts.map +1 -0
  265. package/build/offline/offlineModule.js +3 -0
  266. package/build/offline/offlineModule.js.map +1 -0
  267. package/build/offline/offlineSourceOptions.d.ts +12 -0
  268. package/build/offline/offlineSourceOptions.d.ts.map +1 -0
  269. package/build/offline/offlineSourceOptions.js +2 -0
  270. package/build/offline/offlineSourceOptions.js.map +1 -0
  271. package/build/offline/offlineState.d.ts +23 -0
  272. package/build/offline/offlineState.d.ts.map +1 -0
  273. package/build/offline/offlineState.js +24 -0
  274. package/build/offline/offlineState.js.map +1 -0
  275. package/build/playbackConfig.d.ts +88 -0
  276. package/build/playbackConfig.d.ts.map +1 -0
  277. package/build/playbackConfig.js +2 -0
  278. package/build/playbackConfig.js.map +1 -0
  279. package/build/player.d.ts +308 -0
  280. package/build/player.d.ts.map +1 -0
  281. package/build/player.js +445 -0
  282. package/build/player.js.map +1 -0
  283. package/build/playerConfig.d.ts +83 -0
  284. package/build/playerConfig.d.ts.map +1 -0
  285. package/build/playerConfig.js +2 -0
  286. package/build/playerConfig.js.map +1 -0
  287. package/build/remoteControlConfig.d.ts +38 -0
  288. package/build/remoteControlConfig.d.ts.map +1 -0
  289. package/build/remoteControlConfig.js +2 -0
  290. package/build/remoteControlConfig.js.map +1 -0
  291. package/build/source.d.ts +216 -0
  292. package/build/source.d.ts.map +1 -0
  293. package/build/source.js +167 -0
  294. package/build/source.js.map +1 -0
  295. package/build/styleConfig.d.ts +120 -0
  296. package/build/styleConfig.d.ts.map +1 -0
  297. package/build/styleConfig.js +38 -0
  298. package/build/styleConfig.js.map +1 -0
  299. package/build/subtitleFormat.d.ts +27 -0
  300. package/build/subtitleFormat.d.ts.map +1 -0
  301. package/build/subtitleFormat.js +28 -0
  302. package/build/subtitleFormat.js.map +1 -0
  303. package/build/subtitleTrack.d.ts +55 -0
  304. package/build/subtitleTrack.d.ts.map +1 -0
  305. package/build/subtitleTrack.js +2 -0
  306. package/build/subtitleTrack.js.map +1 -0
  307. package/build/thumbnail.d.ts +38 -0
  308. package/build/thumbnail.d.ts.map +1 -0
  309. package/build/thumbnail.js +2 -0
  310. package/build/thumbnail.js.map +1 -0
  311. package/build/tweaksConfig.d.ts +197 -0
  312. package/build/tweaksConfig.d.ts.map +1 -0
  313. package/build/tweaksConfig.js +25 -0
  314. package/build/tweaksConfig.js.map +1 -0
  315. package/build/ui/customMessageHandlerModule.d.ts +27 -0
  316. package/build/ui/customMessageHandlerModule.d.ts.map +1 -0
  317. package/build/ui/customMessageHandlerModule.js +3 -0
  318. package/build/ui/customMessageHandlerModule.js.map +1 -0
  319. package/build/ui/custommessagehandler.d.ts +56 -0
  320. package/build/ui/custommessagehandler.d.ts.map +1 -0
  321. package/build/ui/custommessagehandler.js +54 -0
  322. package/build/ui/custommessagehandler.js.map +1 -0
  323. package/build/ui/custommessagehandlerbridge.d.ts +33 -0
  324. package/build/ui/custommessagehandlerbridge.d.ts.map +1 -0
  325. package/build/ui/custommessagehandlerbridge.js +72 -0
  326. package/build/ui/custommessagehandlerbridge.js.map +1 -0
  327. package/build/ui/custommessagesender.d.ts +5 -0
  328. package/build/ui/custommessagesender.d.ts.map +1 -0
  329. package/build/ui/custommessagesender.js +2 -0
  330. package/build/ui/custommessagesender.js.map +1 -0
  331. package/build/ui/fullscreenHandlerModule.d.ts +20 -0
  332. package/build/ui/fullscreenHandlerModule.d.ts.map +1 -0
  333. package/build/ui/fullscreenHandlerModule.js +3 -0
  334. package/build/ui/fullscreenHandlerModule.js.map +1 -0
  335. package/build/ui/fullscreenhandler.d.ts +18 -0
  336. package/build/ui/fullscreenhandler.d.ts.map +1 -0
  337. package/build/ui/fullscreenhandler.js +2 -0
  338. package/build/ui/fullscreenhandler.js.map +1 -0
  339. package/build/ui/fullscreenhandlerbridge.d.ts +26 -0
  340. package/build/ui/fullscreenhandlerbridge.d.ts.map +1 -0
  341. package/build/ui/fullscreenhandlerbridge.js +67 -0
  342. package/build/ui/fullscreenhandlerbridge.js.map +1 -0
  343. package/build/ui/index.d.ts +3 -0
  344. package/build/ui/index.d.ts.map +1 -0
  345. package/build/ui/index.js +3 -0
  346. package/build/ui/index.js.map +1 -0
  347. package/expo-module.config.json +40 -0
  348. package/ios/AppLifecycleDelegate.swift +25 -0
  349. package/ios/AudioSessionModule.swift +14 -40
  350. package/ios/BitmovinCastManagerModule.swift +30 -69
  351. package/ios/BufferModule.swift +26 -62
  352. package/ios/CustomMessageHandlerBridge.swift +11 -18
  353. package/ios/CustomMessageHandlerModule.swift +61 -63
  354. package/ios/DebugModule.swift +6 -27
  355. package/ios/DrmModule.swift +105 -379
  356. package/ios/Event+JSON.swift +1 -0
  357. package/ios/FullscreenHandlerBridge.swift +12 -5
  358. package/ios/FullscreenHandlerModule.swift +73 -57
  359. package/ios/LockedBox.swift +21 -0
  360. package/ios/ModuleRegistry+Generics.swift +11 -0
  361. package/ios/NetworkModule.swift +78 -82
  362. package/ios/OfflineContentManagerBridge.swift +11 -38
  363. package/ios/OfflineModule.swift +136 -454
  364. package/ios/PlayerAnalyticsModule.swift +24 -52
  365. package/ios/PlayerModule.swift +192 -770
  366. package/ios/RCTConvert+BitmovinPlayer.swift +38 -312
  367. package/ios/RNBitmovinPlayer.h +1 -8
  368. package/ios/RNBitmovinPlayer.podspec +47 -0
  369. package/ios/RNPlayerView.swift +600 -77
  370. package/ios/RNPlayerViewManager.swift +96 -210
  371. package/ios/Registry.swift +2 -2
  372. package/ios/ResultWaiter.swift +66 -0
  373. package/ios/SourceModule.swift +104 -223
  374. package/ios/UuidModule.swift +9 -18
  375. package/package.json +67 -71
  376. package/plugin/build/FeatureFlags.d.ts +24 -0
  377. package/plugin/build/FeatureFlags.js +2 -0
  378. package/plugin/build/index.d.ts +7 -0
  379. package/plugin/build/index.js +10 -0
  380. package/plugin/build/withAppGradleDependencies.d.ts +7 -0
  381. package/plugin/build/withAppGradleDependencies.js +49 -0
  382. package/plugin/build/withBitmovinAndroidConfig.d.ts +7 -0
  383. package/plugin/build/withBitmovinAndroidConfig.js +159 -0
  384. package/plugin/build/withBitmovinConfig.d.ts +7 -0
  385. package/plugin/build/withBitmovinConfig.js +21 -0
  386. package/plugin/build/withBitmovinIosConfig.d.ts +7 -0
  387. package/plugin/build/withBitmovinIosConfig.js +53 -0
  388. package/plugin/src/FeatureFlags.ts +21 -0
  389. package/plugin/src/index.ts +9 -0
  390. package/plugin/src/withAppGradleDependencies.ts +80 -0
  391. package/plugin/src/withBitmovinAndroidConfig.ts +224 -0
  392. package/plugin/src/withBitmovinConfig.ts +24 -0
  393. package/plugin/src/withBitmovinIosConfig.ts +71 -0
  394. package/plugin/tsconfig.json +9 -0
  395. package/plugin/tsconfig.tsbuildinfo +1 -0
  396. package/prettier.config.js +7 -0
  397. package/scripts/format-android.sh +2 -0
  398. package/scripts/format-swift.sh +3 -0
  399. package/scripts/lint-android.sh +2 -0
  400. package/scripts/lint-swift.sh +3 -0
  401. package/scripts/pre-commit.sh +14 -0
  402. package/scripts/setup-hooks.sh +58 -0
  403. package/src/BitmovinPlayerReactNative.types.ts +19 -0
  404. package/src/adaptationConfig.ts +1 -1
  405. package/src/advertising.ts +1 -1
  406. package/src/analytics/config.ts +4 -4
  407. package/src/analytics/player.ts +4 -6
  408. package/src/analytics/playerAnalyticsModule.ts +19 -0
  409. package/src/audioSession.ts +4 -6
  410. package/src/audioTrack.ts +1 -1
  411. package/src/bitmovinCastManager.ts +14 -10
  412. package/src/bufferApi.ts +1 -3
  413. package/src/bufferConfig.ts +2 -2
  414. package/src/components/PlayerView/events.ts +92 -94
  415. package/src/components/PlayerView/index.tsx +109 -159
  416. package/src/components/PlayerView/native.ts +24 -11
  417. package/src/components/PlayerView/nativeEvents.ts +113 -94
  418. package/src/components/PlayerView/pictureInPictureConfig.ts +1 -1
  419. package/src/components/PlayerView/playerViewConfig.ts +4 -8
  420. package/src/components/PlayerView/properties.ts +23 -22
  421. package/src/debug.ts +1 -3
  422. package/src/decoder/decoderConfig.ts +3 -3
  423. package/src/decoder/decoderConfigModule.ts +62 -0
  424. package/src/decoder/index.ts +32 -16
  425. package/src/drm/drmModule.ts +84 -0
  426. package/src/drm/fairplayConfig.ts +1 -1
  427. package/src/drm/index.ts +130 -40
  428. package/src/drm/widevineConfig.ts +5 -5
  429. package/src/events.ts +47 -41
  430. package/src/hooks/useProxy.ts +13 -20
  431. package/src/mediaControlConfig.ts +1 -1
  432. package/src/modules/AudioSessionModule.ts +13 -0
  433. package/src/modules/BitmovinCastManagerModule.ts +14 -0
  434. package/src/modules/BufferModule.ts +18 -0
  435. package/src/modules/DebugModule.ts +9 -0
  436. package/src/modules/PlayerModule.ts +251 -0
  437. package/src/modules/SourceModule.ts +74 -0
  438. package/src/modules/UuidModule.ts +9 -0
  439. package/src/nativeInstance.ts +3 -3
  440. package/src/network/index.ts +42 -15
  441. package/src/network/networkConfig.ts +3 -3
  442. package/src/network/networkModule.ts +51 -0
  443. package/src/offline/offlineContentConfig.ts +1 -1
  444. package/src/offline/offlineContentManager.ts +15 -50
  445. package/src/offline/offlineContentManagerListener.ts +20 -23
  446. package/src/offline/offlineContentOptions.ts +2 -2
  447. package/src/offline/offlineDownloadRequest.ts +1 -1
  448. package/src/offline/offlineModule.ts +46 -0
  449. package/src/offline/offlineSourceOptions.ts +2 -2
  450. package/src/offline/offlineState.ts +1 -1
  451. package/src/playbackConfig.ts +5 -6
  452. package/src/player.ts +53 -48
  453. package/src/source.ts +15 -14
  454. package/src/styleConfig.ts +5 -5
  455. package/src/subtitleFormat.ts +5 -5
  456. package/src/subtitleTrack.ts +1 -1
  457. package/src/tweaksConfig.ts +16 -16
  458. package/src/ui/customMessageHandlerModule.ts +46 -0
  459. package/src/ui/custommessagehandlerbridge.ts +45 -18
  460. package/src/ui/fullscreenHandlerModule.ts +35 -0
  461. package/src/ui/fullscreenhandlerbridge.ts +35 -15
  462. package/tsconfig.json +9 -0
  463. package/typedoc.json +23 -0
  464. package/RNBitmovinPlayer.podspec +0 -26
  465. package/android/src/main/java/com/bitmovin/player/reactnative/BitmovinBaseModule.kt +0 -114
  466. package/android/src/main/java/com/bitmovin/player/reactnative/EventRelay.kt +0 -47
  467. package/android/src/main/java/com/bitmovin/player/reactnative/RNPlayerViewPackage.kt +0 -48
  468. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReactContextExtension.kt +0 -24
  469. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableArray.kt +0 -20
  470. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableMap.kt +0 -15
  471. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/ReadableMapExtension.kt +0 -57
  472. package/android/src/main/java/com/bitmovin/player/reactnative/extensions/WritableMap.kt +0 -27
  473. package/android/src/main/java/com/bitmovin/player/reactnative/ui/CustomMessageHandlerModule.kt +0 -86
  474. package/android/src/main/java/com/bitmovin/player/reactnative/ui/FullscreenHandlerModule.kt +0 -78
  475. package/ios/AudioSessionModule.m +0 -10
  476. package/ios/BitmovinCastManagerModule.m +0 -14
  477. package/ios/BufferModule.m +0 -8
  478. package/ios/CustomMessageHandlerModule.m +0 -10
  479. package/ios/DebugModule.m +0 -7
  480. package/ios/DrmModule.m +0 -16
  481. package/ios/FullscreenHandlerModule.m +0 -10
  482. package/ios/NetworkModule.m +0 -10
  483. package/ios/OfflineModule.m +0 -19
  484. package/ios/PlayerAnalyticsModule.m +0 -8
  485. package/ios/PlayerModule.m +0 -130
  486. package/ios/PreprocessHttpRequestDelegateBridge.swift +0 -30
  487. package/ios/RCTBridge+Generics.swift +0 -6
  488. package/ios/RNBitmovinPlayer.xcodeproj/project.pbxproj +0 -303
  489. package/ios/RNPlayerView+PlayerListener.swift +0 -229
  490. package/ios/RNPlayerView+UserInterfaceListener.swift +0 -35
  491. package/ios/RNPlayerViewManager.m +0 -79
  492. package/ios/SourceModule.m +0 -42
  493. package/ios/UuidModule.m +0 -9
  494. package/lib/index.d.mts +0 -4303
  495. package/lib/index.d.ts +0 -4303
  496. package/lib/index.js +0 -1895
  497. package/lib/index.mjs +0 -1836
@@ -0,0 +1,72 @@
1
+ import React, { useRef, useEffect, useState } from 'react';
2
+ import { StyleSheet } from 'react-native';
3
+ import { useKeepAwake } from 'expo-keep-awake';
4
+ import { NativePlayerView } from './native';
5
+ import { useProxy } from '../../hooks/useProxy';
6
+ import { FullscreenHandlerBridge } from '../../ui/fullscreenhandlerbridge';
7
+ import { CustomMessageHandlerBridge } from '../../ui/custommessagehandlerbridge';
8
+ /**
9
+ * Base style that initializes the native view frame when no width/height prop has been set.
10
+ */
11
+ const styles = StyleSheet.create({
12
+ baseStyle: {
13
+ alignSelf: 'stretch',
14
+ },
15
+ });
16
+ /**
17
+ * Component that provides the Bitmovin Player UI and default UI handling to an attached `Player` instance.
18
+ * This component needs a `Player` instance to work properly so make sure one is passed to it as a prop.
19
+ *
20
+ * @param options configuration options
21
+ */
22
+ export function PlayerView({ viewRef, style, player, config, fullscreenHandler, customMessageHandler, isFullscreenRequested = false, scalingMode, isPictureInPictureRequested = false, ...props }) {
23
+ // Keep the device awake while the PlayerView is mounted
24
+ useKeepAwake();
25
+ const nativeView = useRef(viewRef?.current || null);
26
+ // Native events proxy helper.
27
+ const proxy = useProxy(nativeView);
28
+ // Style resulting from merging `baseStyle` and `props.style`.
29
+ const nativeViewStyle = StyleSheet.flatten([styles.baseStyle, style]);
30
+ const fullscreenBridge = useRef(undefined);
31
+ if (fullscreenHandler && !fullscreenBridge.current) {
32
+ fullscreenBridge.current = new FullscreenHandlerBridge();
33
+ }
34
+ if (fullscreenBridge.current) {
35
+ fullscreenBridge.current.setFullscreenHandler(fullscreenHandler);
36
+ }
37
+ const customMessageHandlerBridge = useRef(undefined);
38
+ if (customMessageHandler && !customMessageHandlerBridge.current) {
39
+ customMessageHandlerBridge.current = new CustomMessageHandlerBridge();
40
+ }
41
+ if (customMessageHandlerBridge.current && customMessageHandler) {
42
+ customMessageHandlerBridge.current.setCustomMessageHandler(customMessageHandler);
43
+ }
44
+ const nativePlayerViewConfig = {
45
+ playerId: player.nativeId,
46
+ customMessageHandlerBridgeId: customMessageHandlerBridge.current?.nativeId,
47
+ enableBackgroundPlayback: player.config?.playbackConfig?.isBackgroundPlaybackEnabled,
48
+ isPictureInPictureEnabledOnPlayer: player.config?.playbackConfig?.isPictureInPictureEnabled,
49
+ userInterfaceTypeName: player.config?.styleConfig?.userInterfaceType,
50
+ playerViewConfig: config,
51
+ };
52
+ const [isPlayerInitialized, setIsPlayerInitialized] = useState(false);
53
+ useEffect(() => {
54
+ player.initialize().then(() => {
55
+ setIsPlayerInitialized(true);
56
+ // call attach player on native view if switched to AsyncFunction for RNPlayerViewExpo
57
+ });
58
+ return () => {
59
+ fullscreenBridge.current?.destroy();
60
+ fullscreenBridge.current = undefined;
61
+ customMessageHandlerBridge.current?.destroy();
62
+ customMessageHandlerBridge.current = undefined;
63
+ };
64
+ }, [player, fullscreenBridge, customMessageHandlerBridge]);
65
+ useEffect(() => {
66
+ if (viewRef) {
67
+ viewRef.current = nativeView.current;
68
+ }
69
+ }, [viewRef, nativeView]);
70
+ return (isPlayerInitialized && (<NativePlayerView ref={nativeView} style={nativeViewStyle} config={nativePlayerViewConfig} isFullscreenRequested={isFullscreenRequested} isPictureInPictureRequested={isPictureInPictureRequested} scalingMode={scalingMode} fullscreenBridgeId={fullscreenBridge.current?.nativeId} onBmpAdBreakFinished={proxy(props.onAdBreakFinished)} onBmpAdBreakStarted={proxy(props.onAdBreakStarted)} onBmpAdClicked={proxy(props.onAdClicked)} onBmpAdError={proxy(props.onAdError)} onBmpAdFinished={proxy(props.onAdFinished)} onBmpAdManifestLoad={proxy(props.onAdManifestLoad)} onBmpAdManifestLoaded={proxy(props.onAdManifestLoaded)} onBmpAdQuartile={proxy(props.onAdQuartile)} onBmpAdScheduled={proxy(props.onAdScheduled)} onBmpAdSkipped={proxy(props.onAdSkipped)} onBmpAdStarted={proxy(props.onAdStarted)} onBmpCastAvailable={proxy(props.onCastAvailable)} onBmpCastPaused={proxy(props.onCastPaused)} onBmpCastPlaybackFinished={proxy(props.onCastPlaybackFinished)} onBmpCastPlaying={proxy(props.onCastPlaying)} onBmpCastStarted={proxy(props.onCastStarted)} onBmpCastStart={proxy(props.onCastStart)} onBmpCastStopped={proxy(props.onCastStopped)} onBmpCastTimeUpdated={proxy(props.onCastTimeUpdated)} onBmpCastWaitingForDevice={proxy(props.onCastWaitingForDevice)} onBmpCueEnter={proxy(props.onCueEnter)} onBmpCueExit={proxy(props.onCueExit)} onBmpDestroy={proxy(props.onDestroy)} onBmpEvent={proxy(props.onEvent)} onBmpFullscreenEnabled={proxy(props.onFullscreenEnabled)} onBmpFullscreenDisabled={proxy(props.onFullscreenDisabled)} onBmpFullscreenEnter={proxy(props.onFullscreenEnter)} onBmpFullscreenExit={proxy(props.onFullscreenExit)} onBmpMuted={proxy(props.onMuted)} onBmpPaused={proxy(props.onPaused)} onBmpPictureInPictureAvailabilityChanged={proxy(props.onPictureInPictureAvailabilityChanged)} onBmpPictureInPictureEnter={proxy(props.onPictureInPictureEnter)} onBmpPictureInPictureEntered={proxy(props.onPictureInPictureEntered)} onBmpPictureInPictureExit={proxy(props.onPictureInPictureExit)} onBmpPictureInPictureExited={proxy(props.onPictureInPictureExited)} onBmpPlay={proxy(props.onPlay)} onBmpPlaybackFinished={proxy(props.onPlaybackFinished)} onBmpPlaybackSpeedChanged={proxy(props.onPlaybackSpeedChanged)} onBmpPlayerActive={proxy(props.onPlayerActive)} onBmpPlayerError={proxy(props.onPlayerError)} onBmpPlayerWarning={proxy(props.onPlayerWarning)} onBmpPlaying={proxy(props.onPlaying)} onBmpReady={proxy(props.onReady)} onBmpSeek={proxy(props.onSeek)} onBmpSeeked={proxy(props.onSeeked)} onBmpTimeShift={proxy(props.onTimeShift)} onBmpTimeShifted={proxy(props.onTimeShifted)} onBmpStallStarted={proxy(props.onStallStarted)} onBmpStallEnded={proxy(props.onStallEnded)} onBmpSourceError={proxy(props.onSourceError)} onBmpSourceLoad={proxy(props.onSourceLoad)} onBmpSourceLoaded={proxy(props.onSourceLoaded)} onBmpSourceUnloaded={proxy(props.onSourceUnloaded)} onBmpSourceWarning={proxy(props.onSourceWarning)} onBmpAudioAdded={proxy(props.onAudioAdded)} onBmpAudioChanged={proxy(props.onAudioChanged)} onBmpAudioRemoved={proxy(props.onAudioRemoved)} onBmpSubtitleAdded={proxy(props.onSubtitleAdded)} onBmpSubtitleChanged={proxy(props.onSubtitleChanged)} onBmpSubtitleRemoved={proxy(props.onSubtitleRemoved)} onBmpTimeChanged={proxy(props.onTimeChanged)} onBmpUnmuted={proxy(props.onUnmuted)} onBmpVideoDownloadQualityChanged={proxy(props.onVideoDownloadQualityChanged)} onBmpVideoPlaybackQualityChanged={proxy(props.onVideoPlaybackQualityChanged)} onBmpDownloadFinished={proxy(props.onDownloadFinished)}/>));
71
+ }
72
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/PlayerView/index.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { useRef, useEffect, useState } from 'react';\nimport { StyleSheet } from 'react-native';\nimport { useKeepAwake } from 'expo-keep-awake';\nimport { NativePlayerView, NativePlayerViewConfig } from './native';\nimport { useProxy } from '../../hooks/useProxy';\nimport { FullscreenHandlerBridge } from '../../ui/fullscreenhandlerbridge';\nimport { CustomMessageHandlerBridge } from '../../ui/custommessagehandlerbridge';\nimport { PlayerViewProps } from './properties';\n\n/**\n * Base style that initializes the native view frame when no width/height prop has been set.\n */\nconst styles = StyleSheet.create({\n baseStyle: {\n alignSelf: 'stretch',\n },\n});\n\n/**\n * Component that provides the Bitmovin Player UI and default UI handling to an attached `Player` instance.\n * This component needs a `Player` instance to work properly so make sure one is passed to it as a prop.\n *\n * @param options configuration options\n */\nexport function PlayerView({\n viewRef,\n style,\n player,\n config,\n fullscreenHandler,\n customMessageHandler,\n isFullscreenRequested = false,\n scalingMode,\n isPictureInPictureRequested = false,\n ...props\n}: PlayerViewProps) {\n // Keep the device awake while the PlayerView is mounted\n useKeepAwake();\n\n const nativeView = useRef(viewRef?.current || null);\n\n // Native events proxy helper.\n const proxy = useProxy(nativeView);\n // Style resulting from merging `baseStyle` and `props.style`.\n const nativeViewStyle = StyleSheet.flatten([styles.baseStyle, style]);\n\n const fullscreenBridge: React.RefObject<FullscreenHandlerBridge | undefined> =\n useRef(undefined);\n if (fullscreenHandler && !fullscreenBridge.current) {\n fullscreenBridge.current = new FullscreenHandlerBridge();\n }\n if (fullscreenBridge.current) {\n fullscreenBridge.current.setFullscreenHandler(fullscreenHandler);\n }\n\n const customMessageHandlerBridge: React.RefObject<\n CustomMessageHandlerBridge | undefined\n > = useRef(undefined);\n if (customMessageHandler && !customMessageHandlerBridge.current) {\n customMessageHandlerBridge.current = new CustomMessageHandlerBridge();\n }\n if (customMessageHandlerBridge.current && customMessageHandler) {\n customMessageHandlerBridge.current.setCustomMessageHandler(\n customMessageHandler\n );\n }\n\n const nativePlayerViewConfig: NativePlayerViewConfig = {\n playerId: player.nativeId,\n customMessageHandlerBridgeId: customMessageHandlerBridge.current?.nativeId,\n enableBackgroundPlayback:\n player.config?.playbackConfig?.isBackgroundPlaybackEnabled,\n isPictureInPictureEnabledOnPlayer:\n player.config?.playbackConfig?.isPictureInPictureEnabled,\n userInterfaceTypeName: player.config?.styleConfig?.userInterfaceType,\n playerViewConfig: config,\n };\n\n const [isPlayerInitialized, setIsPlayerInitialized] = useState(false);\n\n useEffect(() => {\n player.initialize().then(() => {\n setIsPlayerInitialized(true);\n // call attach player on native view if switched to AsyncFunction for RNPlayerViewExpo\n });\n\n return () => {\n fullscreenBridge.current?.destroy();\n fullscreenBridge.current = undefined;\n customMessageHandlerBridge.current?.destroy();\n customMessageHandlerBridge.current = undefined;\n };\n }, [player, fullscreenBridge, customMessageHandlerBridge]);\n\n useEffect(() => {\n if (viewRef) {\n viewRef.current = nativeView.current;\n }\n }, [viewRef, nativeView]);\n\n return (\n isPlayerInitialized && (\n <NativePlayerView\n ref={nativeView}\n style={nativeViewStyle}\n config={nativePlayerViewConfig}\n isFullscreenRequested={isFullscreenRequested}\n isPictureInPictureRequested={isPictureInPictureRequested}\n scalingMode={scalingMode}\n fullscreenBridgeId={fullscreenBridge.current?.nativeId}\n onBmpAdBreakFinished={proxy(props.onAdBreakFinished)}\n onBmpAdBreakStarted={proxy(props.onAdBreakStarted)}\n onBmpAdClicked={proxy(props.onAdClicked)}\n onBmpAdError={proxy(props.onAdError)}\n onBmpAdFinished={proxy(props.onAdFinished)}\n onBmpAdManifestLoad={proxy(props.onAdManifestLoad)}\n onBmpAdManifestLoaded={proxy(props.onAdManifestLoaded)}\n onBmpAdQuartile={proxy(props.onAdQuartile)}\n onBmpAdScheduled={proxy(props.onAdScheduled)}\n onBmpAdSkipped={proxy(props.onAdSkipped)}\n onBmpAdStarted={proxy(props.onAdStarted)}\n onBmpCastAvailable={proxy(props.onCastAvailable)}\n onBmpCastPaused={proxy(props.onCastPaused)}\n onBmpCastPlaybackFinished={proxy(props.onCastPlaybackFinished)}\n onBmpCastPlaying={proxy(props.onCastPlaying)}\n onBmpCastStarted={proxy(props.onCastStarted)}\n onBmpCastStart={proxy(props.onCastStart)}\n onBmpCastStopped={proxy(props.onCastStopped)}\n onBmpCastTimeUpdated={proxy(props.onCastTimeUpdated)}\n onBmpCastWaitingForDevice={proxy(props.onCastWaitingForDevice)}\n onBmpCueEnter={proxy(props.onCueEnter)}\n onBmpCueExit={proxy(props.onCueExit)}\n onBmpDestroy={proxy(props.onDestroy)}\n onBmpEvent={proxy(props.onEvent)}\n onBmpFullscreenEnabled={proxy(props.onFullscreenEnabled)}\n onBmpFullscreenDisabled={proxy(props.onFullscreenDisabled)}\n onBmpFullscreenEnter={proxy(props.onFullscreenEnter)}\n onBmpFullscreenExit={proxy(props.onFullscreenExit)}\n onBmpMuted={proxy(props.onMuted)}\n onBmpPaused={proxy(props.onPaused)}\n onBmpPictureInPictureAvailabilityChanged={proxy(\n props.onPictureInPictureAvailabilityChanged\n )}\n onBmpPictureInPictureEnter={proxy(props.onPictureInPictureEnter)}\n onBmpPictureInPictureEntered={proxy(props.onPictureInPictureEntered)}\n onBmpPictureInPictureExit={proxy(props.onPictureInPictureExit)}\n onBmpPictureInPictureExited={proxy(props.onPictureInPictureExited)}\n onBmpPlay={proxy(props.onPlay)}\n onBmpPlaybackFinished={proxy(props.onPlaybackFinished)}\n onBmpPlaybackSpeedChanged={proxy(props.onPlaybackSpeedChanged)}\n onBmpPlayerActive={proxy(props.onPlayerActive)}\n onBmpPlayerError={proxy(props.onPlayerError)}\n onBmpPlayerWarning={proxy(props.onPlayerWarning)}\n onBmpPlaying={proxy(props.onPlaying)}\n onBmpReady={proxy(props.onReady)}\n onBmpSeek={proxy(props.onSeek)}\n onBmpSeeked={proxy(props.onSeeked)}\n onBmpTimeShift={proxy(props.onTimeShift)}\n onBmpTimeShifted={proxy(props.onTimeShifted)}\n onBmpStallStarted={proxy(props.onStallStarted)}\n onBmpStallEnded={proxy(props.onStallEnded)}\n onBmpSourceError={proxy(props.onSourceError)}\n onBmpSourceLoad={proxy(props.onSourceLoad)}\n onBmpSourceLoaded={proxy(props.onSourceLoaded)}\n onBmpSourceUnloaded={proxy(props.onSourceUnloaded)}\n onBmpSourceWarning={proxy(props.onSourceWarning)}\n onBmpAudioAdded={proxy(props.onAudioAdded)}\n onBmpAudioChanged={proxy(props.onAudioChanged)}\n onBmpAudioRemoved={proxy(props.onAudioRemoved)}\n onBmpSubtitleAdded={proxy(props.onSubtitleAdded)}\n onBmpSubtitleChanged={proxy(props.onSubtitleChanged)}\n onBmpSubtitleRemoved={proxy(props.onSubtitleRemoved)}\n onBmpTimeChanged={proxy(props.onTimeChanged)}\n onBmpUnmuted={proxy(props.onUnmuted)}\n onBmpVideoDownloadQualityChanged={proxy(\n props.onVideoDownloadQualityChanged\n )}\n onBmpVideoPlaybackQualityChanged={proxy(\n props.onVideoPlaybackQualityChanged\n )}\n onBmpDownloadFinished={proxy(props.onDownloadFinished)}\n />\n )\n );\n}\n"]}
@@ -0,0 +1,30 @@
1
+ import { NativePlayerViewEvents } from './nativeEvents';
2
+ import { ViewStyle } from 'react-native';
3
+ import { ScalingMode } from '../../styleConfig';
4
+ import { PlayerViewConfig } from './playerViewConfig';
5
+ export interface NativePlayerViewConfig {
6
+ playerViewConfig?: PlayerViewConfig;
7
+ playerId: string;
8
+ customMessageHandlerBridgeId?: string;
9
+ enableBackgroundPlayback?: boolean;
10
+ isPictureInPictureEnabledOnPlayer?: boolean;
11
+ userInterfaceTypeName?: string;
12
+ }
13
+ /**
14
+ * Props type for `NativePlayerView` native component.
15
+ * Mostly maps the event props defined in native code.
16
+ */
17
+ export interface NativePlayerViewProps extends NativePlayerViewEvents {
18
+ ref?: React.RefObject<null>;
19
+ isFullscreenRequested?: boolean;
20
+ scalingMode?: ScalingMode;
21
+ isPictureInPictureRequested?: boolean;
22
+ style?: ViewStyle;
23
+ config: NativePlayerViewConfig;
24
+ fullscreenBridgeId?: string;
25
+ }
26
+ /**
27
+ * Native host component bridging Bitmovin's `PlayerView`.
28
+ */
29
+ export declare const NativePlayerView: import("react").ComponentType<NativePlayerViewProps>;
30
+ //# sourceMappingURL=native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.d.ts","sourceRoot":"","sources":["../../../src/components/PlayerView/native.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAEtD,MAAM,WAAW,sBAAsB;IACrC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,iCAAiC,CAAC,EAAE,OAAO,CAAC;IAC5C,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED;;;GAGG;AACH,MAAM,WAAW,qBAAsB,SAAQ,sBAAsB;IACnE,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAC5B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,sBAAsB,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,sDAE5B,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { requireNativeViewManager } from 'expo-modules-core';
2
+ /**
3
+ * Native host component bridging Bitmovin's `PlayerView`.
4
+ */
5
+ export const NativePlayerView = requireNativeViewManager('RNPlayerViewManager');
6
+ //# sourceMappingURL=native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native.js","sourceRoot":"","sources":["../../../src/components/PlayerView/native.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AA6B7D;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,wBAAwB,CACtD,qBAAqB,CACtB,CAAC","sourcesContent":["import { requireNativeViewManager } from 'expo-modules-core';\nimport { NativePlayerViewEvents } from './nativeEvents';\nimport { ViewStyle } from 'react-native';\nimport { ScalingMode } from '../../styleConfig';\nimport { PlayerViewConfig } from './playerViewConfig';\n\nexport interface NativePlayerViewConfig {\n playerViewConfig?: PlayerViewConfig;\n playerId: string;\n customMessageHandlerBridgeId?: string;\n enableBackgroundPlayback?: boolean;\n isPictureInPictureEnabledOnPlayer?: boolean;\n userInterfaceTypeName?: string;\n}\n\n/**\n * Props type for `NativePlayerView` native component.\n * Mostly maps the event props defined in native code.\n */\nexport interface NativePlayerViewProps extends NativePlayerViewEvents {\n ref?: React.RefObject<null>;\n isFullscreenRequested?: boolean;\n scalingMode?: ScalingMode;\n isPictureInPictureRequested?: boolean;\n style?: ViewStyle;\n config: NativePlayerViewConfig;\n fullscreenBridgeId?: string;\n}\n\n/**\n * Native host component bridging Bitmovin's `PlayerView`.\n */\nexport const NativePlayerView = requireNativeViewManager<NativePlayerViewProps>(\n 'RNPlayerViewManager'\n);\n"]}
@@ -0,0 +1,437 @@
1
+ import { AdBreakFinishedEvent, AdBreakStartedEvent, AdClickedEvent, AdErrorEvent, AdFinishedEvent, AdManifestLoadedEvent, AdManifestLoadEvent, AdQuartileEvent, AdScheduledEvent, AdSkippedEvent, AdStartedEvent, CastAvailableEvent, CastPausedEvent, CastPlaybackFinishedEvent, CastPlayingEvent, CastStartedEvent, CastStartEvent, CastStoppedEvent, CastTimeUpdatedEvent, CastWaitingForDeviceEvent, DestroyEvent, Event, FullscreenEnabledEvent, FullscreenDisabledEvent, FullscreenEnterEvent, FullscreenExitEvent, MutedEvent, PausedEvent, PictureInPictureAvailabilityChangedEvent, PictureInPictureEnterEvent, PictureInPictureEnteredEvent, PictureInPictureExitEvent, PictureInPictureExitedEvent, PlaybackFinishedEvent, PlayerActiveEvent, PlayerErrorEvent, PlayerWarningEvent, PlayEvent, PlayingEvent, ReadyEvent, SeekedEvent, SeekEvent, TimeShiftEvent, TimeShiftedEvent, StallStartedEvent, StallEndedEvent, SourceErrorEvent, SourceLoadedEvent, SourceLoadEvent, SourceUnloadedEvent, SourceWarningEvent, AudioAddedEvent, AudioChangedEvent, AudioRemovedEvent, SubtitleAddedEvent, SubtitleChangedEvent, SubtitleRemovedEvent, TimeChangedEvent, UnmutedEvent, VideoPlaybackQualityChangedEvent, DownloadFinishedEvent, VideoDownloadQualityChangedEvent, PlaybackSpeedChangedEvent, CueEnterEvent, CueExitEvent } from '../../events';
2
+ /**
3
+ * Event props for `NativePlayerView`.
4
+ */
5
+ export type NativePlayerViewEvents = {
6
+ /**
7
+ * Event emitted when an ad break has finished.
8
+ */
9
+ onBmpAdBreakFinished?: (event: {
10
+ nativeEvent: AdBreakFinishedEvent;
11
+ }) => void;
12
+ /**
13
+ * Event emitted when an ad break has started.
14
+ */
15
+ onBmpAdBreakStarted?: (event: {
16
+ nativeEvent: AdBreakStartedEvent;
17
+ }) => void;
18
+ /**
19
+ * Event emitted when an ad has been clicked.
20
+ */
21
+ onBmpAdClicked?: (event: {
22
+ nativeEvent: AdClickedEvent;
23
+ }) => void;
24
+ /**
25
+ * Event emitted when an ad error has occurred.
26
+ */
27
+ onBmpAdError?: (event: {
28
+ nativeEvent: AdErrorEvent;
29
+ }) => void;
30
+ /**
31
+ * Event emitted when an ad has finished.
32
+ */
33
+ onBmpAdFinished?: (event: {
34
+ nativeEvent: AdFinishedEvent;
35
+ }) => void;
36
+ /**
37
+ * Event emitted when an ad manifest starts loading.
38
+ */
39
+ onBmpAdManifestLoad?: (event: {
40
+ nativeEvent: AdManifestLoadEvent;
41
+ }) => void;
42
+ /**
43
+ * Event emitted when an ad manifest has been loaded.
44
+ */
45
+ onBmpAdManifestLoaded?: (event: {
46
+ nativeEvent: AdManifestLoadedEvent;
47
+ }) => void;
48
+ /**
49
+ * Event emitted when an ad quartile has been reached.
50
+ */
51
+ onBmpAdQuartile?: (event: {
52
+ nativeEvent: AdQuartileEvent;
53
+ }) => void;
54
+ /**
55
+ * Event emitted when an ad has been scheduled.
56
+ */
57
+ onBmpAdScheduled?: (event: {
58
+ nativeEvent: AdScheduledEvent;
59
+ }) => void;
60
+ /**
61
+ * Event emitted when an ad has been skipped.
62
+ */
63
+ onBmpAdSkipped?: (event: {
64
+ nativeEvent: AdSkippedEvent;
65
+ }) => void;
66
+ /**
67
+ * Event emitted when an ad has started.
68
+ */
69
+ onBmpAdStarted?: (event: {
70
+ nativeEvent: AdStartedEvent;
71
+ }) => void;
72
+ /**
73
+ * Event emitted when casting to a cast-compatible device is available.
74
+ *
75
+ * @remarks Platform: iOS, Android
76
+ */
77
+ onBmpCastAvailable?: (event: {
78
+ nativeEvent: CastAvailableEvent;
79
+ }) => void;
80
+ /**
81
+ * Event emitted when the playback on a cast-compatible device was paused.
82
+ *
83
+ * @remarks Platform: iOS, Android
84
+ */
85
+ onBmpCastPaused?: (event: {
86
+ nativeEvent: CastPausedEvent;
87
+ }) => void;
88
+ /**
89
+ * Event emitted when the playback on a cast-compatible device has finished.
90
+ *
91
+ * @remarks Platform: iOS, Android
92
+ */
93
+ onBmpCastPlaybackFinished?: (event: {
94
+ nativeEvent: CastPlaybackFinishedEvent;
95
+ }) => void;
96
+ /**
97
+ * Event emitted when playback on a cast-compatible device has started.
98
+ *
99
+ * @remarks Platform: iOS, Android
100
+ */
101
+ onBmpCastPlaying?: (event: {
102
+ nativeEvent: CastPlayingEvent;
103
+ }) => void;
104
+ /**
105
+ * Event emitted when the cast app is launched successfully.
106
+ *
107
+ * @remarks Platform: iOS, Android
108
+ */
109
+ onBmpCastStarted?: (event: {
110
+ nativeEvent: CastStartedEvent;
111
+ }) => void;
112
+ /**
113
+ * Event emitted when casting is initiated, but the user still needs to choose which device should be used.
114
+ *
115
+ * @remarks Platform: iOS, Android
116
+ */
117
+ onBmpCastStart?: (event: {
118
+ nativeEvent: CastStartEvent;
119
+ }) => void;
120
+ /**
121
+ * Event emitted when casting to a cast-compatible device is stopped.
122
+ *
123
+ * @remarks Platform: iOS, Android
124
+ */
125
+ onBmpCastStopped?: (event: {
126
+ nativeEvent: CastStoppedEvent;
127
+ }) => void;
128
+ /**
129
+ * Event emitted when the time update from the currently used cast-compatible device is received.
130
+ *
131
+ * @remarks Platform: iOS, Android
132
+ */
133
+ onBmpCastTimeUpdated?: (event: {
134
+ nativeEvent: CastTimeUpdatedEvent;
135
+ }) => void;
136
+ /**
137
+ * Event emitted when a cast-compatible device has been chosen and the player is waiting for the device to get ready for
138
+ * playback.
139
+ *
140
+ * @remarks Platform: iOS, Android
141
+ */
142
+ onBmpCastWaitingForDevice?: (event: {
143
+ nativeEvent: CastWaitingForDeviceEvent;
144
+ }) => void;
145
+ /**
146
+ * Event emitted when a subtitle entry transitions into the active status.
147
+ */
148
+ onBmpCueEnter?: (event: {
149
+ nativeEvent: CueEnterEvent;
150
+ }) => void;
151
+ /**
152
+ * Event emitted when an active subtitle entry transitions into the inactive status.
153
+ */
154
+ onBmpCueExit?: (event: {
155
+ nativeEvent: CueExitEvent;
156
+ }) => void;
157
+ /**
158
+ * Event emitted when the player is destroyed.
159
+ */
160
+ onBmpDestroy?: (event: {
161
+ nativeEvent: DestroyEvent;
162
+ }) => void;
163
+ /**
164
+ * Emitted when a download was finished.
165
+ */
166
+ onBmpDownloadFinished?: (event: {
167
+ nativeEvent: DownloadFinishedEvent;
168
+ }) => void;
169
+ /**
170
+ * All events emitted by the player.
171
+ */
172
+ onBmpEvent?: (event: {
173
+ nativeEvent: Event;
174
+ }) => void;
175
+ /**
176
+ * Event emitted when fullscreen mode has been enabled.
177
+ *
178
+ * @remarks Platform: iOS, Android
179
+ */
180
+ onBmpFullscreenEnabled?: (event: {
181
+ nativeEvent: FullscreenEnabledEvent;
182
+ }) => void;
183
+ /**
184
+ * Event emitted when fullscreen mode has been disabled.
185
+ *
186
+ * @remarks Platform: iOS, Android
187
+ */
188
+ onBmpFullscreenDisabled?: (event: {
189
+ nativeEvent: FullscreenDisabledEvent;
190
+ }) => void;
191
+ /**
192
+ * Event emitted when fullscreen mode has been entered.
193
+ *
194
+ * @remarks Platform: iOS, Android
195
+ */
196
+ onBmpFullscreenEnter?: (event: {
197
+ nativeEvent: FullscreenEnterEvent;
198
+ }) => void;
199
+ /**
200
+ * Event emitted when fullscreen mode has been exited.
201
+ *
202
+ * @remarks Platform: iOS, Android
203
+ */
204
+ onBmpFullscreenExit?: (event: {
205
+ nativeEvent: FullscreenExitEvent;
206
+ }) => void;
207
+ /**
208
+ * Event emitted when the player has been muted.
209
+ */
210
+ onBmpMuted?: (event: {
211
+ nativeEvent: MutedEvent;
212
+ }) => void;
213
+ /**
214
+ * Event emitted when the player has been paused.
215
+ */
216
+ onBmpPaused?: (event: {
217
+ nativeEvent: PausedEvent;
218
+ }) => void;
219
+ /**
220
+ * Event mitted when the availability of the Picture in Picture mode changed.
221
+ */
222
+ onBmpPictureInPictureAvailabilityChanged?: (event: {
223
+ nativeEvent: PictureInPictureAvailabilityChangedEvent;
224
+ }) => void;
225
+ /**
226
+ * Event emitted when the player enters Picture in Picture mode.
227
+ */
228
+ onBmpPictureInPictureEnter?: (event: {
229
+ nativeEvent: PictureInPictureEnterEvent;
230
+ }) => void;
231
+ /**
232
+ * Event emitted when the player entered Picture in Picture mode.
233
+ *
234
+ * @remarks Platform: iOS
235
+ */
236
+ onBmpPictureInPictureEntered?: (event: {
237
+ nativeEvent: PictureInPictureEnteredEvent;
238
+ }) => void;
239
+ /**
240
+ * Event emitted when the player exits Picture in Picture mode.
241
+ */
242
+ onBmpPictureInPictureExit?: (event: {
243
+ nativeEvent: PictureInPictureExitEvent;
244
+ }) => void;
245
+ /**
246
+ * Event emitted when the player exited Picture in Picture mode.
247
+ *
248
+ * @remarks Platform: iOS
249
+ */
250
+ onBmpPictureInPictureExited?: (event: {
251
+ nativeEvent: PictureInPictureExitedEvent;
252
+ }) => void;
253
+ /**
254
+ * Event emitted when the player received an intention to start/resume playback.
255
+ */
256
+ onBmpPlay?: (event: {
257
+ nativeEvent: PlayEvent;
258
+ }) => void;
259
+ /**
260
+ * Event emitted when the playback of the current media has finished.
261
+ */
262
+ onBmpPlaybackFinished?: (event: {
263
+ nativeEvent: PlaybackFinishedEvent;
264
+ }) => void;
265
+ /**
266
+ * Emitted when the player transitions from one playback speed to another.
267
+ * @remarks Platform: iOS, tvOS
268
+ */
269
+ onBmpPlaybackSpeedChanged?: (event: {
270
+ nativeEvent: PlaybackSpeedChangedEvent;
271
+ }) => void;
272
+ /**
273
+ * Event emitted when a source is loaded into the player.
274
+ * Seeking and time shifting are allowed as soon as this event is seen.
275
+ */
276
+ onBmpPlayerActive?: (event: {
277
+ nativeEvent: PlayerActiveEvent;
278
+ }) => void;
279
+ /**
280
+ * Event Emitted when a player error occurred.
281
+ */
282
+ onBmpPlayerError?: (event: {
283
+ nativeEvent: PlayerErrorEvent;
284
+ }) => void;
285
+ /**
286
+ * Event emitted when a player warning occurred.
287
+ */
288
+ onBmpPlayerWarning?: (event: {
289
+ nativeEvent: PlayerWarningEvent;
290
+ }) => void;
291
+ /**
292
+ * Emitted when playback has started.
293
+ */
294
+ onBmpPlaying?: (event: {
295
+ nativeEvent: PlayingEvent;
296
+ }) => void;
297
+ /**
298
+ * Emitted when the player is ready for immediate playback, because initial audio/video
299
+ * has been downloaded.
300
+ */
301
+ onBmpReady?: (event: {
302
+ nativeEvent: ReadyEvent;
303
+ }) => void;
304
+ /**
305
+ * Event emitted when the player is about to seek to a new position.
306
+ * Only applies to VoD streams.
307
+ */
308
+ onBmpSeek?: (event: {
309
+ nativeEvent: SeekEvent;
310
+ }) => void;
311
+ /**
312
+ * Event emitted when seeking has finished and data to continue playback is available.
313
+ * Only applies to VoD streams.
314
+ */
315
+ onBmpSeeked?: (event: {
316
+ nativeEvent: SeekedEvent;
317
+ }) => void;
318
+ /**
319
+ * Event mitted when the player starts time shifting.
320
+ * Only applies to live streams.
321
+ */
322
+ onBmpTimeShift?: (event: {
323
+ nativeEvent: TimeShiftEvent;
324
+ }) => void;
325
+ /**
326
+ * Event emitted when time shifting has finished and data is available to continue playback.
327
+ * Only applies to live streams.
328
+ */
329
+ onBmpTimeShifted?: (event: {
330
+ nativeEvent: TimeShiftedEvent;
331
+ }) => void;
332
+ /**
333
+ * Event emitted when the player begins to stall and to buffer due to an empty buffer.
334
+ */
335
+ onBmpStallStarted?: (event: {
336
+ nativeEvent: StallStartedEvent;
337
+ }) => void;
338
+ /**
339
+ * Event emitted when the player ends stalling, due to enough data in the buffer.
340
+ */
341
+ onBmpStallEnded?: (event: {
342
+ nativeEvent: StallEndedEvent;
343
+ }) => void;
344
+ /**
345
+ * Event emitted when a source error occurred.
346
+ */
347
+ onBmpSourceError?: (event: {
348
+ nativeEvent: SourceErrorEvent;
349
+ }) => void;
350
+ /**
351
+ * Event emitted when a new source loading has started.
352
+ */
353
+ onBmpSourceLoad?: (event: {
354
+ nativeEvent: SourceLoadEvent;
355
+ }) => void;
356
+ /**
357
+ * Event emitted when a new source is loaded.
358
+ * This does not mean that the source is immediately ready for playback.
359
+ * `ReadyEvent` indicates the player is ready for immediate playback.
360
+ */
361
+ onBmpSourceLoaded?: (event: {
362
+ nativeEvent: SourceLoadedEvent;
363
+ }) => void;
364
+ /**
365
+ * Event emitted when the current source has been unloaded.
366
+ */
367
+ onBmpSourceUnloaded?: (event: {
368
+ nativeEvent: SourceUnloadedEvent;
369
+ }) => void;
370
+ /**
371
+ * Event emitted when a source warning occurred.
372
+ */
373
+ onBmpSourceWarning?: (event: {
374
+ nativeEvent: SourceWarningEvent;
375
+ }) => void;
376
+ /**
377
+ * Event emitted when a new audio track is added to the player.
378
+ */
379
+ onBmpAudioAdded?: (event: {
380
+ nativeEvent: AudioAddedEvent;
381
+ }) => void;
382
+ /**
383
+ * Event emitted when the player's selected audio track has changed.
384
+ */
385
+ onBmpAudioChanged?: (event: {
386
+ nativeEvent: AudioChangedEvent;
387
+ }) => void;
388
+ /**
389
+ * Event emitted when an audio track is removed from the player.
390
+ */
391
+ onBmpAudioRemoved?: (event: {
392
+ nativeEvent: AudioRemovedEvent;
393
+ }) => void;
394
+ /**
395
+ * Event emitted when a new subtitle track is added to the player.
396
+ */
397
+ onBmpSubtitleAdded?: (event: {
398
+ nativeEvent: SubtitleAddedEvent;
399
+ }) => void;
400
+ /**
401
+ * Event emitted when the player's selected subtitle track has changed.
402
+ */
403
+ onBmpSubtitleChanged?: (event: {
404
+ nativeEvent: SubtitleChangedEvent;
405
+ }) => void;
406
+ /**
407
+ * Event emitted when a subtitle track is removed from the player.
408
+ */
409
+ onBmpSubtitleRemoved?: (event: {
410
+ nativeEvent: SubtitleRemovedEvent;
411
+ }) => void;
412
+ /**
413
+ * Event emitted when the current playback time has changed.
414
+ */
415
+ onBmpTimeChanged?: (event: {
416
+ nativeEvent: TimeChangedEvent;
417
+ }) => void;
418
+ /**
419
+ * Emitted when the player is unmuted.
420
+ */
421
+ onBmpUnmuted?: (event: {
422
+ nativeEvent: UnmutedEvent;
423
+ }) => void;
424
+ /**
425
+ * Emitted when current video download quality has changed.
426
+ */
427
+ onBmpVideoDownloadQualityChanged?: (event: {
428
+ nativeEvent: VideoDownloadQualityChangedEvent;
429
+ }) => void;
430
+ /**
431
+ * Emitted when the current video playback quality has changed.
432
+ */
433
+ onBmpVideoPlaybackQualityChanged?: (event: {
434
+ nativeEvent: VideoPlaybackQualityChangedEvent;
435
+ }) => void;
436
+ };
437
+ //# sourceMappingURL=nativeEvents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeEvents.d.ts","sourceRoot":"","sources":["../../../src/components/PlayerView/nativeEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,qBAAqB,EACrB,mBAAmB,EACnB,eAAe,EACf,gBAAgB,EAChB,cAAc,EACd,cAAc,EACd,kBAAkB,EAClB,eAAe,EACf,yBAAyB,EACzB,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,yBAAyB,EACzB,YAAY,EACZ,KAAK,EACL,sBAAsB,EACtB,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,UAAU,EACV,WAAW,EACX,wCAAwC,EACxC,0BAA0B,EAC1B,4BAA4B,EAC5B,yBAAyB,EACzB,2BAA2B,EAC3B,qBAAqB,EACrB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,SAAS,EACT,YAAY,EACZ,UAAU,EACV,WAAW,EACX,SAAS,EACT,cAAc,EACd,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,iBAAiB,EACjB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,gBAAgB,EAChB,YAAY,EACZ,gCAAgC,EAChC,qBAAqB,EACrB,gCAAgC,EAChC,yBAAyB,EACzB,aAAa,EACb,YAAY,EACb,MAAM,cAAc,CAAC;AAEtB;;GAEG;AACH,MAAM,MAAM,sBAAsB,GAAG;IACnC;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9E;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,mBAAmB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5E;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,cAAc,CAAA;KAAE,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,YAAY,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,mBAAmB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5E;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC9B,WAAW,EAAE,qBAAqB,CAAC;KACpC,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,cAAc,CAAA;KAAE,KAAK,IAAI,CAAC;IAClE;;OAEG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,cAAc,CAAA;KAAE,KAAK,IAAI,CAAC;IAClE;;;;OAIG;IACH,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,kBAAkB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E;;;;OAIG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;;;OAIG;IACH,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE;QAClC,WAAW,EAAE,yBAAyB,CAAC;KACxC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;;;OAIG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,cAAc,CAAA;KAAE,KAAK,IAAI,CAAC;IAClE;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9E;;;;;OAKG;IACH,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE;QAClC,WAAW,EAAE,yBAAyB,CAAC;KACxC,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,aAAa,CAAA;KAAE,KAAK,IAAI,CAAC;IAChE;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,YAAY,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,YAAY,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC9B,WAAW,EAAE,qBAAqB,CAAC;KACpC,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,KAAK,CAAA;KAAE,KAAK,IAAI,CAAC;IACrD;;;;OAIG;IACH,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC/B,WAAW,EAAE,sBAAsB,CAAC;KACrC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE;QAChC,WAAW,EAAE,uBAAuB,CAAC;KACtC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9E;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,mBAAmB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5E;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1D;;OAEG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D;;OAEG;IACH,wCAAwC,CAAC,EAAE,CAAC,KAAK,EAAE;QACjD,WAAW,EAAE,wCAAwC,CAAC;KACvD,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,0BAA0B,CAAC,EAAE,CAAC,KAAK,EAAE;QACnC,WAAW,EAAE,0BAA0B,CAAC;KACzC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,4BAA4B,CAAC,EAAE,CAAC,KAAK,EAAE;QACrC,WAAW,EAAE,4BAA4B,CAAC;KAC3C,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE;QAClC,WAAW,EAAE,yBAAyB,CAAC;KACxC,KAAK,IAAI,CAAC;IACX;;;;OAIG;IACH,2BAA2B,CAAC,EAAE,CAAC,KAAK,EAAE;QACpC,WAAW,EAAE,2BAA2B,CAAC;KAC1C,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,SAAS,CAAA;KAAE,KAAK,IAAI,CAAC;IACxD;;OAEG;IACH,qBAAqB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC9B,WAAW,EAAE,qBAAqB,CAAC;KACpC,KAAK,IAAI,CAAC;IACX;;;OAGG;IACH,yBAAyB,CAAC,EAAE,CAAC,KAAK,EAAE;QAClC,WAAW,EAAE,yBAAyB,CAAC;KACxC,KAAK,IAAI,CAAC;IACX;;;OAGG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,kBAAkB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,YAAY,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D;;;OAGG;IACH,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,UAAU,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1D;;;OAGG;IACH,SAAS,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,SAAS,CAAA;KAAE,KAAK,IAAI,CAAC;IACxD;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,WAAW,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,cAAc,CAAA;KAAE,KAAK,IAAI,CAAC;IAClE;;;OAGG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,mBAAmB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,mBAAmB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5E;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,kBAAkB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E;;OAEG;IACH,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,eAAe,CAAA;KAAE,KAAK,IAAI,CAAC;IACpE;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,iBAAiB,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE;;OAEG;IACH,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,kBAAkB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC1E;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9E;;OAEG;IACH,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,oBAAoB,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9E;;OAEG;IACH,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,gBAAgB,CAAA;KAAE,KAAK,IAAI,CAAC;IACtE;;OAEG;IACH,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,YAAY,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D;;OAEG;IACH,gCAAgC,CAAC,EAAE,CAAC,KAAK,EAAE;QACzC,WAAW,EAAE,gCAAgC,CAAC;KAC/C,KAAK,IAAI,CAAC;IACX;;OAEG;IACH,gCAAgC,CAAC,EAAE,CAAC,KAAK,EAAE;QACzC,WAAW,EAAE,gCAAgC,CAAC;KAC/C,KAAK,IAAI,CAAC;CACZ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=nativeEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nativeEvents.js","sourceRoot":"","sources":["../../../src/components/PlayerView/nativeEvents.ts"],"names":[],"mappings":"","sourcesContent":["import {\n AdBreakFinishedEvent,\n AdBreakStartedEvent,\n AdClickedEvent,\n AdErrorEvent,\n AdFinishedEvent,\n AdManifestLoadedEvent,\n AdManifestLoadEvent,\n AdQuartileEvent,\n AdScheduledEvent,\n AdSkippedEvent,\n AdStartedEvent,\n CastAvailableEvent,\n CastPausedEvent,\n CastPlaybackFinishedEvent,\n CastPlayingEvent,\n CastStartedEvent,\n CastStartEvent,\n CastStoppedEvent,\n CastTimeUpdatedEvent,\n CastWaitingForDeviceEvent,\n DestroyEvent,\n Event,\n FullscreenEnabledEvent,\n FullscreenDisabledEvent,\n FullscreenEnterEvent,\n FullscreenExitEvent,\n MutedEvent,\n PausedEvent,\n PictureInPictureAvailabilityChangedEvent,\n PictureInPictureEnterEvent,\n PictureInPictureEnteredEvent,\n PictureInPictureExitEvent,\n PictureInPictureExitedEvent,\n PlaybackFinishedEvent,\n PlayerActiveEvent,\n PlayerErrorEvent,\n PlayerWarningEvent,\n PlayEvent,\n PlayingEvent,\n ReadyEvent,\n SeekedEvent,\n SeekEvent,\n TimeShiftEvent,\n TimeShiftedEvent,\n StallStartedEvent,\n StallEndedEvent,\n SourceErrorEvent,\n SourceLoadedEvent,\n SourceLoadEvent,\n SourceUnloadedEvent,\n SourceWarningEvent,\n AudioAddedEvent,\n AudioChangedEvent,\n AudioRemovedEvent,\n SubtitleAddedEvent,\n SubtitleChangedEvent,\n SubtitleRemovedEvent,\n TimeChangedEvent,\n UnmutedEvent,\n VideoPlaybackQualityChangedEvent,\n DownloadFinishedEvent,\n VideoDownloadQualityChangedEvent,\n PlaybackSpeedChangedEvent,\n CueEnterEvent,\n CueExitEvent,\n} from '../../events';\n\n/**\n * Event props for `NativePlayerView`.\n */\nexport type NativePlayerViewEvents = {\n /**\n * Event emitted when an ad break has finished.\n */\n onBmpAdBreakFinished?: (event: { nativeEvent: AdBreakFinishedEvent }) => void;\n /**\n * Event emitted when an ad break has started.\n */\n onBmpAdBreakStarted?: (event: { nativeEvent: AdBreakStartedEvent }) => void;\n /**\n * Event emitted when an ad has been clicked.\n */\n onBmpAdClicked?: (event: { nativeEvent: AdClickedEvent }) => void;\n /**\n * Event emitted when an ad error has occurred.\n */\n onBmpAdError?: (event: { nativeEvent: AdErrorEvent }) => void;\n /**\n * Event emitted when an ad has finished.\n */\n onBmpAdFinished?: (event: { nativeEvent: AdFinishedEvent }) => void;\n /**\n * Event emitted when an ad manifest starts loading.\n */\n onBmpAdManifestLoad?: (event: { nativeEvent: AdManifestLoadEvent }) => void;\n /**\n * Event emitted when an ad manifest has been loaded.\n */\n onBmpAdManifestLoaded?: (event: {\n nativeEvent: AdManifestLoadedEvent;\n }) => void;\n /**\n * Event emitted when an ad quartile has been reached.\n */\n onBmpAdQuartile?: (event: { nativeEvent: AdQuartileEvent }) => void;\n /**\n * Event emitted when an ad has been scheduled.\n */\n onBmpAdScheduled?: (event: { nativeEvent: AdScheduledEvent }) => void;\n /**\n * Event emitted when an ad has been skipped.\n */\n onBmpAdSkipped?: (event: { nativeEvent: AdSkippedEvent }) => void;\n /**\n * Event emitted when an ad has started.\n */\n onBmpAdStarted?: (event: { nativeEvent: AdStartedEvent }) => void;\n /**\n * Event emitted when casting to a cast-compatible device is available.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastAvailable?: (event: { nativeEvent: CastAvailableEvent }) => void;\n /**\n * Event emitted when the playback on a cast-compatible device was paused.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastPaused?: (event: { nativeEvent: CastPausedEvent }) => void;\n /**\n * Event emitted when the playback on a cast-compatible device has finished.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastPlaybackFinished?: (event: {\n nativeEvent: CastPlaybackFinishedEvent;\n }) => void;\n /**\n * Event emitted when playback on a cast-compatible device has started.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastPlaying?: (event: { nativeEvent: CastPlayingEvent }) => void;\n /**\n * Event emitted when the cast app is launched successfully.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastStarted?: (event: { nativeEvent: CastStartedEvent }) => void;\n /**\n * Event emitted when casting is initiated, but the user still needs to choose which device should be used.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastStart?: (event: { nativeEvent: CastStartEvent }) => void;\n /**\n * Event emitted when casting to a cast-compatible device is stopped.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastStopped?: (event: { nativeEvent: CastStoppedEvent }) => void;\n /**\n * Event emitted when the time update from the currently used cast-compatible device is received.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastTimeUpdated?: (event: { nativeEvent: CastTimeUpdatedEvent }) => void;\n /**\n * Event emitted when a cast-compatible device has been chosen and the player is waiting for the device to get ready for\n * playback.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpCastWaitingForDevice?: (event: {\n nativeEvent: CastWaitingForDeviceEvent;\n }) => void;\n /**\n * Event emitted when a subtitle entry transitions into the active status.\n */\n onBmpCueEnter?: (event: { nativeEvent: CueEnterEvent }) => void;\n /**\n * Event emitted when an active subtitle entry transitions into the inactive status.\n */\n onBmpCueExit?: (event: { nativeEvent: CueExitEvent }) => void;\n /**\n * Event emitted when the player is destroyed.\n */\n onBmpDestroy?: (event: { nativeEvent: DestroyEvent }) => void;\n /**\n * Emitted when a download was finished.\n */\n onBmpDownloadFinished?: (event: {\n nativeEvent: DownloadFinishedEvent;\n }) => void;\n /**\n * All events emitted by the player.\n */\n onBmpEvent?: (event: { nativeEvent: Event }) => void;\n /**\n * Event emitted when fullscreen mode has been enabled.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpFullscreenEnabled?: (event: {\n nativeEvent: FullscreenEnabledEvent;\n }) => void;\n /**\n * Event emitted when fullscreen mode has been disabled.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpFullscreenDisabled?: (event: {\n nativeEvent: FullscreenDisabledEvent;\n }) => void;\n /**\n * Event emitted when fullscreen mode has been entered.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpFullscreenEnter?: (event: { nativeEvent: FullscreenEnterEvent }) => void;\n /**\n * Event emitted when fullscreen mode has been exited.\n *\n * @remarks Platform: iOS, Android\n */\n onBmpFullscreenExit?: (event: { nativeEvent: FullscreenExitEvent }) => void;\n /**\n * Event emitted when the player has been muted.\n */\n onBmpMuted?: (event: { nativeEvent: MutedEvent }) => void;\n /**\n * Event emitted when the player has been paused.\n */\n onBmpPaused?: (event: { nativeEvent: PausedEvent }) => void;\n /**\n * Event mitted when the availability of the Picture in Picture mode changed.\n */\n onBmpPictureInPictureAvailabilityChanged?: (event: {\n nativeEvent: PictureInPictureAvailabilityChangedEvent;\n }) => void;\n /**\n * Event emitted when the player enters Picture in Picture mode.\n */\n onBmpPictureInPictureEnter?: (event: {\n nativeEvent: PictureInPictureEnterEvent;\n }) => void;\n /**\n * Event emitted when the player entered Picture in Picture mode.\n *\n * @remarks Platform: iOS\n */\n onBmpPictureInPictureEntered?: (event: {\n nativeEvent: PictureInPictureEnteredEvent;\n }) => void;\n /**\n * Event emitted when the player exits Picture in Picture mode.\n */\n onBmpPictureInPictureExit?: (event: {\n nativeEvent: PictureInPictureExitEvent;\n }) => void;\n /**\n * Event emitted when the player exited Picture in Picture mode.\n *\n * @remarks Platform: iOS\n */\n onBmpPictureInPictureExited?: (event: {\n nativeEvent: PictureInPictureExitedEvent;\n }) => void;\n /**\n * Event emitted when the player received an intention to start/resume playback.\n */\n onBmpPlay?: (event: { nativeEvent: PlayEvent }) => void;\n /**\n * Event emitted when the playback of the current media has finished.\n */\n onBmpPlaybackFinished?: (event: {\n nativeEvent: PlaybackFinishedEvent;\n }) => void;\n /**\n * Emitted when the player transitions from one playback speed to another.\n * @remarks Platform: iOS, tvOS\n */\n onBmpPlaybackSpeedChanged?: (event: {\n nativeEvent: PlaybackSpeedChangedEvent;\n }) => void;\n /**\n * Event emitted when a source is loaded into the player.\n * Seeking and time shifting are allowed as soon as this event is seen.\n */\n onBmpPlayerActive?: (event: { nativeEvent: PlayerActiveEvent }) => void;\n /**\n * Event Emitted when a player error occurred.\n */\n onBmpPlayerError?: (event: { nativeEvent: PlayerErrorEvent }) => void;\n /**\n * Event emitted when a player warning occurred.\n */\n onBmpPlayerWarning?: (event: { nativeEvent: PlayerWarningEvent }) => void;\n /**\n * Emitted when playback has started.\n */\n onBmpPlaying?: (event: { nativeEvent: PlayingEvent }) => void;\n /**\n * Emitted when the player is ready for immediate playback, because initial audio/video\n * has been downloaded.\n */\n onBmpReady?: (event: { nativeEvent: ReadyEvent }) => void;\n /**\n * Event emitted when the player is about to seek to a new position.\n * Only applies to VoD streams.\n */\n onBmpSeek?: (event: { nativeEvent: SeekEvent }) => void;\n /**\n * Event emitted when seeking has finished and data to continue playback is available.\n * Only applies to VoD streams.\n */\n onBmpSeeked?: (event: { nativeEvent: SeekedEvent }) => void;\n /**\n * Event mitted when the player starts time shifting.\n * Only applies to live streams.\n */\n onBmpTimeShift?: (event: { nativeEvent: TimeShiftEvent }) => void;\n /**\n * Event emitted when time shifting has finished and data is available to continue playback.\n * Only applies to live streams.\n */\n onBmpTimeShifted?: (event: { nativeEvent: TimeShiftedEvent }) => void;\n /**\n * Event emitted when the player begins to stall and to buffer due to an empty buffer.\n */\n onBmpStallStarted?: (event: { nativeEvent: StallStartedEvent }) => void;\n /**\n * Event emitted when the player ends stalling, due to enough data in the buffer.\n */\n onBmpStallEnded?: (event: { nativeEvent: StallEndedEvent }) => void;\n /**\n * Event emitted when a source error occurred.\n */\n onBmpSourceError?: (event: { nativeEvent: SourceErrorEvent }) => void;\n /**\n * Event emitted when a new source loading has started.\n */\n onBmpSourceLoad?: (event: { nativeEvent: SourceLoadEvent }) => void;\n /**\n * Event emitted when a new source is loaded.\n * This does not mean that the source is immediately ready for playback.\n * `ReadyEvent` indicates the player is ready for immediate playback.\n */\n onBmpSourceLoaded?: (event: { nativeEvent: SourceLoadedEvent }) => void;\n /**\n * Event emitted when the current source has been unloaded.\n */\n onBmpSourceUnloaded?: (event: { nativeEvent: SourceUnloadedEvent }) => void;\n /**\n * Event emitted when a source warning occurred.\n */\n onBmpSourceWarning?: (event: { nativeEvent: SourceWarningEvent }) => void;\n /**\n * Event emitted when a new audio track is added to the player.\n */\n onBmpAudioAdded?: (event: { nativeEvent: AudioAddedEvent }) => void;\n /**\n * Event emitted when the player's selected audio track has changed.\n */\n onBmpAudioChanged?: (event: { nativeEvent: AudioChangedEvent }) => void;\n /**\n * Event emitted when an audio track is removed from the player.\n */\n onBmpAudioRemoved?: (event: { nativeEvent: AudioRemovedEvent }) => void;\n /**\n * Event emitted when a new subtitle track is added to the player.\n */\n onBmpSubtitleAdded?: (event: { nativeEvent: SubtitleAddedEvent }) => void;\n /**\n * Event emitted when the player's selected subtitle track has changed.\n */\n onBmpSubtitleChanged?: (event: { nativeEvent: SubtitleChangedEvent }) => void;\n /**\n * Event emitted when a subtitle track is removed from the player.\n */\n onBmpSubtitleRemoved?: (event: { nativeEvent: SubtitleRemovedEvent }) => void;\n /**\n * Event emitted when the current playback time has changed.\n */\n onBmpTimeChanged?: (event: { nativeEvent: TimeChangedEvent }) => void;\n /**\n * Emitted when the player is unmuted.\n */\n onBmpUnmuted?: (event: { nativeEvent: UnmutedEvent }) => void;\n /**\n * Emitted when current video download quality has changed.\n */\n onBmpVideoDownloadQualityChanged?: (event: {\n nativeEvent: VideoDownloadQualityChangedEvent;\n }) => void;\n /**\n * Emitted when the current video playback quality has changed.\n */\n onBmpVideoPlaybackQualityChanged?: (event: {\n nativeEvent: VideoPlaybackQualityChangedEvent;\n }) => void;\n};\n"]}