react-native-theoplayer 10.13.0 → 11.1.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 (115) hide show
  1. package/CHANGELOG.md +34 -0
  2. package/android/build.gradle +13 -7
  3. package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/11.0.0/ads-wrapper-11.0.0.aar +0 -0
  4. package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/{10.12.0/ads-wrapper-10.12.0.pom → 11.0.0/ads-wrapper-11.0.0.pom} +3 -3
  5. package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/maven-metadata-local.xml +4 -4
  6. package/android/src/main/java/com/theoplayer/PlayerConfigAdapter.kt +12 -7
  7. package/android/src/main/java/com/theoplayer/ads/AdAdapter.kt +7 -12
  8. package/android/src/main/java/com/theoplayer/cast/CastModule.kt +0 -1
  9. package/android/src/main/java/com/theoplayer/track/TrackListAdapter.kt +14 -17
  10. package/ios/.editorconfig +7 -0
  11. package/ios/THEOplayerRCTBridge.m +1 -1
  12. package/ios/THEOplayerRCTPlayerAPI.swift +26 -6
  13. package/ios/THEOplayerRCTSourceDescriptionBuilder.swift +18 -3
  14. package/ios/ads/THEOplayerRCTAdAdapter.swift +2 -2
  15. package/ios/ads/THEOplayerRCTAdsNative.swift +1 -1
  16. package/ios/contentprotection/THEOplayerRCTContentProtectionAggregator.swift +10 -0
  17. package/lib/commonjs/api/event/PlayerEvent.js +0 -9
  18. package/lib/commonjs/api/event/PlayerEvent.js.map +1 -1
  19. package/lib/commonjs/api/player/PlayerEventMap.js +0 -1
  20. package/lib/commonjs/api/player/PlayerEventMap.js.map +1 -1
  21. package/lib/commonjs/api/source/SourceDescription.js +0 -80
  22. package/lib/commonjs/api/source/SourceDescription.js.map +1 -1
  23. package/lib/commonjs/api/source/ads/Ads.js.map +1 -1
  24. package/lib/commonjs/api/track/TextTrack.js.map +1 -1
  25. package/lib/commonjs/internal/THEOplayerView.js +0 -1
  26. package/lib/commonjs/internal/THEOplayerView.js.map +1 -1
  27. package/lib/commonjs/internal/THEOplayerView.web.js +5 -3
  28. package/lib/commonjs/internal/THEOplayerView.web.js.map +1 -1
  29. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js +0 -3
  30. package/lib/commonjs/internal/adapter/THEOplayerAdapter.js.map +1 -1
  31. package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js +0 -3
  32. package/lib/commonjs/internal/adapter/THEOplayerWebAdapter.js.map +1 -1
  33. package/lib/commonjs/internal/adapter/WebEventForwarder.js +0 -1
  34. package/lib/commonjs/internal/adapter/WebEventForwarder.js.map +1 -1
  35. package/lib/commonjs/internal/adapter/event/PlayerEvents.js +1 -13
  36. package/lib/commonjs/internal/adapter/event/PlayerEvents.js.map +1 -1
  37. package/lib/commonjs/internal/adapter/web/TrackUtils.js +3 -1
  38. package/lib/commonjs/internal/adapter/web/TrackUtils.js.map +1 -1
  39. package/lib/commonjs/internal/hooks/useIsAttached.js +48 -0
  40. package/lib/commonjs/internal/hooks/useIsAttached.js.map +1 -0
  41. package/lib/commonjs/manifest.json +1 -1
  42. package/lib/module/api/event/PlayerEvent.js +0 -10
  43. package/lib/module/api/event/PlayerEvent.js.map +1 -1
  44. package/lib/module/api/player/PlayerEventMap.js +0 -1
  45. package/lib/module/api/player/PlayerEventMap.js.map +1 -1
  46. package/lib/module/api/source/SourceDescription.js +1 -88
  47. package/lib/module/api/source/SourceDescription.js.map +1 -1
  48. package/lib/module/api/source/ads/Ads.js.map +1 -1
  49. package/lib/module/api/track/TextTrack.js.map +1 -1
  50. package/lib/module/internal/THEOplayerView.js +1 -2
  51. package/lib/module/internal/THEOplayerView.js.map +1 -1
  52. package/lib/module/internal/THEOplayerView.web.js +5 -3
  53. package/lib/module/internal/THEOplayerView.web.js.map +1 -1
  54. package/lib/module/internal/adapter/THEOplayerAdapter.js +0 -3
  55. package/lib/module/internal/adapter/THEOplayerAdapter.js.map +1 -1
  56. package/lib/module/internal/adapter/THEOplayerWebAdapter.js +0 -3
  57. package/lib/module/internal/adapter/THEOplayerWebAdapter.js.map +1 -1
  58. package/lib/module/internal/adapter/WebEventForwarder.js +1 -2
  59. package/lib/module/internal/adapter/WebEventForwarder.js.map +1 -1
  60. package/lib/module/internal/adapter/event/PlayerEvents.js +0 -11
  61. package/lib/module/internal/adapter/event/PlayerEvents.js.map +1 -1
  62. package/lib/module/internal/adapter/web/TrackUtils.js +3 -1
  63. package/lib/module/internal/adapter/web/TrackUtils.js.map +1 -1
  64. package/lib/module/internal/hooks/useIsAttached.js +43 -0
  65. package/lib/module/internal/hooks/useIsAttached.js.map +1 -0
  66. package/lib/module/manifest.json +1 -1
  67. package/lib/typescript/api/config/PlayerConfiguration.d.ts +11 -0
  68. package/lib/typescript/api/config/PlayerConfiguration.d.ts.map +1 -1
  69. package/lib/typescript/api/event/PlayerEvent.d.ts +0 -19
  70. package/lib/typescript/api/event/PlayerEvent.d.ts.map +1 -1
  71. package/lib/typescript/api/player/PlayerEventMap.d.ts +1 -11
  72. package/lib/typescript/api/player/PlayerEventMap.d.ts.map +1 -1
  73. package/lib/typescript/api/player/THEOplayer.d.ts +0 -6
  74. package/lib/typescript/api/player/THEOplayer.d.ts.map +1 -1
  75. package/lib/typescript/api/source/SourceDescription.d.ts +0 -20
  76. package/lib/typescript/api/source/SourceDescription.d.ts.map +1 -1
  77. package/lib/typescript/api/source/ads/Ads.d.ts +3 -2
  78. package/lib/typescript/api/source/ads/Ads.d.ts.map +1 -1
  79. package/lib/typescript/api/theolive/TheoLiveSource.d.ts +3 -3
  80. package/lib/typescript/api/theolive/TheoLiveSource.d.ts.map +1 -1
  81. package/lib/typescript/api/track/TextTrack.d.ts +11 -0
  82. package/lib/typescript/api/track/TextTrack.d.ts.map +1 -1
  83. package/lib/typescript/internal/THEOplayerView.d.ts.map +1 -1
  84. package/lib/typescript/internal/THEOplayerView.web.d.ts.map +1 -1
  85. package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts +0 -1
  86. package/lib/typescript/internal/adapter/THEOplayerAdapter.d.ts.map +1 -1
  87. package/lib/typescript/internal/adapter/THEOplayerWebAdapter.d.ts +0 -1
  88. package/lib/typescript/internal/adapter/THEOplayerWebAdapter.d.ts.map +1 -1
  89. package/lib/typescript/internal/adapter/WebEventForwarder.d.ts.map +1 -1
  90. package/lib/typescript/internal/adapter/event/PlayerEvents.d.ts +1 -9
  91. package/lib/typescript/internal/adapter/event/PlayerEvents.d.ts.map +1 -1
  92. package/lib/typescript/internal/adapter/web/TrackUtils.d.ts.map +1 -1
  93. package/lib/typescript/internal/hooks/useIsAttached.d.ts +16 -0
  94. package/lib/typescript/internal/hooks/useIsAttached.d.ts.map +1 -0
  95. package/package.json +9 -9
  96. package/react-native-theoplayer.podspec +8 -8
  97. package/src/api/config/PlayerConfiguration.ts +12 -0
  98. package/src/api/event/PlayerEvent.ts +0 -21
  99. package/src/api/player/PlayerEventMap.ts +0 -12
  100. package/src/api/player/THEOplayer.ts +0 -7
  101. package/src/api/source/SourceDescription.ts +0 -22
  102. package/src/api/source/ads/Ads.ts +3 -2
  103. package/src/api/theolive/TheoLiveSource.ts +3 -3
  104. package/src/api/track/TextTrack.ts +12 -0
  105. package/src/internal/THEOplayerView.tsx +0 -2
  106. package/src/internal/THEOplayerView.web.tsx +6 -4
  107. package/src/internal/adapter/THEOplayerAdapter.ts +0 -4
  108. package/src/internal/adapter/THEOplayerWebAdapter.ts +0 -4
  109. package/src/internal/adapter/WebEventForwarder.ts +0 -2
  110. package/src/internal/adapter/event/PlayerEvents.ts +0 -13
  111. package/src/internal/adapter/track/TextTrackStyleAdapter.ts +4 -4
  112. package/src/internal/adapter/web/TrackUtils.ts +2 -1
  113. package/src/internal/hooks/useIsAttached.ts +44 -0
  114. package/src/manifest.json +1 -1
  115. package/android/local/com/theoplayer/theoplayer-sdk-android/ads-wrapper/10.12.0/ads-wrapper-10.12.0.aar +0 -0
package/CHANGELOG.md CHANGED
@@ -5,6 +5,40 @@ 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
+ ## [11.1.0] - 26-05-27
9
+
10
+ ### Added
11
+
12
+ - Added `useSystemCaptionStyle` flag to `PlayerConfiguration` on Android. When set to `true`, the player will apply the caption styles as configured in the system settings.
13
+ - Added support on iOS for controlling the targetQualities on THEOlive streams.
14
+
15
+ ### Fixed
16
+
17
+ - Fixed an issue where on iOS the contentProtection queryParameters were not converted to string values, resulting in missing parameters in the urls.
18
+
19
+ ## [11.0.0] - 26-04-16
20
+
21
+ ### Added
22
+
23
+ - Added support for player SDK v11. More info on the [migration documentation](./doc/migrating-to-react-native-theoplayer-11.md) page.
24
+ - Enabled core library desugaring for Android to support version 3.39.0 of the Google IMA SDK.
25
+ - Added `TextTrack.captionChannel` to retrieve the CEA-608 channel and/or CEA-708 service numbers of closed caption text tracks.
26
+
27
+ ### Changed
28
+
29
+ - Upgraded example app to React-Native v0.84.1.
30
+ - Changed the minimum supported iOS/tvOS version to 15.0, dropping support for iOS/tvOS 13 and 14.
31
+
32
+ ### Fixed
33
+
34
+ - Fixed an issue on Web where Google IMA could fail to initialize when used with `react-reverse-portal` due to the player container not being attached to the document yet.
35
+
36
+ ### Removed
37
+
38
+ - Removed deprecated `ResizeEvent` in favor of `DimensionChangeEvent`.
39
+ - Removed deprecated `player.theolive` property in favor of `player.theoLive`.
40
+ - Removed deprecated `source.integration` property in favor of `source.type`.
41
+
8
42
  ## [10.13.0] - 26-03-27
9
43
 
10
44
  ### Fixed
@@ -9,7 +9,7 @@ buildscript {
9
9
  }
10
10
 
11
11
  dependencies {
12
- classpath "com.android.tools.build:gradle:${safeExtGet('gradlePluginVersion', '8.12.3')}"
12
+ classpath "com.android.tools.build:gradle:${safeExtGet('gradlePluginVersion', '8.13.0')}"
13
13
  classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${safeExtGet('kotlinVersion', '2.2.10')}"
14
14
  }
15
15
  }
@@ -92,12 +92,16 @@ android {
92
92
  minifyEnabled false
93
93
  }
94
94
  }
95
+ buildFeatures {
96
+ buildConfig true
97
+ }
95
98
  lint {
96
99
  disable 'GradleCompatible'
97
100
  }
98
101
  compileOptions {
99
102
  sourceCompatibility JavaVersion.VERSION_1_8
100
103
  targetCompatibility JavaVersion.VERSION_1_8
104
+ coreLibraryDesugaringEnabled true
101
105
  }
102
106
  packagingOptions {
103
107
  exclude 'META-INF/kotlin-stdlib.kotlin_module'
@@ -122,15 +126,16 @@ repositories {
122
126
  mavenLocal()
123
127
  }
124
128
 
125
- // The minimum supported THEOplayer version is 10.12.0
126
- def theoVersion = safeExtGet('THEOplayer_sdk', '[10.12.0, 11.0.0)')
127
- def theoMediaSessionVersion = safeExtGet('THEOplayer_mediasession', '[8.0.0, 11.0.0)')
128
- def theoAdsWrapperVersion = "10.12.0"
129
+ // The minimum supported THEOplayer version is 11.0.0
130
+ def theoVersion = safeExtGet('THEOplayer_sdk', '[11.0.0, 12.0.0)')
131
+ def theoMediaSessionVersion = safeExtGet('THEOplayer_mediasession', '[11.0.0, 12.0.0)')
132
+ def theoAdsWrapperVersion = "11.0.0"
129
133
  def coroutinesVersion = safeExtGet('coroutinesVersion', '1.10.2')
130
134
  def appcompatVersion = safeExtGet('appcompatVersion', '1.7.1')
131
- def corektxVersion = safeExtGet('corektxVersion', '1.16.0')
132
- def gsonVersion = safeExtGet('gsonVersion', '2.13.1')
135
+ def corektxVersion = safeExtGet('corektxVersion', '1.17.0')
136
+ def gsonVersion = safeExtGet('gsonVersion', '2.13.2')
133
137
  def activityktxVersion = safeExtGet('activityktxVersion', '1.10.1')
138
+ def coreLibraryDesugaringVersion = safeExtGet('coreLibraryDesugaringVersion', '2.1.5')
134
139
 
135
140
  dependencies {
136
141
  def addOptiViewIntegration = { enabled, notation, additional = null ->
@@ -156,6 +161,7 @@ dependencies {
156
161
  implementation("androidx.core:core-ktx:$corektxVersion")
157
162
  implementation("androidx.activity:activity-ktx:$activityktxVersion")
158
163
  implementation("com.google.code.gson:gson:$gsonVersion")
164
+ coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:$coreLibraryDesugaringVersion")
159
165
 
160
166
  println("Using THEOplayer (${versionString(theoVersion)})")
161
167
  implementation("com.theoplayer.theoplayer-sdk-android:core:$theoVersion")
@@ -1,17 +1,17 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
3
3
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
4
- <modelVersion>10.12.0</modelVersion>
4
+ <modelVersion>11.0.0</modelVersion>
5
5
  <groupId>com.theoplayer.theoplayer-sdk-android</groupId>
6
6
  <artifactId>ads-wrapper</artifactId>
7
- <version>10.12.0</version>
7
+ <version>11.0.0</version>
8
8
  <packaging>aar</packaging>
9
9
  <dependencies>
10
10
  <!-- Include transitive dependencies -->
11
11
  <dependency>
12
12
  <groupId>com.theoplayer.theoplayer-sdk-android</groupId>
13
13
  <artifactId>integration-ads-ima</artifactId>
14
- <version>[10.0.0,11.0.0)</version>
14
+ <version>[11.0.0,12.0.0)</version>
15
15
  <scope>runtime</scope>
16
16
  </dependency>
17
17
  </dependencies>
@@ -3,11 +3,11 @@
3
3
  <groupId>com.theoplayer.theoplayer-sdk-android</groupId>
4
4
  <artifactId>ads-wrapper</artifactId>
5
5
  <versioning>
6
- <latest>10.12.0</latest>
7
- <release>10.12.0</release>
6
+ <latest>11.0.0</latest>
7
+ <release>11.0.0</release>
8
8
  <versions>
9
- <version>10.12.0</version>
9
+ <version>11.0.0</version>
10
10
  </versions>
11
- <lastUpdated>20260318164412</lastUpdated>
11
+ <lastUpdated>20260410095400</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -44,6 +44,8 @@ private const val PROP_THEOLIVE_ANALYTICS_DISABLED = "analyticsDisabled"
44
44
  private const val PROP_THEOLIVE_DISCOVERY_URL = "discoveryUrl"
45
45
  private const val PROP_MULTIMEDIA_TUNNELING_ENABLED = "tunnelingEnabled"
46
46
  private const val PROP_DEBUG_LOGS_ENABLED = "debugLogsEnabled"
47
+ private const val PROP_SYSTEM_CAPTION_STYLE = "useSystemCaptionStyle"
48
+
47
49
 
48
50
  class PlayerConfigAdapter(private val configProps: ReadableMap?) {
49
51
 
@@ -83,6 +85,9 @@ class PlayerConfigAdapter(private val configProps: ReadableMap?) {
83
85
  if (hasKey(PROP_MULTIMEDIA_TUNNELING_ENABLED)) {
84
86
  tunnelingEnabled(getBoolean(PROP_MULTIMEDIA_TUNNELING_ENABLED))
85
87
  }
88
+ if (hasKey(PROP_SYSTEM_CAPTION_STYLE)) {
89
+ useSystemCaptionStyle(getBoolean(PROP_SYSTEM_CAPTION_STYLE))
90
+ }
86
91
  }
87
92
  }.build()
88
93
  }
@@ -133,24 +138,24 @@ class PlayerConfigAdapter(private val configProps: ReadableMap?) {
133
138
  getMap(PROP_FEATURE_FLAGS)?.toHashMap()?.forEach { (key, value) ->
134
139
  convertedMap[key] = value as String
135
140
  }
136
- featureFlags = convertedMap
141
+ setFeatureFlags(convertedMap)
137
142
  }
138
143
  // The maximum number of VAST redirects.
139
144
  if (hasKey(PROP_MAX_REDIRECTS)) {
140
145
  maxRedirects = getInt(PROP_MAX_REDIRECTS)
141
146
  }
142
147
  // The partner provided player type.
143
- playerType = "THEOplayer"
148
+ setPlayerType("THEOplayer")
144
149
  // The partner provided player version.
145
- playerVersion = THEOplayerGlobal.getVersion()
150
+ setPlayerVersion(THEOplayerGlobal.getVersion())
146
151
  // The Publisher Provided Identification (PPID) sent with ads request.
147
152
  if (hasKey(PROP_PPID)) {
148
- ppid = getString(PROP_PPID) ?: ""
153
+ setPpid(getString(PROP_PPID) ?: "")
149
154
  }
150
155
  // The session ID to identify a single user session. This should be a UUID. It
151
156
  // is used exclusively for frequency capping across the user session.
152
157
  if (hasKey(PROP_SESSION_ID)) {
153
- sessionId = getString(PROP_PPID) ?: ""
158
+ setSessionId(getString(PROP_PPID) ?: "")
154
159
  }
155
160
  // Toggles debug mode which will output detailed log information to the console.
156
161
  if (hasKey(PROP_ENABLE_DEBUG_MODE)) {
@@ -177,11 +182,11 @@ class PlayerConfigAdapter(private val configProps: ReadableMap?) {
177
182
  enablePreloading = preloadTypeString !== "none"
178
183
  }
179
184
  if (hasKey(PROP_ALLOWED_MIMETYPES)) {
180
- mimeTypes = ArrayList<String>().apply {
185
+ setMimeTypes(ArrayList<String>().apply {
181
186
  getArray(PROP_ALLOWED_MIMETYPES)?.toArrayList()?.forEach {
182
187
  add(it as String)
183
188
  }
184
- }
189
+ })
185
190
  }
186
191
  }
187
192
  // bitrate and timeout are configured under the ima config
@@ -100,7 +100,7 @@ object AdAdapter {
100
100
  adPayload.putDouble(PROP_AD_HEIGHT, ad.imaAd.vastMediaHeight.toDouble())
101
101
  adPayload.putString(PROP_AD_CONTENT_TYPE, ad.imaAd.contentType)
102
102
  adPayload.putString(PROP_AD_DESCRIPTION, ad.imaAd.description)
103
- } catch (ignore: Exception) {
103
+ } catch (_: Exception) {
104
104
  // googleImaAd.getImaAd() is not known yet
105
105
  }
106
106
  val universalAdIdsPayload = Arguments.createArray()
@@ -142,7 +142,7 @@ object AdAdapter {
142
142
  return adbreakPayload
143
143
  }
144
144
  adbreakPayload.putString(PROP_ADBREAK_INTEGRATION, adbreak.integration.type)
145
- adbreakPayload.putString(PROP_ADBREAK_ID, adbreak.idAsString)
145
+ adbreakPayload.putString(PROP_ADBREAK_ID, adbreak.id)
146
146
  adbreakPayload.putInt(PROP_ADBREAK_MAXDURATION,adbreak.maxDuration)
147
147
  adbreakPayload.putInt(PROP_ADBREAK_TIMEOFFSET, adbreak.timeOffset)
148
148
  adbreakPayload.putDouble(PROP_ADBREAK_MAXREMAININGDURATION, adbreak.maxRemainingDuration)
@@ -288,10 +288,15 @@ object AdAdapter {
288
288
  return adBreak.getString(PROP_AD_CUSTOM_INTEGRATION)
289
289
  }
290
290
 
291
+ @Deprecated("Deprecated in favor of getIdAsString()")
291
292
  override fun getIdAsString(): String? {
292
293
  return if (adBreak.hasKey(PROP_ADBREAK_ID)) adBreak.getString(PROP_ADBREAK_ID) else null
293
294
  }
294
295
 
296
+ override fun getId(): String? {
297
+ return if (adBreak.hasKey(PROP_ADBREAK_ID)) adBreak.getString(PROP_ADBREAK_ID) else null
298
+ }
299
+
295
300
  override fun getCustomData(): Any? {
296
301
  // Not supported yet
297
302
  return null
@@ -415,16 +420,6 @@ object AdAdapter {
415
420
  return ad?.getString(PROP_AD_TRAFFICKING_PARAMETERS) ?: ""
416
421
  }
417
422
 
418
- @Deprecated("Deprecated in Java")
419
- override fun getUniversalAdIdRegistry(): String {
420
- return ""
421
- }
422
-
423
- @Deprecated("Deprecated in Java")
424
- override fun getUniversalAdIdValue(): String {
425
- return ad?.getString(PROP_UNIVERSAL_AD_ID_VALUE) ?: ""
426
- }
427
-
428
423
  override fun getCompanionAds(): List<com.google.ads.interactivemedia.v3.api.CompanionAd> {
429
424
  return emptyList()
430
425
  }
@@ -59,7 +59,6 @@ class CastModule(context: ReactApplicationContext) : ReactContextBaseJavaModule(
59
59
  PlayerCastState.AVAILABLE -> "available"
60
60
  PlayerCastState.CONNECTED -> "connected"
61
61
  PlayerCastState.CONNECTING -> "connecting"
62
- PlayerCastState.UNAVAILABLE -> "unavailable"
63
62
  else -> "unavailable"
64
63
  }
65
64
  }
@@ -26,6 +26,7 @@ private const val PROP_NAME = "name"
26
26
  private const val PROP_ENABLED = "enabled"
27
27
  private const val PROP_SRC = "src"
28
28
  private const val PROP_FORCED = "forced"
29
+ private const val PROP_CAPTION_CHANNEL = "captionChannel"
29
30
  private const val PROP_AUDIO_SAMPLING_RATE = "audioSamplingRate"
30
31
  private const val PROP_BANDWIDTH = "bandwidth"
31
32
  private const val PROP_QUALITIES = "qualities"
@@ -43,9 +44,6 @@ private const val PROP_ENDDATE = "endDate"
43
44
  private const val PROP_DURATION = "duration"
44
45
  private const val PROP_PLANNED_DURATION = "plannedDuration"
45
46
  private const val PROP_END_ON_NEXT = "endOnNext"
46
- private const val PROP_SCTE35CMD = "scte35Cmd"
47
- private const val PROP_SCTE35OUT = "scte35Out"
48
- private const val PROP_SCTE35IN = "scte35In"
49
47
  private const val PROP_CUSTOM_ATTRIBUTES = "customAttributes"
50
48
 
51
49
  object TrackListAdapter {
@@ -72,6 +70,9 @@ object TrackListAdapter {
72
70
  textTrackPayload.putString(PROP_SRC, textTrack.source)
73
71
  textTrackPayload.putBoolean(PROP_FORCED, textTrack.isForced)
74
72
 
73
+ // THEOplayer v10.13+
74
+ textTrack.captionChannel?.let { textTrackPayload.putInt(PROP_CAPTION_CHANNEL, it) }
75
+
75
76
  // Optionally pass cue list.
76
77
  val cueList = textTrack.cues
77
78
  if (cueList != null) {
@@ -167,13 +168,12 @@ object TrackListAdapter {
167
168
  audioTrackPayload.putString(PROP_LABEL, audioTrack.label)
168
169
  audioTrackPayload.putString(PROP_LANGUAGE, audioTrack.language)
169
170
  audioTrackPayload.putBoolean(PROP_ENABLED, audioTrack.isEnabled)
170
- val qualityList = audioTrack.qualities
171
171
  val qualities = Arguments.createArray()
172
172
  try {
173
- qualityList?.forEach { quality ->
173
+ audioTrack.qualities.forEach { quality ->
174
174
  qualities.pushMap(fromAudioQuality(quality))
175
175
  }
176
- } catch (ignore: NullPointerException) {
176
+ } catch (_: NullPointerException) {
177
177
  }
178
178
  audioTrackPayload.putArray(PROP_QUALITIES, qualities)
179
179
  val activeQuality = audioTrack.activeQuality
@@ -214,18 +214,15 @@ object TrackListAdapter {
214
214
  videoTrackPayload.putBoolean(PROP_ENABLED, videoTrack.isEnabled)
215
215
  val qualities = Arguments.createArray()
216
216
  try {
217
- val qualityList = videoTrack.qualities
218
- if (qualityList != null) {
219
- // Sort qualities according to (height, bandwidth)
220
- val sortedQualityList = QualityListAdapter(qualityList)
221
- sortedQualityList.sort { o: VideoQuality, t1: VideoQuality ->
222
- if (o.height == t1.height) t1.bandwidth.compareTo(o.bandwidth) else t1.height.compareTo(o.height)
223
- }
224
- for (quality in sortedQualityList) {
225
- qualities.pushMap(fromVideoQuality(quality as VideoQuality))
226
- }
217
+ // Sort qualities according to (height, bandwidth)
218
+ val sortedQualityList = QualityListAdapter(videoTrack.qualities)
219
+ sortedQualityList.sort { o: VideoQuality, t1: VideoQuality ->
220
+ if (o.height == t1.height) t1.bandwidth.compareTo(o.bandwidth) else t1.height.compareTo(o.height)
221
+ }
222
+ for (quality in sortedQualityList) {
223
+ qualities.pushMap(fromVideoQuality(quality as VideoQuality))
227
224
  }
228
- } catch (ignore: java.lang.NullPointerException) {
225
+ } catch (_: java.lang.NullPointerException) {
229
226
  }
230
227
  videoTrackPayload.putArray(PROP_QUALITIES, qualities)
231
228
  val activeQuality = videoTrack.activeQuality
@@ -0,0 +1,7 @@
1
+ # EditorConfig helps developers define and maintain consistent
2
+ # coding styles between different editors and IDEs
3
+ # editorconfig.org
4
+
5
+ [*]
6
+ indent_style = space
7
+ indent_size = 4
@@ -113,7 +113,7 @@ RCT_EXTERN_METHOD(setSelectedVideoTrack:(nonnull NSNumber *)node
113
113
  uid:(nonnull NSNumber *)uid)
114
114
 
115
115
  RCT_EXTERN_METHOD(setTargetVideoQuality:(nonnull NSNumber *)node
116
- uid:(nonnull NSNumber *)uid)
116
+ uids:(nonnull NSArray<NSNumber *> *)uids)
117
117
 
118
118
  RCT_EXTERN_METHOD(setPreload:(nonnull NSNumber *)node
119
119
  type:(nonnull NSString *)type)
@@ -10,8 +10,6 @@ import THEOplayerSDK
10
10
  import THEOplayerConnectorSideloadedSubtitle
11
11
  #endif
12
12
 
13
- let ERROR_MESSAGE_PLAYER_QUALITY_UNSUPPORTED_FEATURE: String = "Setting a target video quality is not supported on iOS/tvOS."
14
-
15
13
  let TTS_PROP_BACKGROUND_COLOR = "backgroundColor"
16
14
  let TTS_PROP_EDGE_STYLE = "edgeStyle"
17
15
  let TTS_PROP_FONT_COLOR = "fontColor"
@@ -337,10 +335,32 @@ class THEOplayerRCTPlayerAPI: NSObject, RCTBridgeModule {
337
335
  }
338
336
  }
339
337
 
340
- @objc(setTargetVideoQuality:uid:)
341
- func setTargetVideoQuality(_ node: NSNumber, uid: [NSNumber]) -> Void {
342
- if DEBUG_PLAYER_API { print(ERROR_MESSAGE_PLAYER_QUALITY_UNSUPPORTED_FEATURE) }
343
- return
338
+ @objc(setTargetVideoQuality:uids:)
339
+ func setTargetVideoQuality(_ node: NSNumber, uids: [NSNumber]) -> Void {
340
+ DispatchQueue.main.async {
341
+ if let theView = self.bridge.uiManager.view(forReactTag: node) as? THEOplayerRCTView,
342
+ let player = theView.player {
343
+ let videoTracks: VideoTrackList = player.videoTracks
344
+ guard videoTracks.count > 0 else {
345
+ return
346
+ }
347
+ var activeVideoTrack: VideoTrack?
348
+ for i in 0...videoTracks.count-1 {
349
+ let videoTrack: MediaTrack = videoTracks.get(i)
350
+ if videoTrack.enabled {
351
+ activeVideoTrack = videoTrack as? VideoTrack
352
+ }
353
+ }
354
+ if let foundTrack = activeVideoTrack {
355
+ let matchingQualities = (0..<foundTrack.qualities.count).compactMap { index in
356
+ let quality = foundTrack.qualities.get(index)
357
+ return uids.contains { $0.intValue == quality.bandwidth } ? quality : nil
358
+ }
359
+ foundTrack.targetQualities = matchingQualities
360
+ if DEBUG_PLAYER_API { PrintUtils.printLog(logText: "[NATIVE] targetQualities: \(uids) set on active videotrack.") }
361
+ }
362
+ }
363
+ }
344
364
  }
345
365
 
346
366
  @objc(setPreload:type:)
@@ -357,7 +357,12 @@ class THEOplayerRCTSourceDescriptionBuilder {
357
357
  let licenseAcquisitionURL = fairplayData[SD_PROP_LICENSE_URL] as? String
358
358
  let headers = fairplayData[SD_PROP_HEADERS] as? [String:String]
359
359
  let licenseType = fairplayData[SD_PROP_LICENSE_TYPE] as? String
360
- let queryParameters = fairplayData[SD_PROP_QUERY_PARAMETERS] as? [String:String]
360
+ var queryParameters: [String: String] = [:]
361
+ if let allQueryParams = fairplayData[SD_PROP_QUERY_PARAMETERS] as? [String:Any] {
362
+ for (key, value) in allQueryParams {
363
+ queryParameters[key] = "\(value)"
364
+ }
365
+ }
361
366
 
362
367
  fairplayKeySystem = KeySystemConfiguration(
363
368
  licenseAcquisitionURL: licenseAcquisitionURL,
@@ -379,7 +384,12 @@ class THEOplayerRCTSourceDescriptionBuilder {
379
384
  let licenseAcquisitionURL = widevineData[SD_PROP_LICENSE_URL] as? String
380
385
  let headers = widevineData[SD_PROP_HEADERS] as? [String:String]
381
386
  let licenseType = widevineData[SD_PROP_LICENSE_TYPE] as? String
382
- let queryParameters = widevineData[SD_PROP_QUERY_PARAMETERS] as? [String:String]
387
+ var queryParameters: [String: String] = [:]
388
+ if let allQueryParams = widevineData[SD_PROP_QUERY_PARAMETERS] as? [String:Any] {
389
+ for (key, value) in allQueryParams {
390
+ queryParameters[key] = "\(value)"
391
+ }
392
+ }
383
393
 
384
394
  widevineKeySystem = KeySystemConfiguration(
385
395
  licenseAcquisitionURL: licenseAcquisitionURL,
@@ -391,7 +401,12 @@ class THEOplayerRCTSourceDescriptionBuilder {
391
401
  }
392
402
 
393
403
  // global query parameters
394
- let queryParameters = contentProtectionData[SD_PROP_QUERY_PARAMETERS] as? [String:String]
404
+ var queryParameters: [String: String] = [:]
405
+ if let allQueryParams = contentProtectionData[SD_PROP_QUERY_PARAMETERS] as? [String:Any] {
406
+ for (key, value) in allQueryParams {
407
+ queryParameters[key] = "\(value)"
408
+ }
409
+ }
395
410
  let integrationParameters = contentProtectionData[SD_PROP_INTEGRATION_PARAMETERS] as? [String:Any] ?? [:]
396
411
 
397
412
  return MultiplatformDRMConfiguration(
@@ -62,8 +62,8 @@ class THEOplayerRCTAdAdapter {
62
62
  if let skipOffset = ad.skipOffset {
63
63
  adData[PROP_AD_SKIP_OFFSET] = (skipOffset == -1) ? skipOffset : skipOffset
64
64
  }
65
- if processAdBreak {
66
- adData[PROP_AD_BREAK] = THEOplayerRCTAdAdapter.fromAdBreak(adBreak: ad.adBreak)
65
+ if processAdBreak, let adBreak = ad.adBreak {
66
+ adData[PROP_AD_BREAK] = THEOplayerRCTAdAdapter.fromAdBreak(adBreak: adBreak)
67
67
  }
68
68
 
69
69
  #if os(iOS)
@@ -5,7 +5,7 @@ import THEOplayerSDK
5
5
 
6
6
  class NativeAd: THEOplayerSDK.Ad {
7
7
  /** A reference to the `AdBreak` of which the ad is a part of.*/
8
- var adBreak: AdBreak
8
+ var adBreak: AdBreak?
9
9
  /** An array of `CompanionAd`s associated to the ad, if available within the same Creatives element.*/
10
10
  var companions: [THEOplayerSDK.CompanionAd] = []
11
11
  /** Either 'linear' or 'nonlinear', depending on the concrete implementer.*/
@@ -17,6 +17,7 @@ let DRM_PROP_WIDEVINE: String = "widevine"
17
17
  let DRM_PROP_LICENSE_URL: String = "licenseAcquisitionURL"
18
18
  let DRM_PROP_CERTIFICATE_URL: String = "certificateURL"
19
19
  let DRM_PROP_BASE64_BODY: String = "base64body"
20
+ let DRM_PROP_QUERY_PARAMETERS: String = "queryParameters"
20
21
  let DRM_PROP_FAIRPLAY_SKD_URL: String = "fairplaySkdUrl"
21
22
  let DRM_PROP_STATUS: String = "status"
22
23
  let DRM_PROP_STATUS_TEXT: String = "statusText"
@@ -32,6 +33,9 @@ class THEOplayerRCTContentProtectionAggregator {
32
33
  var aggregatedDrmConfig: [String:Any] = [:]
33
34
  aggregatedDrmConfig[DRM_PROP_INTEGRATION] = drmConfig.customIntegrationId ?? "unknown"
34
35
  aggregatedDrmConfig[DRM_PROP_INTEGRATION_PARAMS] = drmConfig.integrationParameters
36
+ if let queryParameters = drmConfig.queryParameters {
37
+ aggregatedDrmConfig[DRM_PROP_QUERY_PARAMETERS] = queryParameters
38
+ }
35
39
  if let multiDrmConfigCollection = drmConfig as? THEOplayerSDK.MultiplatformDRMConfiguration {
36
40
  let keySystemConfigurations: THEOplayerSDK.KeySystemConfigurationCollection = multiDrmConfigCollection.keySystemConfigurations
37
41
  if let fairplayConfig: THEOplayerSDK.KeySystemConfiguration = keySystemConfigurations.fairplay {
@@ -114,6 +118,12 @@ class THEOplayerRCTContentProtectionAggregator {
114
118
  if let certificateURL = keySystemConfig.certificateURL?.absoluteString {
115
119
  aggregatedKeySystem[DRM_PROP_CERTIFICATE_URL] = certificateURL
116
120
  }
121
+ if let headers = keySystemConfig.headers {
122
+ aggregatedKeySystem[DRM_PROP_HEADERS] = headers
123
+ }
124
+ if let queryParameters = keySystemConfig.queryParameters {
125
+ aggregatedKeySystem[DRM_PROP_QUERY_PARAMETERS] = queryParameters
126
+ }
117
127
  return aggregatedKeySystem
118
128
  }
119
129
  }
@@ -33,15 +33,6 @@ exports.PresentationModeChangePipContext = void 0;
33
33
  * @category Player
34
34
  * @public
35
35
  */
36
- /**
37
- * Dispatched when player is resized.
38
- *
39
- * @category Events
40
- * @category Player
41
- * @public
42
- *
43
- * @deprecated use {@link DimensionChangeEvent} instead. This event is set for removal in version 11.
44
- */
45
36
  /**
46
37
  * Dispatched when video is resized.
47
38
  *
@@ -1 +1 @@
1
- {"version":3,"names":["PresentationModeChangePipContext","exports"],"sourceRoot":"../../../../src","sources":["api/event/PlayerEvent.ts"],"mappings":";;;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA,IAOYA,gCAAgC,GAAAC,OAAA,CAAAD,gCAAA,0BAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAA,OAAhCA,gCAAgC;AAAA;AAmB5C;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["PresentationModeChangePipContext","exports"],"sourceRoot":"../../../../src","sources":["api/event/PlayerEvent.ts"],"mappings":";;;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AANA,IAOYA,gCAAgC,GAAAC,OAAA,CAAAD,gCAAA,0BAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAhCA,gCAAgC;EAAA,OAAhCA,gCAAgC;AAAA;AAmB5C;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAaA;AACA;AACA;AACA;AACA;AACA;AACA;AAkBA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA;AAQA;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -43,7 +43,6 @@ let PlayerEventType = exports.PlayerEventType = /*#__PURE__*/function (PlayerEve
43
43
  PlayerEventType["WAITING"] = "waiting";
44
44
  PlayerEventType["PRESENTATIONMODE_CHANGE"] = "presentationmodechange";
45
45
  PlayerEventType["DESTROY"] = "destroy";
46
- PlayerEventType["RESIZE"] = "resize";
47
46
  PlayerEventType["DIMENSION_CHANGE"] = "dimensionchange";
48
47
  PlayerEventType["VIDEO_RESIZE"] = "videoresize";
49
48
  return PlayerEventType;
@@ -1 +1 @@
1
- {"version":3,"names":["PlayerEventType","exports"],"sourceRoot":"../../../../src","sources":["api/player/PlayerEventMap.ts"],"mappings":";;;;;;AAyBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA,IAOYA,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAwC3B;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["PlayerEventType","exports"],"sourceRoot":"../../../../src","sources":["api/player/PlayerEventMap.ts"],"mappings":";;;;;;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AANA,IAOYA,eAAe,GAAAC,OAAA,CAAAD,eAAA,0BAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAfA,eAAe;EAAA,OAAfA,eAAe;AAAA;AAoC3B;AACA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
@@ -3,84 +3,4 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.SourceIntegrationId = void 0;
7
- /**
8
- * Represents a media resource.
9
- *
10
- * @remarks
11
- * <br/> - Can be a string value representing the URL of a media resource, a {@link TypedSource}.
12
- *
13
- * @category Source
14
- * @public
15
- */
16
- /**
17
- * A type alias for a {@link TypedSource} media resource.
18
- *
19
- * @category Source
20
- * @public
21
- */
22
- /**
23
- * A media resource or list of media resources.
24
- *
25
- * @remarks
26
- * <br/> - The order of sources when using a list determines their priority when attempting playback.
27
- *
28
- * @category Source
29
- * @public
30
- */
31
- /**
32
- * The cross-origin setting of a source, represented by a value from the following list:
33
- * <br/> - `'anonymous'`: CORS requests will have the credentials flag set to 'same-origin'.
34
- * <br/> - `'use-credentials'`: CORS requests will have the credentials flag set to 'include'.
35
- * <br/> - `''`: Setting the empty string is the same as `'anonymous'`
36
- *
37
- * @remarks
38
- * <br/> - See {@link https://developer.mozilla.org/en-US/docs/Web/HTML/CORS_settings_attributes | The crossorigin attribute: Requesting CORS access to content}
39
- *
40
- * @category Source
41
- * @public
42
- */
43
- /**
44
- * The integration identifier of a source specific to a pre-integration, represented by a value from the following list:
45
- * <br/> - `'theolive'`: The source contains the THEOlive initialization url.
46
- *
47
- * @category Source
48
- * @public
49
- * @deprecated use {@link TypedSource.type} instead.
50
- */
51
- let SourceIntegrationId = exports.SourceIntegrationId = /*#__PURE__*/function (SourceIntegrationId) {
52
- SourceIntegrationId["THEO_LIVE"] = "theolive";
53
- return SourceIntegrationId;
54
- }({});
55
- /**
56
- * Describes the configuration of a player's source.
57
- *
58
- * @category Source
59
- * @public
60
- */
61
- /**
62
- * Describes the configuration of a player's source.
63
- *
64
- * @category Source
65
- * @public
66
- */
67
- /**
68
- * Describes the configuration of a side-loaded text track.
69
- *
70
- * @category Source
71
- * @category Media and Text Tracks
72
- * @public
73
- */
74
- /**
75
- * Represents the common properties of a media resource.
76
- *
77
- * @category Source
78
- * @public
79
- */
80
- /**
81
- * Represents a media resource characterized by a URL to the resource and optionally information about the resource.
82
- *
83
- * @category Source
84
- * @public
85
- */
86
6
  //# sourceMappingURL=SourceDescription.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SourceIntegrationId","exports"],"sourceRoot":"../../../../src","sources":["api/source/SourceDescription.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAWA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAPA,IAQYA,mBAAmB,GAAAC,OAAA,CAAAD,mBAAA,0BAAnBA,mBAAmB;EAAnBA,mBAAmB;EAAA,OAAnBA,mBAAmB;AAAA;AAI/B;AACA;AACA;AACA;AACA;AACA;AAyDA;AACA;AACA;AACA;AACA;AACA;AAmDA;AACA;AACA;AACA;AACA;AACA;AACA;AA2FA;AACA;AACA;AACA;AACA;AACA;AAsFA;AACA;AACA;AACA;AACA;AACA","ignoreList":[]}
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["api/source/SourceDescription.ts"],"mappings":"","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["AdIntegrationKind","exports"],"sourceRoot":"../../../../../src","sources":["api/source/ads/Ads.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AAmDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA,IAgBYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
1
+ {"version":3,"names":["AdIntegrationKind","exports"],"sourceRoot":"../../../../../src","sources":["api/source/ads/Ads.ts"],"mappings":";;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AAeA;AACA;AACA;AACA;AACA;AACA;AACA;AAoDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAfA,IAgBYA,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,0BAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAjBA,iBAAiB;EAAA,OAAjBA,iBAAiB;AAAA","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"names":["TextTrackType","exports","TextTrackKind","TextTrackMode","filterRenderableTracks","textTracks","filter","textTrack","kind","filterThumbnailTracks","find","isThumbnailTrack","label","hasTextTrackCue","cue","cues","c","uid","removeTextTrackCue","addTextTrackCue","push","findTextTrackByUid","t"],"sourceRoot":"../../../../src","sources":["api/track/TextTrack.ts"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["TextTrackType","exports","TextTrackKind","TextTrackMode","filterRenderableTracks","textTracks","filter","textTrack","kind","filterThumbnailTracks","find","isThumbnailTrack","label","hasTextTrackCue","cue","cues","c","uid","removeTextTrackCue","addTextTrackCue","push","findTextTrackByUid","t"],"sourceRoot":"../../../../src","sources":["api/track/TextTrack.ts"],"mappings":"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","ignoreList":[]}