expo-video 2.3.0-canary-20250713-8f814f8 → 2.3.0-canary-20250722-599a28f

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 (51) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/android/build.gradle +2 -2
  3. package/android/src/main/java/expo/modules/video/player/VideoPlayer.kt +17 -6
  4. package/expo-module.config.json +1 -1
  5. package/ios/Enums/FullscreenOrientation.swift +2 -0
  6. package/ios/OrientationAVPlayerViewController.swift +20 -4
  7. package/ios/VideoAirPlayButtonView.swift +1 -1
  8. package/ios/VideoModule.swift +1 -1
  9. package/ios/VideoView.swift +6 -4
  10. package/local-maven-repo/host/exp/exponent/expo.modules.video/{2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar → 2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar} +0 -0
  11. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar.md5 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar.sha1 +1 -0
  13. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar.sha256 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar.sha512 +1 -0
  15. package/local-maven-repo/host/exp/exponent/expo.modules.video/{2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.aar → 2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.aar} +0 -0
  16. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.aar.md5 +1 -0
  17. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.aar.sha1 +1 -0
  18. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.aar.sha256 +1 -0
  19. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.aar.sha512 +1 -0
  20. package/local-maven-repo/host/exp/exponent/expo.modules.video/{2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.module → 2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.module} +22 -22
  21. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.module.md5 +1 -0
  22. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.module.sha1 +1 -0
  23. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.module.sha256 +1 -0
  24. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.module.sha512 +1 -0
  25. package/local-maven-repo/host/exp/exponent/expo.modules.video/{2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.pom → 2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.pom} +1 -1
  26. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.pom.md5 +1 -0
  27. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.pom.sha1 +1 -0
  28. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.pom.sha256 +1 -0
  29. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250722-599a28f/expo.modules.video-2.3.0-canary-20250722-599a28f.pom.sha512 +1 -0
  30. package/local-maven-repo/host/exp/exponent/expo.modules.video/maven-metadata.xml +4 -4
  31. package/local-maven-repo/host/exp/exponent/expo.modules.video/maven-metadata.xml.md5 +1 -1
  32. package/local-maven-repo/host/exp/exponent/expo.modules.video/maven-metadata.xml.sha1 +1 -1
  33. package/local-maven-repo/host/exp/exponent/expo.modules.video/maven-metadata.xml.sha256 +1 -1
  34. package/local-maven-repo/host/exp/exponent/expo.modules.video/maven-metadata.xml.sha512 +1 -1
  35. package/package.json +3 -3
  36. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar.md5 +0 -1
  37. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar.sha1 +0 -1
  38. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar.sha256 +0 -1
  39. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar.sha512 +0 -1
  40. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.aar.md5 +0 -1
  41. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.aar.sha1 +0 -1
  42. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.aar.sha256 +0 -1
  43. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.aar.sha512 +0 -1
  44. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.module.md5 +0 -1
  45. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.module.sha1 +0 -1
  46. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.module.sha256 +0 -1
  47. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.module.sha512 +0 -1
  48. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.pom.md5 +0 -1
  49. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.pom.sha1 +0 -1
  50. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.pom.sha256 +0 -1
  51. package/local-maven-repo/host/exp/exponent/expo.modules.video/2.3.0-canary-20250713-8f814f8/expo.modules.video-2.3.0-canary-20250713-8f814f8.pom.sha512 +0 -1
package/CHANGELOG.md CHANGED
@@ -11,8 +11,10 @@
11
11
 
12
12
  ### 🐛 Bug fixes
13
13
 
14
+ - [Android] Fix duration property resetting to 0 on video repeat. ([#37984](https://github.com/expo/expo/pull/37984) by [@Wenszel](https://github.com/Wenszel))
14
15
  - [Android] Fix accessing player.loop causes app to crash. ([#37928](https://github.com/expo/expo/pull/37928) by [@Wenszel](https://github.com/Wenszel))
15
16
  - [iOS] Setting `player.currentTime` doesn't seek to the correct time on some videos. ([#37672](https://github.com/expo/expo/pull/37300) by [@petrkonecny2](https://github.com/petrkonecny2))
17
+ - [iOS] Fix tvOS compilation errors. ([#38085](https://github.com/expo/expo/pull/38085) by [@douglowder](https://github.com/douglowder))
16
18
 
17
19
  ### 💡 Others
18
20
 
@@ -4,13 +4,13 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '2.3.0-canary-20250713-8f814f8'
7
+ version = '2.3.0-canary-20250722-599a28f'
8
8
 
9
9
  android {
10
10
  namespace "expo.modules.video"
11
11
  defaultConfig {
12
12
  versionCode 1
13
- versionName '2.3.0-canary-20250713-8f814f8'
13
+ versionName '2.3.0-canary-20250722-599a28f'
14
14
  }
15
15
  }
16
16
 
@@ -235,10 +235,13 @@ class VideoPlayer(val context: Context, appContext: AppContext, source: VideoSou
235
235
  }
236
236
 
237
237
  override fun onMediaItemTransition(mediaItem: MediaItem?, reason: Int) {
238
- this@VideoPlayer.duration = 0f
239
- this@VideoPlayer.isLive = false
240
238
  if (reason == Player.MEDIA_ITEM_TRANSITION_REASON_REPEAT) {
241
239
  sendEvent(PlayerEvent.PlayedToEnd())
240
+ } else {
241
+ // New playback info is set in the onPlaybackStateChanged event, which occurs after mediaItemTransition.
242
+ // The onPlaybackStateChanged is not triggered if the video repeats (since the state remains STATE_READY)
243
+ // That is why the playback info is not reset when the transition reason is MEDIA_ITEM_TRANSITION_REASON_REPEAT.
244
+ resetPlaybackInfo()
242
245
  }
243
246
  subtitles.setSubtitlesEnabled(false)
244
247
  super.onMediaItemTransition(mediaItem, reason)
@@ -249,8 +252,7 @@ class VideoPlayer(val context: Context, appContext: AppContext, source: VideoSou
249
252
  return
250
253
  }
251
254
  if (playbackState == Player.STATE_READY) {
252
- this@VideoPlayer.duration = this@VideoPlayer.player.duration / 1000f
253
- this@VideoPlayer.isLive = this@VideoPlayer.player.isCurrentMediaItemLive
255
+ refreshPlaybackInfo()
254
256
  }
255
257
  setStatus(playerStateToPlayerStatus(playbackState), null)
256
258
  super.onPlaybackStateChanged(playbackState)
@@ -269,8 +271,7 @@ class VideoPlayer(val context: Context, appContext: AppContext, source: VideoSou
269
271
 
270
272
  override fun onPlayerErrorChanged(error: PlaybackException?) {
271
273
  error?.let {
272
- this@VideoPlayer.duration = 0f
273
- this@VideoPlayer.isLive = false
274
+ resetPlaybackInfo()
274
275
  setStatus(ERROR, error)
275
276
  } ?: run {
276
277
  setStatus(playerStateToPlayerStatus(player.playbackState), null)
@@ -383,6 +384,16 @@ class VideoPlayer(val context: Context, appContext: AppContext, source: VideoSou
383
384
  }
384
385
  }
385
386
 
387
+ private fun refreshPlaybackInfo() {
388
+ duration = player.duration / 1000f
389
+ isLive = player.isCurrentMediaItemLive
390
+ }
391
+
392
+ private fun resetPlaybackInfo() {
393
+ duration = 0f
394
+ isLive = false
395
+ }
396
+
386
397
  fun addListener(videoPlayerListener: VideoPlayerListener) {
387
398
  if (listeners.all { it.get() != videoPlayerListener }) {
388
399
  listeners.add(WeakReference(videoPlayerListener))
@@ -8,7 +8,7 @@
8
8
  "publication": {
9
9
  "groupId": "host.exp.exponent",
10
10
  "artifactId": "expo.modules.video",
11
- "version": "2.3.0-canary-20250713-8f814f8",
11
+ "version": "2.3.0-canary-20250722-599a28f",
12
12
  "repository": "local-maven-repo"
13
13
  }
14
14
  }
@@ -11,6 +11,7 @@ internal enum FullscreenOrientation: String, Enumerable {
11
11
  case portraitDown
12
12
  case `default`
13
13
 
14
+ #if !os(tvOS)
14
15
  func toUIInterfaceOrientationMask() -> UIInterfaceOrientationMask {
15
16
  switch self {
16
17
  case .landscape:
@@ -29,4 +30,5 @@ internal enum FullscreenOrientation: String, Enumerable {
29
30
  return .all
30
31
  }
31
32
  }
33
+ #endif
32
34
  }
@@ -8,7 +8,9 @@ import ExpoModulesCore
8
8
  */
9
9
  internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlayerViewControllerDelegate {
10
10
  weak var forwardDelegate: AVPlayerViewControllerDelegate?
11
+ #if !os(tvOS)
11
12
  var fullscreenOrientation: UIInterfaceOrientationMask = UIDevice.current.userInterfaceIdiom == .phone ? .allButUpsideDown : .all
13
+ #endif
12
14
  var autoExitOnRotate: Bool = false
13
15
 
14
16
  // Used to determine whether the user has rotated the device to the target orientation. Useful for auto-exit for example:
@@ -28,14 +30,19 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
28
30
  if !isFullscreen {
29
31
  hasRotatedToTargetOrientation = false
30
32
  }
33
+ #if os(tvOS)
34
+ hasRotatedToTargetOrientation = true
35
+ #else
31
36
  // Check if the current device orientation lines up with target orientation right away after entering fullscreen
32
37
  guard let deviceOrientationMask = UIDevice.current.orientation.toInterfaceOrientationMask(), isFullscreen else {
33
38
  return
34
39
  }
35
40
  hasRotatedToTargetOrientation = fullscreenOrientation.contains(deviceOrientationMask)
41
+ #endif
36
42
  }
37
43
  }
38
44
 
45
+ #if !os(tvOS)
39
46
  override var supportedInterfaceOrientations: UIInterfaceOrientationMask {
40
47
  // Always remove the observer to avoid adding it multiple times
41
48
  NotificationCenter.default.removeObserver(
@@ -56,6 +63,7 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
56
63
  }
57
64
  return super.supportedInterfaceOrientations
58
65
  }
66
+ #endif
59
67
 
60
68
  convenience init(delegate: AVPlayerViewControllerDelegate?) {
61
69
  self.init()
@@ -63,11 +71,13 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
63
71
  }
64
72
 
65
73
  deinit {
74
+ #if !os(tvOS)
66
75
  NotificationCenter.default.removeObserver(
67
76
  self,
68
77
  name: UIDevice.orientationDidChangeNotification,
69
78
  object: nil
70
79
  )
80
+ #endif
71
81
  }
72
82
 
73
83
  func enterFullscreen(selectorUnsupportedFallback: (() -> Void)?) {
@@ -127,6 +137,7 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
127
137
  self.delegate = self
128
138
  }
129
139
 
140
+ #if !os(tvOS)
130
141
  @objc private func deviceOrientationDidChange(_ notification: Notification) {
131
142
  guard let deviceOrientationMask = UIDevice.current.orientation.toInterfaceOrientationMask(), isFullscreen else {
132
143
  return
@@ -170,6 +181,7 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
170
181
  }
171
182
  }
172
183
  }
184
+ #endif
173
185
 
174
186
  func playerViewControllerDidStartPictureInPicture(_ playerViewController: AVPlayerViewController) {
175
187
  isInPictureInPicture = true
@@ -181,16 +193,17 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
181
193
  forwardDelegate?.playerViewControllerDidStopPictureInPicture?(playerViewController)
182
194
  }
183
195
 
184
- #if os(tvOS)
196
+ #if os(tvOS)
185
197
  func playerViewControllerWillBeginDismissalTransition(_ playerViewController: AVPlayerViewController) {
186
- forwardDelegate?.playerViewControllerWillBeginDismissalTransition(playerViewController)
198
+ forwardDelegate?.playerViewControllerWillBeginDismissalTransition?(playerViewController)
187
199
  }
188
200
 
189
201
  func playerViewControllerDidEndDismissalTransition(_ playerViewController: AVPlayerViewController) {
190
- forwardDelegate?.playerViewControllerDidEndDismissalTransition(playerViewController)
202
+ forwardDelegate?.playerViewControllerDidEndDismissalTransition?(playerViewController)
191
203
  }
192
- #endif
204
+ #endif
193
205
 
206
+ #if !os(tvOS)
194
207
  private func forceRotationUpdate() {
195
208
  if #available(iOS 16.0, *) {
196
209
  let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene
@@ -199,8 +212,10 @@ internal class OrientationAVPlayerViewController: AVPlayerViewController, AVPlay
199
212
  UIViewController.attemptRotationToDeviceOrientation()
200
213
  }
201
214
  }
215
+ #endif
202
216
  }
203
217
 
218
+ #if !os(tvOS)
204
219
  fileprivate extension UIDeviceOrientation {
205
220
  func toInterfaceOrientationMask() -> UIInterfaceOrientationMask? {
206
221
  switch self {
@@ -213,3 +228,4 @@ fileprivate extension UIDeviceOrientation {
213
228
  }
214
229
  }
215
230
  }
231
+ #endif
@@ -1,6 +1,6 @@
1
1
  // Copyright 2025-present 650 Industries. All rights reserved.
2
2
 
3
- import ContactsUI
3
+ // import ContactsUI
4
4
  import SwiftUI
5
5
  import ExpoModulesCore
6
6
  import AVKit
@@ -66,9 +66,9 @@ public final class VideoModule: Module {
66
66
  }
67
67
 
68
68
  Prop("fullscreenOptions") {(view, options: FullscreenOptions?) in
69
+ #if !os(tvOS)
69
70
  view.playerViewController.fullscreenOrientation = options?.orientation.toUIInterfaceOrientationMask() ?? .all
70
71
  view.playerViewController.autoExitOnRotate = options?.autoExitOnRotate ?? false
71
- #if !os(tvOS)
72
72
  view.playerViewController.setValue(options?.enable ?? true, forKey: "allowsEnteringFullScreen")
73
73
  #endif
74
74
  }
@@ -14,9 +14,8 @@ public final class VideoView: ExpoView, AVPlayerViewControllerDelegate {
14
14
 
15
15
  #if os(tvOS)
16
16
  var wasPlaying: Bool = false
17
- #endif
18
- #if os(tvOS)
19
17
  let startPictureInPictureAutomatically = false
18
+ var isFullscreen: Bool = false
20
19
  #else
21
20
  var startPictureInPictureAutomatically = false {
22
21
  didSet {
@@ -78,8 +77,8 @@ public final class VideoView: ExpoView, AVPlayerViewControllerDelegate {
78
77
  self.wasPlaying = self.player?.isPlaying == true
79
78
  self.playerViewController.view.removeFromSuperview()
80
79
  self.reactViewController().present(self.playerViewController, animated: true)
81
- onFullscreenEnter()
82
- isFullscreen = true
80
+ self.onFullscreenEnter()
81
+ self.isFullscreen = true
83
82
  #endif
84
83
  }
85
84
  playerViewController.enterFullscreen(selectorUnsupportedFallback: tvOSFallback)
@@ -87,6 +86,9 @@ public final class VideoView: ExpoView, AVPlayerViewControllerDelegate {
87
86
 
88
87
  func exitFullscreen() {
89
88
  playerViewController.exitFullscreen()
89
+ #if os(tvOS)
90
+ self.isFullscreen = false
91
+ #endif
90
92
  }
91
93
 
92
94
  func startPictureInPicture() throws {
@@ -0,0 +1 @@
1
+ cba7f5a7ccefc07e58c85e3c26c279e5c8624fc0c84510814b3fda2bdf6ef73496ffa446816cfe45cf31dbda071f6d146b73d11ffe755ef77c484ccd56211f93
@@ -0,0 +1 @@
1
+ 9bbdd7b14aa471ce50972069209ace5b7f84790e377f5f69923693427084cea426ba002c64506288bac8d27865fb853d8c598e51617e1c485a96155562c1eceb
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.video",
6
- "version": "2.3.0-canary-20250713-8f814f8",
6
+ "version": "2.3.0-canary-20250722-599a28f",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -24,13 +24,13 @@
24
24
  },
25
25
  "files": [
26
26
  {
27
- "name": "expo.modules.video-2.3.0-canary-20250713-8f814f8.aar",
28
- "url": "expo.modules.video-2.3.0-canary-20250713-8f814f8.aar",
29
- "size": 465973,
30
- "sha512": "f57545d9b42dce22febf3df2ce670289051c3505587db4f5c52eaa287938f0507566d7249c5ccb735c879c8446ddf146c8c9a8078bd13c5da39bd236e9cb77fd",
31
- "sha256": "f2b051d0ed6bb9dc676f3d916d053d58c817d6f0ab6205861b0d8798e233e39f",
32
- "sha1": "a71982663d82edc73db573973fb2e5590921bbf2",
33
- "md5": "435b90708be624f67494a0cf0da2ce1f"
27
+ "name": "expo.modules.video-2.3.0-canary-20250722-599a28f.aar",
28
+ "url": "expo.modules.video-2.3.0-canary-20250722-599a28f.aar",
29
+ "size": 466120,
30
+ "sha512": "9bbdd7b14aa471ce50972069209ace5b7f84790e377f5f69923693427084cea426ba002c64506288bac8d27865fb853d8c598e51617e1c485a96155562c1eceb",
31
+ "sha256": "356699282396f6089d797276fadfe255438c6d315b5b197f1f9069f919665c17",
32
+ "sha1": "dd4ac4c73d71f37356240d7978c60e6668796a35",
33
+ "md5": "efc5b8fa6220a70ce17f5c7b0a04b618"
34
34
  }
35
35
  ]
36
36
  },
@@ -113,13 +113,13 @@
113
113
  ],
114
114
  "files": [
115
115
  {
116
- "name": "expo.modules.video-2.3.0-canary-20250713-8f814f8.aar",
117
- "url": "expo.modules.video-2.3.0-canary-20250713-8f814f8.aar",
118
- "size": 465973,
119
- "sha512": "f57545d9b42dce22febf3df2ce670289051c3505587db4f5c52eaa287938f0507566d7249c5ccb735c879c8446ddf146c8c9a8078bd13c5da39bd236e9cb77fd",
120
- "sha256": "f2b051d0ed6bb9dc676f3d916d053d58c817d6f0ab6205861b0d8798e233e39f",
121
- "sha1": "a71982663d82edc73db573973fb2e5590921bbf2",
122
- "md5": "435b90708be624f67494a0cf0da2ce1f"
116
+ "name": "expo.modules.video-2.3.0-canary-20250722-599a28f.aar",
117
+ "url": "expo.modules.video-2.3.0-canary-20250722-599a28f.aar",
118
+ "size": 466120,
119
+ "sha512": "9bbdd7b14aa471ce50972069209ace5b7f84790e377f5f69923693427084cea426ba002c64506288bac8d27865fb853d8c598e51617e1c485a96155562c1eceb",
120
+ "sha256": "356699282396f6089d797276fadfe255438c6d315b5b197f1f9069f919665c17",
121
+ "sha1": "dd4ac4c73d71f37356240d7978c60e6668796a35",
122
+ "md5": "efc5b8fa6220a70ce17f5c7b0a04b618"
123
123
  }
124
124
  ]
125
125
  },
@@ -133,13 +133,13 @@
133
133
  },
134
134
  "files": [
135
135
  {
136
- "name": "expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar",
137
- "url": "expo.modules.video-2.3.0-canary-20250713-8f814f8-sources.jar",
138
- "size": 56192,
139
- "sha512": "905363a166bbd4501a68119e90a7a072f0034fe2fe921cefec23eb7e640e4e0fdb4b5fb9ac973991c6749cbcd39468fbdfe6e2d97d5693908368bde417c4c335",
140
- "sha256": "597df67ee5500fa5df31511112975c2de6522ee4d2a3e80b022879ea2aeb4e5a",
141
- "sha1": "ea2aad4450f75602f64a2664f77f9f0df03ecef1",
142
- "md5": "4a28a9ea066141f9d73f8ab961a31918"
136
+ "name": "expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar",
137
+ "url": "expo.modules.video-2.3.0-canary-20250722-599a28f-sources.jar",
138
+ "size": 56330,
139
+ "sha512": "cba7f5a7ccefc07e58c85e3c26c279e5c8624fc0c84510814b3fda2bdf6ef73496ffa446816cfe45cf31dbda071f6d146b73d11ffe755ef77c484ccd56211f93",
140
+ "sha256": "2fb05fdb332f403aee82cd5059ff214ef90621deea612eaaad68eb1fa6b86f1c",
141
+ "sha1": "66d3436151ca2150712aaca6132f42ae1c2b94c7",
142
+ "md5": "8e27a8a108cbb6d261d95e1aad97e27a"
143
143
  }
144
144
  ]
145
145
  }
@@ -0,0 +1 @@
1
+ a2c25c895c75afb39b81decd875b15ff72ebb256f0e201eadfb6e218cc60e31e5982cb7539c2e8d0e1ed1b79475a7c130c40e4ab59656a54d7816292c4712df8
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>host.exp.exponent</groupId>
11
11
  <artifactId>expo.modules.video</artifactId>
12
- <version>2.3.0-canary-20250713-8f814f8</version>
12
+ <version>2.3.0-canary-20250722-599a28f</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.video</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 7d9ddc0c4200702b31a00298285c992da26d71513cb882b845ee69a0fd1b595d008a15d934fcac23b958de3e521b31eb2406f5d40b96d0ea6498332db4ffee66
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.video</artifactId>
5
5
  <versioning>
6
- <latest>2.3.0-canary-20250713-8f814f8</latest>
7
- <release>2.3.0-canary-20250713-8f814f8</release>
6
+ <latest>2.3.0-canary-20250722-599a28f</latest>
7
+ <release>2.3.0-canary-20250722-599a28f</release>
8
8
  <versions>
9
- <version>2.3.0-canary-20250713-8f814f8</version>
9
+ <version>2.3.0-canary-20250722-599a28f</version>
10
10
  </versions>
11
- <lastUpdated>20250713133433</lastUpdated>
11
+ <lastUpdated>20250722134446</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- e55afa0a28b1249551458d2c60880f54
1
+ 5a86b698577e5551eb395078c0dc07c3
@@ -1 +1 @@
1
- f1a8791721d45b66d721ec48d2f3ad9b2d9feef0
1
+ b14b690636914ee2e6015810c11591060fe2f826
@@ -1 +1 @@
1
- 6eb2cae210bc8b25dfd27d352a464ce11a142fd122224a3c373ecc08b7d3f986
1
+ 490a039d3d947d9107cdd95d8233d5c8b22fef899920ad7e07242fd2417dd003
@@ -1 +1 @@
1
- 8b5aa5fd1cd5e5d7cd4d4d24a9bccdea25c76fa31c3264d620beee046450d0d3a82015fd534cd93b96621753fbf0b5256fa1489dcc4fcf990452758bbd612350
1
+ 09080f321d7b36e0f0013ec221fdf47b87d436745b8bff21139378c57749d771ba3ba77f08a463bd299503b8c807e253bc12af0da4b64511eba1e546bdb5f661
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "expo-video",
3
3
  "title": "Expo Video",
4
- "version": "2.3.0-canary-20250713-8f814f8",
4
+ "version": "2.3.0-canary-20250722-599a28f",
5
5
  "description": "A cross-platform, performant video component for React Native and Expo with Web support",
6
6
  "main": "build/index.js",
7
7
  "types": "build/index.d.ts",
@@ -31,10 +31,10 @@
31
31
  "license": "MIT",
32
32
  "dependencies": {},
33
33
  "devDependencies": {
34
- "expo-module-scripts": "4.1.10-canary-20250713-8f814f8"
34
+ "expo-module-scripts": "4.1.10-canary-20250722-599a28f"
35
35
  },
36
36
  "peerDependencies": {
37
- "expo": "54.0.0-canary-20250713-8f814f8",
37
+ "expo": "54.0.0-canary-20250722-599a28f",
38
38
  "react": "*",
39
39
  "react-native": "*"
40
40
  }
@@ -1 +0,0 @@
1
- 905363a166bbd4501a68119e90a7a072f0034fe2fe921cefec23eb7e640e4e0fdb4b5fb9ac973991c6749cbcd39468fbdfe6e2d97d5693908368bde417c4c335
@@ -1 +0,0 @@
1
- f57545d9b42dce22febf3df2ce670289051c3505587db4f5c52eaa287938f0507566d7249c5ccb735c879c8446ddf146c8c9a8078bd13c5da39bd236e9cb77fd
@@ -1 +0,0 @@
1
- 85dc196f93ff8084fec2b578e8b6024322a6d39d18b1b9a98e4bb959cd259e0ab977a43d4508412b4c57f37ef49b5fafa4061cd0f823654347f94daa1f5e922a
@@ -1 +0,0 @@
1
- cf31a914b228afd7e56befaac89ed11b63a77c69a8ef8ad2ff1222f3dca31474a7908e44206ce31fcd5d3fc0f94623ccac81cff072b1010b51daaad02480a363