react-native-theoplayer 10.10.0 → 10.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 (74) hide show
  1. package/CHANGELOG.md +20 -1
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/com/theoplayer/presentation/PresentationManager.kt +52 -25
  4. package/android/src/main/java/com/theoplayer/theolive/THEOliveEventAdapter.kt +18 -0
  5. package/ios/ads/THEOplayerRCTAdsNative.swift +8 -1
  6. package/ios/theolive/THEOplayerRCTTHEOliveEventAdapter.swift +70 -3
  7. package/ios/theolive/THEOplayerRCTTHEOliveEventHandler.swift +28 -3
  8. package/lib/commonjs/api/event/TheoLiveEvent.js +6 -0
  9. package/lib/commonjs/api/event/TheoLiveEvent.js.map +1 -1
  10. package/lib/commonjs/api/theolive/TheoLiveDistribution.js +2 -0
  11. package/lib/commonjs/api/theolive/TheoLiveDistribution.js.map +1 -0
  12. package/lib/commonjs/api/theolive/barrel.js +22 -0
  13. package/lib/commonjs/api/theolive/barrel.js.map +1 -1
  14. package/lib/commonjs/internal/THEOplayerView.js +6 -11
  15. package/lib/commonjs/internal/THEOplayerView.js.map +1 -1
  16. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js +5 -0
  17. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js.map +1 -1
  18. package/lib/commonjs/internal/adapter/WebEventForwarder.js +21 -21
  19. package/lib/commonjs/internal/adapter/WebEventForwarder.js.map +1 -1
  20. package/lib/commonjs/internal/adapter/event/PlayerEvents.js +9 -1
  21. package/lib/commonjs/internal/adapter/event/PlayerEvents.js.map +1 -1
  22. package/lib/commonjs/internal/adapter/event/native/NativeTheoLiveEvent.js +2 -0
  23. package/lib/commonjs/internal/adapter/event/native/NativeTheoLiveEvent.js.map +1 -1
  24. package/lib/commonjs/manifest.json +1 -1
  25. package/lib/commonjs/plugins/typedoc-platform-icons/package-lock.json +57 -145
  26. package/lib/module/api/event/TheoLiveEvent.js +7 -0
  27. package/lib/module/api/event/TheoLiveEvent.js.map +1 -1
  28. package/lib/module/api/theolive/TheoLiveDistribution.js +2 -0
  29. package/lib/module/api/theolive/TheoLiveDistribution.js.map +1 -0
  30. package/lib/module/api/theolive/barrel.js +2 -0
  31. package/lib/module/api/theolive/barrel.js.map +1 -1
  32. package/lib/module/internal/THEOplayerView.js +6 -11
  33. package/lib/module/internal/THEOplayerView.js.map +1 -1
  34. package/lib/module/internal/adapter/THEOplayerAdapter.js +5 -0
  35. package/lib/module/internal/adapter/THEOplayerAdapter.js.map +1 -1
  36. package/lib/module/internal/adapter/WebEventForwarder.js +22 -22
  37. package/lib/module/internal/adapter/WebEventForwarder.js.map +1 -1
  38. package/lib/module/internal/adapter/event/PlayerEvents.js +7 -0
  39. package/lib/module/internal/adapter/event/PlayerEvents.js.map +1 -1
  40. package/lib/module/internal/adapter/event/native/NativeTheoLiveEvent.js +3 -1
  41. package/lib/module/internal/adapter/event/native/NativeTheoLiveEvent.js.map +1 -1
  42. package/lib/module/manifest.json +1 -1
  43. package/lib/module/plugins/typedoc-platform-icons/package-lock.json +57 -145
  44. package/lib/typescript/api/event/TheoLiveEvent.d.ts +18 -0
  45. package/lib/typescript/api/event/TheoLiveEvent.d.ts.map +1 -1
  46. package/lib/typescript/api/source/latency/SourceLatencyConfiguration.d.ts +1 -0
  47. package/lib/typescript/api/source/latency/SourceLatencyConfiguration.d.ts.map +1 -1
  48. package/lib/typescript/api/theolive/TheoLiveDistribution.d.ts +11 -0
  49. package/lib/typescript/api/theolive/TheoLiveDistribution.d.ts.map +1 -0
  50. package/lib/typescript/api/theolive/TheoLiveEndpoint.d.ts +1 -1
  51. package/lib/typescript/api/theolive/barrel.d.ts +2 -0
  52. package/lib/typescript/api/theolive/barrel.d.ts.map +1 -1
  53. package/lib/typescript/internal/THEOplayerView.d.ts.map +1 -1
  54. package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts +2 -0
  55. package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts.map +1 -1
  56. package/lib/typescript/internal/adapter/WebEventForwarder.d.ts.map +1 -1
  57. package/lib/typescript/internal/adapter/event/PlayerEvents.d.ts +7 -1
  58. package/lib/typescript/internal/adapter/event/PlayerEvents.d.ts.map +1 -1
  59. package/lib/typescript/internal/adapter/event/native/NativeTheoLiveEvent.d.ts +5 -0
  60. package/lib/typescript/internal/adapter/event/native/NativeTheoLiveEvent.d.ts.map +1 -1
  61. package/package.json +2 -2
  62. package/react-native-theoplayer.podspec +7 -7
  63. package/src/api/event/TheoLiveEvent.ts +20 -0
  64. package/src/api/source/latency/SourceLatencyConfiguration.ts +1 -0
  65. package/src/api/theolive/TheoLiveDistribution.ts +10 -0
  66. package/src/api/theolive/TheoLiveEndpoint.ts +1 -1
  67. package/src/api/theolive/barrel.ts +2 -0
  68. package/src/internal/THEOplayerView.tsx +6 -9
  69. package/src/internal/adapter/THEOplayerAdapter.ts +6 -0
  70. package/src/internal/adapter/WebEventForwarder.ts +24 -16
  71. package/src/internal/adapter/event/PlayerEvents.ts +18 -7
  72. package/src/internal/adapter/event/native/NativeTheoLiveEvent.ts +10 -1
  73. package/src/manifest.json +1 -1
  74. package/src/plugins/typedoc-platform-icons/package-lock.json +57 -145
package/CHANGELOG.md CHANGED
@@ -5,11 +5,30 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.1.0/)
6
6
  and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [10.11.0] - 26-03-10
9
+
10
+ ### Fixed
11
+
12
+ - Fixed an issue on Android where transitioning from picture-in-picture presentation mode would fail when using Expo Router.
13
+ - Fixed an issue where the player would remove all listeners when using `<StrictMode>` on mobile platforms.
14
+
15
+ ### Changed
16
+
17
+ - Updated `NativeAdBreak` to prevent iOS build failure caused by changed `AdBreak` protocol.
18
+
8
19
  ## [10.10.0] - 26-02-17
9
20
 
10
21
  ### Fixed
11
22
 
12
- - Fixed an issue on iOS where the onPlayerStateSync callback was not called from the main thread.
23
+ - Fixed an issue on iOS where the `onPlayerStateSync` callback was not called from the main thread.
24
+
25
+ ### Added
26
+
27
+ - Added the `DistributionLoaded` event for THEOlive.
28
+
29
+ ### Added
30
+
31
+ - Added contentProtection extraction for THEOlive endpoints on iOS.
13
32
 
14
33
  ## [10.9.0] - 26-01-29
15
34
 
@@ -124,8 +124,8 @@ repositories {
124
124
  mavenLocal()
125
125
  }
126
126
 
127
- // The minimum supported THEOplayer version is 10.0.1
128
- def theoVersion = safeExtGet('THEOplayer_sdk', '[10.0.1, 11.0.0)')
127
+ // The minimum supported THEOplayer version is 10.10.0
128
+ def theoVersion = safeExtGet('THEOplayer_sdk', '[10.10.0, 11.0.0)')
129
129
  def theoMediaSessionVersion = safeExtGet('THEOplayer_mediasession', '[8.0.0, 11.0.0)')
130
130
  def theoAdsWrapperVersion = "10.0.0"
131
131
  def coroutinesVersion = safeExtGet('coroutinesVersion', '1.10.2')
@@ -286,36 +286,43 @@ class PresentationManager(
286
286
  get() = findReactRootView( reactContext, reactPlayerGroup)
287
287
 
288
288
  private fun reparentPlayerToRoot() {
289
- reactPlayerGroup?.let { playerGroup ->
290
- playerGroupRestoreOptions.parentNode = (playerGroup.parent as? ViewGroup)?.also { parent ->
291
- playerGroupRestoreOptions.childIndex = parent.indexOfChild(playerGroup)
289
+ val root = rootView ?: return
290
+ val playerGroup = reactPlayerGroup ?: return
291
+ val playerGroupParent = (playerGroup.parent as? ViewGroup) ?: return
292
292
 
293
- // Re-parent the playerViewGroup to the root node
294
- parent.removeView(playerGroup)
295
- rootView?.let { root ->
296
- root.addView(playerGroup)
297
-
298
- // Attach an observer that overrides the react-native lay-out and forces fullscreen.
299
- fullScreenLayoutObserver.attach(playerGroup, root)
300
- }
301
- }
293
+ // already reparented?
294
+ if (playerGroup.parent == root) {
295
+ return
302
296
  }
297
+
298
+ // Store the original parent and child index to be able to restore it later
299
+ playerGroupRestoreOptions.store(playerGroupParent, playerGroup)
300
+
301
+ // Re-parent the playerViewGroup to the root node
302
+ playerGroupParent.removeView(playerGroup)
303
+ root.addView(playerGroup)
304
+
305
+ // Attach an observer that overrides the react-native lay-out and forces fullscreen.
306
+ fullScreenLayoutObserver.attach(playerGroup, root)
303
307
  }
304
308
 
305
309
  private fun reparentPlayerToOriginal() {
306
- rootView?.run {
307
- reactPlayerGroup?.let { playerGroup ->
308
- // Remove forced layout observer
309
- fullScreenLayoutObserver.remove()
310
-
311
- // Re-parent the playerViewGroup from the root node to its original parent
312
- removeView(playerGroup)
313
- playerGroupRestoreOptions.parentNode?.addView(
314
- playerGroup, playerGroupRestoreOptions.childIndex ?: 0
315
- )
316
- playerGroupRestoreOptions.reset()
317
- }
310
+ val root = rootView ?: return
311
+ val playerGroup = reactPlayerGroup ?: return
312
+
313
+ // Not re-parented?
314
+ if (!playerGroupRestoreOptions.isStored()) {
315
+ return
318
316
  }
317
+
318
+ // Remove forced layout observer
319
+ fullScreenLayoutObserver.remove()
320
+
321
+ // Remove the playerViewGroup the root node
322
+ root.removeView(playerGroup)
323
+
324
+ // Restore the original parent and child index
325
+ playerGroupRestoreOptions.restore()
319
326
  }
320
327
  // endregion
321
328
 
@@ -346,11 +353,31 @@ class PresentationManager(
346
353
  }
347
354
  }
348
355
 
356
+ /**
357
+ * Helper class to store the original parent and child index of the playerViewGroup when re-parenting it
358
+ * to the root view for fullscreen or PiP presentation mode, and restore it when going back to inline mode.
359
+ */
349
360
  private class PlayerGroupRestoreOptions {
350
361
  var childIndex: Int? = null
362
+ private set
351
363
  var parentNode: ViewGroup? = null
364
+ private set
365
+ var childNode: ReactViewGroup? = null
366
+ private set
367
+
368
+ fun isStored(): Boolean = parentNode != null && childNode != null
352
369
 
353
- fun reset() {
370
+ fun store(parent: ViewGroup, child: ReactViewGroup) {
371
+ parentNode = parent
372
+ childNode = child
373
+ childIndex = parent.indexOfChild(child)
374
+ }
375
+
376
+ fun restore() {
377
+ childNode?.let { child ->
378
+ parentNode?.addView(child, childIndex ?: 0)
379
+ }
380
+ childNode = null
354
381
  parentNode = null
355
382
  childIndex = null
356
383
  }
@@ -4,6 +4,7 @@ import com.facebook.react.bridge.Arguments
4
4
  import com.facebook.react.bridge.WritableMap
5
5
  import com.theoplayer.android.api.event.EventListener
6
6
  import com.theoplayer.android.api.event.player.theolive.DistributionLoadStartEvent
7
+ import com.theoplayer.android.api.event.player.theolive.DistributionLoadedEvent
7
8
  import com.theoplayer.android.api.event.player.theolive.DistributionOfflineEvent
8
9
  import com.theoplayer.android.api.event.player.theolive.EndpointLoadedEvent
9
10
  import com.theoplayer.android.api.event.player.theolive.IntentToFallbackEvent
@@ -13,8 +14,11 @@ import com.theoplayer.util.PayloadBuilder
13
14
 
14
15
  private const val EVENT_PROP_TYPE = "type"
15
16
  private const val EVENT_PROP_DISTRIBUTION_ID = "distributionId"
17
+ private const val EVENT_PROP_DISTRIBUTION = "distribution"
16
18
  private const val EVENT_PROP_ENDPOINT = "endpoint"
17
19
  private const val EVENT_PROP_REASON = "reason"
20
+ private const val EVENT_PROP_NAME = "name"
21
+ private const val EVENT_PROP_ID = "id"
18
22
 
19
23
  class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitter: Emitter) {
20
24
 
@@ -24,6 +28,8 @@ class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitte
24
28
 
25
29
  private val onDistributionLoadStart =
26
30
  EventListener<DistributionLoadStartEvent> { onDistributionLoadStart(it) }
31
+ private val onDistributionLoaded =
32
+ EventListener<DistributionLoadedEvent> { onDistributionLoaded(it) }
27
33
  private val onDistributionOffline =
28
34
  EventListener<DistributionOfflineEvent> { onDistributionOffline(it) }
29
35
  private val onEndPointLoaded =
@@ -33,6 +39,7 @@ class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitte
33
39
 
34
40
  init {
35
41
  theoLiveApi.addEventListener(TheoLiveEventTypes.DISTRIBUTIONLOADSTART, onDistributionLoadStart)
42
+ theoLiveApi.addEventListener(TheoLiveEventTypes.DISTRIBUTIONLOADED, onDistributionLoaded)
36
43
  theoLiveApi.addEventListener(TheoLiveEventTypes.DISTRIBUTIONOFFLINE, onDistributionOffline)
37
44
  theoLiveApi.addEventListener(TheoLiveEventTypes.ENDPOINTLOADED, onEndPointLoaded)
38
45
  theoLiveApi.addEventListener(TheoLiveEventTypes.INTENTTOFALLBACK, onIntentOfFallback)
@@ -43,6 +50,7 @@ class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitte
43
50
  TheoLiveEventTypes.DISTRIBUTIONLOADSTART,
44
51
  onDistributionLoadStart
45
52
  )
53
+ theoLiveApi.removeEventListener(TheoLiveEventTypes.DISTRIBUTIONLOADED, onDistributionLoaded)
46
54
  theoLiveApi.removeEventListener(TheoLiveEventTypes.DISTRIBUTIONOFFLINE, onDistributionOffline)
47
55
  theoLiveApi.removeEventListener(TheoLiveEventTypes.ENDPOINTLOADED, onEndPointLoaded)
48
56
  theoLiveApi.removeEventListener(TheoLiveEventTypes.INTENTTOFALLBACK, onIntentOfFallback)
@@ -55,6 +63,16 @@ class THEOliveEventAdapter(private val theoLiveApi: TheoLive, private val emitte
55
63
  })
56
64
  }
57
65
 
66
+ private fun onDistributionLoaded(event: DistributionLoadedEvent) {
67
+ emitter.emit(Arguments.createMap().apply {
68
+ putString(EVENT_PROP_TYPE, "distributionloaded")
69
+ putMap(EVENT_PROP_DISTRIBUTION, Arguments.createMap().apply {
70
+ putString(EVENT_PROP_ID, event.getDistribution().id)
71
+ putString(EVENT_PROP_NAME, event.getDistribution().name)
72
+ })
73
+ })
74
+ }
75
+
58
76
  private fun onDistributionOffline(event: DistributionOfflineEvent) {
59
77
  emitter.emit(Arguments.createMap().apply {
60
78
  putString(EVENT_PROP_TYPE, "distributionoffline")
@@ -128,14 +128,21 @@ class NativeAdBreak: THEOplayerSDK.AdBreak {
128
128
  var integration: THEOplayerSDK.AdIntegrationKind
129
129
  /**The type of custom ad integration.*/
130
130
  var customIntegration: String? = nil
131
+ /**
132
+ - For THEOads, this is the interstitial identifier.
133
+ - For Google IMA & DAI, this is the pod index of the ad break.
134
+ - For other integrations, this may be `nil`.
135
+ */
136
+ var id: String? = nil
131
137
 
132
- init(ads: [Ad], maxDuration: Int, maxRemainingDuration: Double, timeOffset: Int, integration: THEOplayerSDK.AdIntegrationKind, customIntegration: String? = nil) {
138
+ init(ads: [Ad], maxDuration: Int, maxRemainingDuration: Double, timeOffset: Int, integration: THEOplayerSDK.AdIntegrationKind, customIntegration: String? = nil, id: String? = nil) {
133
139
  self.ads = ads
134
140
  self.maxDuration = maxDuration
135
141
  self.maxRemainingDuration = maxRemainingDuration
136
142
  self.timeOffset = timeOffset
137
143
  self.integration = integration
138
144
  self.customIntegration = customIntegration
145
+ self.id = id
139
146
  }
140
147
  }
141
148
 
@@ -17,6 +17,18 @@ let PROP_ENDPOINT_PRIORITY: String = "priority"
17
17
  let PROP_ENDPOINT_CONTENT_PROTECTION: String = "contentProtection"
18
18
  let PROP_REASON_ERROR_CODE: String = "errorCode"
19
19
  let PROP_REASON_ERROR_MESSAGE: String = "errorMessage"
20
+ let PROP_DISTRIBUTION_ID: String = "id"
21
+ let PROP_DISTRIBUTION_NAME: String = "name"
22
+
23
+ let PROP_CONTENTPROTECTION_INTEGRATION: String = "integration"
24
+ let PROP_CONTENTPROTECTION_FAIRPLAY: String = "fairplay"
25
+ let PROP_CONTENTPROTECTION_WIDEVINE: String = "widevine"
26
+ let PROP_CONTENTPROTECTION_PLAYREADY: String = "playready"
27
+
28
+ let PROP_LICENSE_CONFIG_LICENSE_URL: String = "licenseUrl"
29
+
30
+ let PROP_KEY_SYSTEM_CONFIG_LICENSE_URL: String = "licenseUrl"
31
+ let PROP_KEY_SYSTEM_CONFIG_CERTIFICATE_URL: String = "certificateUrl"
20
32
 
21
33
  class THEOplayerRCTTHEOliveEventAdapter {
22
34
 
@@ -43,14 +55,55 @@ class THEOplayerRCTTHEOliveEventAdapter {
43
55
  if let adSrc = endpoint.adSrc {
44
56
  endpointData[PROP_ENDPOINT_AD_SRC] = adSrc
45
57
  }
46
- //if let contentProtection = endpoint.contentProtection {
47
- // TODO: not yet available on native iOS SDK.
48
- //}
58
+ if let contentProtection = endpoint.channelContentProtection {
59
+ endpointData[PROP_ENDPOINT_CONTENT_PROTECTION] = THEOplayerRCTTHEOliveEventAdapter.fromContentProtection(contentProtection: contentProtection)
60
+ }
49
61
  endpointData[PROP_ENDPOINT_WEIGHT] = endpoint.weight
50
62
  endpointData[PROP_ENDPOINT_PRIORITY] = endpoint.priority
51
63
  return endpointData
52
64
  }
53
65
 
66
+ class func fromContentProtection(contentProtection: (any THEOplayerTHEOliveIntegration.ChannelContentProtection)?) -> [String:Any] {
67
+ guard let contentProtection = contentProtection else {
68
+ return [:]
69
+ }
70
+
71
+ var contentProtectionData: [String:Any] = [:]
72
+ contentProtectionData[PROP_CONTENTPROTECTION_INTEGRATION] = contentProtection.integration
73
+ if let keySystem = contentProtection.fairplay {
74
+ contentProtectionData[PROP_CONTENTPROTECTION_FAIRPLAY] = THEOplayerRCTTHEOliveEventAdapter.fromKeySystem(keySystem: keySystem)
75
+ }
76
+ if let licenseConfiguration = contentProtection.widevine {
77
+ contentProtectionData[PROP_CONTENTPROTECTION_WIDEVINE] = THEOplayerRCTTHEOliveEventAdapter.fromLicenseConfiguration(licenseConfiguration: licenseConfiguration)
78
+ }
79
+ if let licenseConfiguration = contentProtection.playready {
80
+ contentProtectionData[PROP_CONTENTPROTECTION_PLAYREADY] = THEOplayerRCTTHEOliveEventAdapter.fromLicenseConfiguration(licenseConfiguration: licenseConfiguration)
81
+ }
82
+
83
+ return contentProtectionData
84
+ }
85
+
86
+ class func fromKeySystem(keySystem: (any THEOplayerTHEOliveIntegration.KeySystemConfiguration)?) -> [String:Any] {
87
+ guard let keySystem = keySystem else {
88
+ return [:]
89
+ }
90
+
91
+ var keySystemData: [String:Any] = [:]
92
+ keySystemData[PROP_KEY_SYSTEM_CONFIG_LICENSE_URL] = keySystem.licenseUrl
93
+ keySystemData[PROP_KEY_SYSTEM_CONFIG_CERTIFICATE_URL] = keySystem.certificateUrl
94
+ return keySystemData
95
+ }
96
+
97
+ class func fromLicenseConfiguration(licenseConfiguration: (any THEOplayerTHEOliveIntegration.LicenseConfiguration)?) -> [String:Any] {
98
+ guard let licenseConfiguration = licenseConfiguration else {
99
+ return [:]
100
+ }
101
+
102
+ var licenseConfigurationData: [String:Any] = [:]
103
+ licenseConfigurationData[PROP_LICENSE_CONFIG_LICENSE_URL] = licenseConfiguration.licenseUrl
104
+ return licenseConfigurationData
105
+ }
106
+
54
107
  class func fromReason(reason: THEOplayerSDK.THEOError?) -> [String:Any] {
55
108
  guard let reason = reason else {
56
109
  return [:]
@@ -61,6 +114,20 @@ class THEOplayerRCTTHEOliveEventAdapter {
61
114
  PROP_REASON_ERROR_MESSAGE: reason.message
62
115
  ]
63
116
  }
117
+
118
+ class func fromDistribution(distribution: (any THEOplayerTHEOliveIntegration.DistributionAPI)?) -> [String:Any] {
119
+ guard let distribution = distribution else {
120
+ return [:]
121
+ }
122
+
123
+ var distributionData: [String:Any] = [:]
124
+ distributionData[PROP_DISTRIBUTION_ID] = distribution.id
125
+ distributionData[PROP_DISTRIBUTION_NAME] = distribution.name
126
+
127
+ return distributionData
128
+ }
129
+
130
+
64
131
  #endif
65
132
 
66
133
  }
@@ -8,12 +8,14 @@ import THEOplayerTHEOliveIntegration
8
8
  #endif
9
9
 
10
10
  let EVENT_TYPE_DISTRIBUTION_LOAD_START: String = "distributionloadstart"
11
+ let EVENT_TYPE_DISTRIBUTION_LOADED: String = "distributionloaded"
11
12
  let EVENT_TYPE_DISTRIBUTION_OFFLINE: String = "distributionoffline"
12
13
  let EVENT_TYPE_ENDPOINT_LOADED: String = "endpointloaded"
13
14
  let EVENT_TYPE_INTENT_TO_FALLBACK: String = "intenttofallback"
14
15
 
15
16
  let THEOLIVE_EVENT_PROP_TYPE: String = "type"
16
17
  let THEOLIVE_EVENT_PROP_DISTRIBUTION_ID: String = "distributionId"
18
+ let THEOLIVE_EVENT_PROP_DISTRIBUTION: String = "distribution"
17
19
  let THEOLIVE_EVENT_PROP_ENDPOINT: String = "endpoint"
18
20
  let THEOLIVE_EVENT_PROP_REASON: String = "reason"
19
21
 
@@ -26,6 +28,7 @@ class THEOplayerRCTTHEOliveEventHandler {
26
28
 
27
29
  // MARK: THEOlive Listeners
28
30
  private var distributionLoadStartListener: EventListener?
31
+ private var distributionLoadedListener: EventListener?
29
32
  private var distributionOfflineListener: EventListener?
30
33
  private var endPointLoadedListener: EventListener?
31
34
  private var intentToFallbackListener: EventListener?
@@ -62,8 +65,21 @@ class THEOplayerRCTTHEOliveEventHandler {
62
65
  }
63
66
  }
64
67
  if DEBUG_EVENTHANDLER { PrintUtils.printLog(logText: "[NATIVE] DistributionLoadStart listener attached to THEOplayer.theolive") }
65
-
66
-
68
+
69
+
70
+ // DISTRIBUTION_LOADED
71
+ self.distributionLoadedListener = player.theoLive?.addEventListener(type: THEOliveEventTypes.DISTRIBUTION_LOADED) { [weak self] event in
72
+ if DEBUG_THEOPLAYER_EVENTS { PrintUtils.printLog(logText: "[NATIVE] Received DistributionLoaded event from THEOlive") }
73
+ if let forwardedTHEOliveEvent = self?.onNativeTHEOliveEvent {
74
+ forwardedTHEOliveEvent([
75
+ THEOLIVE_EVENT_PROP_TYPE: EVENT_TYPE_DISTRIBUTION_LOADED,
76
+ THEOLIVE_EVENT_PROP_DISTRIBUTION: THEOplayerRCTTHEOliveEventAdapter.fromDistribution(distribution: event.distribution)
77
+ ])
78
+ }
79
+ }
80
+ if DEBUG_EVENTHANDLER { PrintUtils.printLog(logText: "[NATIVE] DistributionOffline listener attached to THEOplayer.theolive") }
81
+
82
+
67
83
  // DISTRIBUTION_OFFLINE
68
84
  self.distributionOfflineListener = player.theoLive?.addEventListener(type: THEOliveEventTypes.DISTRIBUTION_OFFLINE) { [weak self] event in
69
85
  if DEBUG_THEOPLAYER_EVENTS { PrintUtils.printLog(logText: "[NATIVE] Received DistributionOffline event from THEOlive") }
@@ -116,7 +132,16 @@ class THEOplayerRCTTHEOliveEventHandler {
116
132
  )
117
133
  if DEBUG_EVENTHANDLER { PrintUtils.printLog(logText: "[NATIVE] DistributionLoadStart listener detached from THEOplayer.theolive") }
118
134
  }
119
-
135
+
136
+ // DISTRIBUTION_LOADED
137
+ if let distributionLoadedListener = self.distributionLoadedListener {
138
+ player.theoLive?.removeEventListener(
139
+ type: THEOliveEventTypes.DISTRIBUTION_LOADED,
140
+ listener: distributionLoadedListener
141
+ )
142
+ if DEBUG_EVENTHANDLER { PrintUtils.printLog(logText: "[NATIVE] DistributionLoaded listener detached from THEOplayer.theolive") }
143
+ }
144
+
120
145
  // DISTRIBUTION_OFFLINE
121
146
  if let distributionOfflineListener = self.distributionOfflineListener {
122
147
  player.theoLive?.removeEventListener(
@@ -16,6 +16,11 @@ exports.TheoLiveEventType = void 0;
16
16
  *
17
17
  * @public
18
18
  */
19
+ /**
20
+ * Dispatched when a THEOlive distribution has been successfully loaded.
21
+ *
22
+ * @public
23
+ */
19
24
  /**
20
25
  * Dispatched when the loading of a THEOlive endpoint is complete and playback can start.
21
26
  * This event is dispatched on every endpoint load, when an error is encountered and the player recovers by choosing
@@ -37,6 +42,7 @@ exports.TheoLiveEventType = void 0;
37
42
  */
38
43
  let TheoLiveEventType = exports.TheoLiveEventType = /*#__PURE__*/function (TheoLiveEventType) {
39
44
  TheoLiveEventType["DISTRIBUTION_LOAD_START"] = "distributionloadstart";
45
+ TheoLiveEventType["DISTRIBUTION_LOADED"] = "distributionloaded";
40
46
  TheoLiveEventType["DISTRIBUTION_OFFLINE"] = "distributionoffline";
41
47
  TheoLiveEventType["ENDPOINT_LOADED"] = "endpointloaded";
42
48
  TheoLiveEventType["INTENT_TO_FALLBACK"] = "intenttofallback";
@@ -1 +1 @@
1
- {"version":3,"names":["TheoLiveEventType","exports"],"sourceRoot":"../../../../src","sources":["api/event/TheoLiveEvent.ts"],"mappings":";;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AALA,IAMYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["TheoLiveEventType","exports"],"sourceRoot":"../../../../src","sources":["api/event/TheoLiveEvent.ts"],"mappings":";;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AALA,IAMYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=TheoLiveDistribution.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["api/theolive/TheoLiveDistribution.ts"],"mappings":"","ignoreList":[]}
@@ -36,6 +36,17 @@ Object.keys(_TheoLiveEndpoint).forEach(function (key) {
36
36
  }
37
37
  });
38
38
  });
39
+ var _TheoLiveDistribution = require("./TheoLiveDistribution");
40
+ Object.keys(_TheoLiveDistribution).forEach(function (key) {
41
+ if (key === "default" || key === "__esModule") return;
42
+ if (key in exports && exports[key] === _TheoLiveDistribution[key]) return;
43
+ Object.defineProperty(exports, key, {
44
+ enumerable: true,
45
+ get: function () {
46
+ return _TheoLiveDistribution[key];
47
+ }
48
+ });
49
+ });
39
50
  var _TheoLiveSource = require("./TheoLiveSource");
40
51
  Object.keys(_TheoLiveSource).forEach(function (key) {
41
52
  if (key === "default" || key === "__esModule") return;
@@ -47,4 +58,15 @@ Object.keys(_TheoLiveSource).forEach(function (key) {
47
58
  }
48
59
  });
49
60
  });
61
+ var _WebrtcOptions = require("./WebrtcOptions");
62
+ Object.keys(_WebrtcOptions).forEach(function (key) {
63
+ if (key === "default" || key === "__esModule") return;
64
+ if (key in exports && exports[key] === _WebrtcOptions[key]) return;
65
+ Object.defineProperty(exports, key, {
66
+ enumerable: true,
67
+ get: function () {
68
+ return _WebrtcOptions[key];
69
+ }
70
+ });
71
+ });
50
72
  //# sourceMappingURL=barrel.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_TheoLiveAPI","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_TheoLiveConfiguration","_TheoLiveEndpoint","_TheoLiveSource"],"sourceRoot":"../../../../src","sources":["api/theolive/barrel.ts"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,sBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,sBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,sBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,sBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,iBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,iBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,iBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,iBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,eAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,eAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,eAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,eAAA,CAAAP,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["_TheoLiveAPI","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_TheoLiveConfiguration","_TheoLiveEndpoint","_TheoLiveDistribution","_TheoLiveSource","_WebrtcOptions"],"sourceRoot":"../../../../src","sources":["api/theolive/barrel.ts"],"mappings":";;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,YAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,YAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,YAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,sBAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,sBAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,sBAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,sBAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,iBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,iBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,iBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,iBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA;AACA,IAAAO,qBAAA,GAAAX,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAS,qBAAA,EAAAR,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAO,qBAAA,CAAAP,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAG,qBAAA,CAAAP,GAAA;IAAA;EAAA;AAAA;AACA,IAAAQ,eAAA,GAAAZ,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAU,eAAA,EAAAT,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAQ,eAAA,CAAAR,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAI,eAAA,CAAAR,GAAA;IAAA;EAAA;AAAA;AACA,IAAAS,cAAA,GAAAb,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAW,cAAA,EAAAV,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAS,cAAA,CAAAT,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAK,cAAA,CAAAT,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -38,11 +38,11 @@ class THEOplayerView extends _react.PureComponent {
38
38
  this._facade = new _THEOplayerAdapter.THEOplayerAdapter(this);
39
39
  }
40
40
  componentDidMount() {
41
+ this._facade.initialize();
42
+
43
+ // On iOS we use the native deviceOrientation event, on Android a private `_didUpdateDimensions` event.
41
44
  if (_reactNative.Platform.OS !== 'ios') {
42
- // On iOS we use the native deviceOrientation event, on Android a private `_didUpdateDimensions` event.
43
- this._dimensionsHandler = _reactNative.DeviceEventEmitter.addListener('_didUpdateDimensions', () => {
44
- this._onDimensionsChanged();
45
- });
45
+ this._dimensionsHandler = _reactNative.DeviceEventEmitter.addListener('_didUpdateDimensions', this._onDimensionsChanged);
46
46
  }
47
47
  }
48
48
  componentWillUnmount() {
@@ -50,15 +50,10 @@ class THEOplayerView extends _react.PureComponent {
50
50
  this._facade.willUnmount();
51
51
 
52
52
  // Notify the player will be destroyed.
53
- const {
54
- onPlayerDestroy
55
- } = this.props;
56
- if (onPlayerDestroy) {
57
- onPlayerDestroy(this._facade);
58
- }
53
+ this.props.onPlayerDestroy?.(this._facade);
59
54
  this._facade.dispatchEvent(new _BaseEvent.BaseEvent(_reactNativeTheoplayer.PlayerEventType.DESTROY));
60
55
  this._dimensionsHandler?.remove();
61
- this._facade.clearEventListeners();
56
+ this._facade.destroy();
62
57
  }
63
58
  get nativeHandle() {
64
59
  return (0, _reactNative.findNodeHandle)(this._root.current) || INVALID_HANDLE;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeTheoplayer","_THEOplayerView","_interopRequireDefault","_TypeUtils","_BaseEvent","_PlayerEvents","_NativeTrackEvent","_NativeTheoLiveEvent","_NativeTheoAdsEvent","_THEOplayerAdapter","_Dimensions","_Poster","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","INVALID_HANDLE","THEOplayerView","PureComponent","_dimensionsHandler","undefined","initialState","error","presentationMode","PresentationMode","inline","screenSize","getFullscreenSize","posterActive","poster","constructor","props","_root","React","createRef","state","_facade","THEOplayerAdapter","componentDidMount","Platform","OS","DeviceEventEmitter","addListener","_onDimensionsChanged","componentWillUnmount","willUnmount","onPlayerDestroy","dispatchEvent","BaseEvent","PlayerEventType","DESTROY","remove","clearEventListeners","nativeHandle","findNodeHandle","current","reset","setState","prevState","_onDeviceOrientationChanged","_onNativePlayerReady","event","version","nativeEvent","initializeFromNativePlayer_","then","onPlayerReady","_onNativePlayerStateSync","updateStateFromNativePlayer_","_onSourceChange","SOURCE_CHANGE","_updatePoster","autoplay","_showPoster","_onLoadStart","LOAD_START","_onLoadedData","LOADED_DATA","_onLoadedMetadata","DefaultLoadedMetadataEvent","textTracks","audioTracks","videoTracks","decodeNanInf","duration","selectedTextTrack","selectedVideoTrack","selectedAudioTrack","_onVolumeChange","DefaultVolumeChangeEvent","volume","muted","_onError","DefaultErrorEvent","_onProgress","DefaultProgressEvent","seekable","buffered","_onCanPlay","CANPLAY","_onPlay","PLAY","_onPlaying","PLAYING","_hidePoster","_onPause","PAUSE","_onSeeking","DefaultSeekingEvent","currentTime","_onSeeked","DefaultSeekedEvent","_onWaiting","WAITING","_onEnded","ENDED","_onReadStateChange","DefaultReadyStateChangeEvent","readyState","_onTimeUpdate","DefaultTimeupdateEvent","currentProgramDateTime","_onDurationChange","DefaultDurationChangeEvent","_onRateChange","DefaultRateChangeEvent","playbackRate","_onSegmentNotFound","DefaultSegmentNotFoundEvent","segmentStartTime","retryCount","_onTextTrackListEvent","DefaultTextTrackListEvent","toTrackListEventType","type","track","_onTextTrackEvent","cue","normalizeCue","DefaultTextTrackEvent","toTextTrackEventType","trackUid","startTime","endTime","isDateRangeCue","startDate","Date","endDate","plannedDuration","_onMediaTrackListEvent","DefaultMediaTrackListEvent","toMediaTrackType","trackType","_onMediaTrackEvent","DefaultMediaTrackEvent","toMediaTrackTypeEventType","qualities","_onAdEvent","DefaultAdEvent","ad","_onTHEOliveEvent","fromNativeTheoLiveEvent","_onTHEOadsEvent","theoAdsEvent","fromNativeTheoAdsEvent","_onCastEvent","CastEventType","CHROMECAST_STATE_CHANGE","DefaultChromecastChangeEvent","AIRPLAY_STATE_CHANGE","DefaultAirplayStateChangeEvent","CHROMECAST_ERROR","DefaultChromecastErrorEvent","_onPresentationModeChange","fullscreen","DefaultPresentationModeChangeEvent","previousPresentationMode","context","_onDimensionChange","width","height","DefaultResizeEvent","DefaultDimensionChangeEvent","_onVideoResize","DefaultVideoResizeEvent","videoWidth","videoHeight","source","styleOverride","fullscreenSize","pip","pipConfiguration","reparentPip","render","config","style","posterStyle","children","jsxs","View","styles","base","jsx","THEOplayerRCTView","ref","StyleSheet","absoluteFill","onNativePlayerReady","onNativePlayerStateSync","onNativeSourceChange","onNativeLoadStart","onNativeLoadedData","onNativeLoadedMetadata","onNativeVolumeChange","onNativeError","onNativeProgress","onNativeCanPlay","onNativePlay","onNativePlaying","onNativePause","onNativeSeeking","onNativeSeeked","onNativeWaiting","onNativeEnded","onNativeReadyStateChange","onNativeTimeUpdate","onNativeDurationChange","onNativeRateChange","onNativeSegmentNotFound","onNativeTextTrackListEvent","onNativeTextTrackEvent","onNativeMediaTrackListEvent","onNativeMediaTrackEvent","onNativeAdEvent","onNativeTHEOliveEvent","onNativeTHEOadsEvent","onNativeCastEvent","onNativePresentationModeChange","onNativeDeviceOrientationChanged","onNativeDimensionChange","onNativeVideoResize","Poster","uri","exports","LINKING_ERROR","select","ios","ComponentName","UIManager","getViewManagerConfig","requireNativeComponent","Error"],"sourceRoot":"../../../src","sources":["internal/THEOplayerView.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_reactNative","_reactNativeTheoplayer","_THEOplayerView","_interopRequireDefault","_TypeUtils","_BaseEvent","_PlayerEvents","_NativeTrackEvent","_NativeTheoLiveEvent","_NativeTheoAdsEvent","_THEOplayerAdapter","_Dimensions","_Poster","_jsxRuntime","e","__esModule","default","_getRequireWildcardCache","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","INVALID_HANDLE","THEOplayerView","PureComponent","_dimensionsHandler","undefined","initialState","error","presentationMode","PresentationMode","inline","screenSize","getFullscreenSize","posterActive","poster","constructor","props","_root","React","createRef","state","_facade","THEOplayerAdapter","componentDidMount","initialize","Platform","OS","DeviceEventEmitter","addListener","_onDimensionsChanged","componentWillUnmount","willUnmount","onPlayerDestroy","dispatchEvent","BaseEvent","PlayerEventType","DESTROY","remove","destroy","nativeHandle","findNodeHandle","current","reset","setState","prevState","_onDeviceOrientationChanged","_onNativePlayerReady","event","version","nativeEvent","initializeFromNativePlayer_","then","onPlayerReady","_onNativePlayerStateSync","updateStateFromNativePlayer_","_onSourceChange","SOURCE_CHANGE","_updatePoster","autoplay","_showPoster","_onLoadStart","LOAD_START","_onLoadedData","LOADED_DATA","_onLoadedMetadata","DefaultLoadedMetadataEvent","textTracks","audioTracks","videoTracks","decodeNanInf","duration","selectedTextTrack","selectedVideoTrack","selectedAudioTrack","_onVolumeChange","DefaultVolumeChangeEvent","volume","muted","_onError","DefaultErrorEvent","_onProgress","DefaultProgressEvent","seekable","buffered","_onCanPlay","CANPLAY","_onPlay","PLAY","_onPlaying","PLAYING","_hidePoster","_onPause","PAUSE","_onSeeking","DefaultSeekingEvent","currentTime","_onSeeked","DefaultSeekedEvent","_onWaiting","WAITING","_onEnded","ENDED","_onReadStateChange","DefaultReadyStateChangeEvent","readyState","_onTimeUpdate","DefaultTimeupdateEvent","currentProgramDateTime","_onDurationChange","DefaultDurationChangeEvent","_onRateChange","DefaultRateChangeEvent","playbackRate","_onSegmentNotFound","DefaultSegmentNotFoundEvent","segmentStartTime","retryCount","_onTextTrackListEvent","DefaultTextTrackListEvent","toTrackListEventType","type","track","_onTextTrackEvent","cue","normalizeCue","DefaultTextTrackEvent","toTextTrackEventType","trackUid","startTime","endTime","isDateRangeCue","startDate","Date","endDate","plannedDuration","_onMediaTrackListEvent","DefaultMediaTrackListEvent","toMediaTrackType","trackType","_onMediaTrackEvent","DefaultMediaTrackEvent","toMediaTrackTypeEventType","qualities","_onAdEvent","DefaultAdEvent","ad","_onTHEOliveEvent","fromNativeTheoLiveEvent","_onTHEOadsEvent","theoAdsEvent","fromNativeTheoAdsEvent","_onCastEvent","CastEventType","CHROMECAST_STATE_CHANGE","DefaultChromecastChangeEvent","AIRPLAY_STATE_CHANGE","DefaultAirplayStateChangeEvent","CHROMECAST_ERROR","DefaultChromecastErrorEvent","_onPresentationModeChange","fullscreen","DefaultPresentationModeChangeEvent","previousPresentationMode","context","_onDimensionChange","width","height","DefaultResizeEvent","DefaultDimensionChangeEvent","_onVideoResize","DefaultVideoResizeEvent","videoWidth","videoHeight","source","styleOverride","fullscreenSize","pip","pipConfiguration","reparentPip","render","config","style","posterStyle","children","jsxs","View","styles","base","jsx","THEOplayerRCTView","ref","StyleSheet","absoluteFill","onNativePlayerReady","onNativePlayerStateSync","onNativeSourceChange","onNativeLoadStart","onNativeLoadedData","onNativeLoadedMetadata","onNativeVolumeChange","onNativeError","onNativeProgress","onNativeCanPlay","onNativePlay","onNativePlaying","onNativePause","onNativeSeeking","onNativeSeeked","onNativeWaiting","onNativeEnded","onNativeReadyStateChange","onNativeTimeUpdate","onNativeDurationChange","onNativeRateChange","onNativeSegmentNotFound","onNativeTextTrackListEvent","onNativeTextTrackEvent","onNativeMediaTrackListEvent","onNativeMediaTrackEvent","onNativeAdEvent","onNativeTHEOliveEvent","onNativeTHEOadsEvent","onNativeCastEvent","onNativePresentationModeChange","onNativeDeviceOrientationChanged","onNativeDimensionChange","onNativeVideoResize","Poster","uri","exports","LINKING_ERROR","select","ios","ComponentName","UIManager","getViewManagerConfig","requireNativeComponent","Error"],"sourceRoot":"../../../src","sources":["internal/THEOplayerView.tsx"],"mappings":"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","ignoreList":[]}
@@ -28,6 +28,8 @@ class THEOplayerAdapter extends _DefaultEventDispatcher.DefaultEventDispatcher {
28
28
  this._abrAdapter = new _AbrAdapter.AbrAdapter(this._view);
29
29
  this._textTrackStyleAdapter = new _TextTrackStyleAdapter.TextTrackStyleAdapter(this._view);
30
30
  this._theoliveAdapter = new _TheoLiveNativeAdapter.TheoLiveNativeAdapter(this._view);
31
+ }
32
+ initialize() {
31
33
  this.addEventListener(_reactNativeTheoplayer.PlayerEventType.LOADED_METADATA, this.onLoadedMetadata);
32
34
  this.addEventListener(_reactNativeTheoplayer.PlayerEventType.PAUSE, this.onPause);
33
35
  this.addEventListener(_reactNativeTheoplayer.PlayerEventType.PLAYING, this.onPlaying);
@@ -43,6 +45,9 @@ class THEOplayerAdapter extends _DefaultEventDispatcher.DefaultEventDispatcher {
43
45
  this.addEventListener(_reactNativeTheoplayer.PlayerEventType.DIMENSION_CHANGE, this.onDimensionChange);
44
46
  this.addEventListener(_reactNativeTheoplayer.PlayerEventType.VIDEO_RESIZE, this.onVideoResize);
45
47
  }
48
+ destroy() {
49
+ this.clearEventListeners();
50
+ }
46
51
  hasValidSource() {
47
52
  return this._state.source !== undefined;
48
53
  }