expo-camera 57.0.0 → 57.0.1

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 (45) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/android/build.gradle +2 -2
  3. package/expo-module.config.json +1 -1
  4. package/ios/CameraViewModule.swift +6 -2
  5. package/ios/Current/CameraSessionManager.swift +22 -6
  6. package/ios/Current/CameraView.swift +90 -14
  7. package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.module → 57.0.1/expo.modules.camera-57.0.1.module} +7 -7
  8. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.module.md5 +1 -0
  9. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.module.sha1 +1 -0
  10. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.module.sha256 +1 -0
  11. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.module.sha512 +1 -0
  12. package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.pom → 57.0.1/expo.modules.camera-57.0.1.pom} +1 -1
  13. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.pom.md5 +1 -0
  14. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.pom.sha1 +1 -0
  15. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.pom.sha256 +1 -0
  16. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.1/expo.modules.camera-57.0.1.pom.sha512 +1 -0
  17. package/local-maven-repo/host/exp/exponent/expo.modules.camera/maven-metadata.xml +4 -4
  18. package/local-maven-repo/host/exp/exponent/expo.modules.camera/maven-metadata.xml.md5 +1 -1
  19. package/local-maven-repo/host/exp/exponent/expo.modules.camera/maven-metadata.xml.sha1 +1 -1
  20. package/local-maven-repo/host/exp/exponent/expo.modules.camera/maven-metadata.xml.sha256 +1 -1
  21. package/local-maven-repo/host/exp/exponent/expo.modules.camera/maven-metadata.xml.sha512 +1 -1
  22. package/package.json +4 -4
  23. package/prebuilds/output/debug/xcframeworks/ExpoCamera.tar.gz +0 -0
  24. package/prebuilds/output/debug/xcframeworks/ExpoCameraBarcodeScanning.tar.gz +0 -0
  25. package/prebuilds/output/release/xcframeworks/ExpoCamera.tar.gz +0 -0
  26. package/prebuilds/output/release/xcframeworks/ExpoCameraBarcodeScanning.tar.gz +0 -0
  27. package/prebuilds/spm-deps/ZXingObjC/debug/ZXingObjC.xcframework/Info.plist +5 -5
  28. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.module.md5 +0 -1
  29. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.module.sha1 +0 -1
  30. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.module.sha256 +0 -1
  31. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.module.sha512 +0 -1
  32. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.pom.md5 +0 -1
  33. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.pom.sha1 +0 -1
  34. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.pom.sha256 +0 -1
  35. package/local-maven-repo/host/exp/exponent/expo.modules.camera/57.0.0/expo.modules.camera-57.0.0.pom.sha512 +0 -1
  36. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0-sources.jar → 57.0.1/expo.modules.camera-57.0.1-sources.jar} +0 -0
  37. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0-sources.jar.md5 → 57.0.1/expo.modules.camera-57.0.1-sources.jar.md5} +0 -0
  38. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0-sources.jar.sha1 → 57.0.1/expo.modules.camera-57.0.1-sources.jar.sha1} +0 -0
  39. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0-sources.jar.sha256 → 57.0.1/expo.modules.camera-57.0.1-sources.jar.sha256} +0 -0
  40. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0-sources.jar.sha512 → 57.0.1/expo.modules.camera-57.0.1-sources.jar.sha512} +0 -0
  41. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.aar → 57.0.1/expo.modules.camera-57.0.1.aar} +0 -0
  42. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.aar.md5 → 57.0.1/expo.modules.camera-57.0.1.aar.md5} +0 -0
  43. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.aar.sha1 → 57.0.1/expo.modules.camera-57.0.1.aar.sha1} +0 -0
  44. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.aar.sha256 → 57.0.1/expo.modules.camera-57.0.1.aar.sha256} +0 -0
  45. /package/local-maven-repo/host/exp/exponent/expo.modules.camera/{57.0.0/expo.modules.camera-57.0.0.aar.sha512 → 57.0.1/expo.modules.camera-57.0.1.aar.sha512} +0 -0
package/CHANGELOG.md CHANGED
@@ -10,6 +10,19 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 57.0.1 — 2026-07-07
14
+
15
+ ### 🎉 New features
16
+
17
+ - Enabled responsive capture and fast capture prioritization on iOS for lower shutter lag and faster successive photo captures.
18
+
19
+ ### 🐛 Bug fixes
20
+
21
+ - Host the iOS camera preview on the view's backing layer so it no longer zooms into place on launch. ([#47172](https://github.com/expo/expo/pull/47172) by [@alanjhughes](https://github.com/alanjhughes))
22
+ - Replace the deprecated `videoOrientation` API with `AVCaptureDevice.RotationCoordinator` for the iOS camera preview. ([#47172](https://github.com/expo/expo/pull/47172) by [@alanjhughes](https://github.com/alanjhughes))
23
+ - Fix dark frames and the preview rotating into place on iOS launch by fully configuring the camera session before it starts running. ([#47173](https://github.com/expo/expo/pull/47173) by [@alanjhughes](https://github.com/alanjhughes))
24
+ - Default the iOS camera `pictureSize` to `photo` instead of `high`. ([#47173](https://github.com/expo/expo/pull/47173) by [@alanjhughes](https://github.com/alanjhughes))
25
+
13
26
  ## 57.0.0 — 2026-06-25
14
27
 
15
28
  _This version does not introduce any user-facing changes._
@@ -4,7 +4,7 @@ plugins {
4
4
  }
5
5
 
6
6
  group = 'host.exp.exponent'
7
- version = '57.0.0'
7
+ version = '57.0.1'
8
8
 
9
9
  def barcodeScannerEnabled = findProperty('expo.camera.barcode-scanner-enabled')
10
10
  def isBarcodeScannerEnabled = (barcodeScannerEnabled ?: "true").toString() != "false"
@@ -13,7 +13,7 @@ android {
13
13
  namespace "expo.modules.camera"
14
14
  defaultConfig {
15
15
  versionCode 32
16
- versionName "57.0.0"
16
+ versionName "57.0.1"
17
17
  }
18
18
  }
19
19
 
@@ -9,7 +9,7 @@
9
9
  "publication": {
10
10
  "groupId": "host.exp.exponent",
11
11
  "artifactId": "expo.modules.camera",
12
- "version": "57.0.0",
12
+ "version": "57.0.1",
13
13
  "repository": "local-maven-repo"
14
14
  }
15
15
  }
@@ -73,6 +73,10 @@ public final class CameraViewModule: Module, ScannerResultHandler {
73
73
  View(CameraView.self) {
74
74
  Events(cameraEvents)
75
75
 
76
+ OnViewDidUpdateProps { (view: CameraView) in
77
+ view.startSessionIfNeeded()
78
+ }
79
+
76
80
  Prop("facing") { (view, type: CameraType?) in
77
81
  if let type, view.presetCamera != type.toPosition() {
78
82
  view.presetCamera = type.toPosition()
@@ -117,8 +121,8 @@ public final class CameraViewModule: Module, ScannerResultHandler {
117
121
  view.pictureSize = pictureSize
118
122
  return
119
123
  }
120
- if pictureSize == nil && view.pictureSize != .high {
121
- view.pictureSize = .high
124
+ if pictureSize == nil && view.pictureSize != .photo {
125
+ view.pictureSize = .photo
122
126
  }
123
127
  }
124
128
 
@@ -21,7 +21,7 @@ protocol CameraSessionManagerDelegate: AnyObject {
21
21
  var barcodeScanner: BarcodeScanner? { get }
22
22
 
23
23
  func emitAvailableLenses()
24
- func changePreviewOrientation()
24
+ func configurePreviewRotation()
25
25
  }
26
26
 
27
27
  class CameraSessionManager: NSObject, DeviceDiscoveryDelegate {
@@ -132,6 +132,9 @@ class CameraSessionManager: NSObject, DeviceDiscoveryDelegate {
132
132
  } else {
133
133
  self.cleanupMovieFileCapture(withSessionConfiguration: false)
134
134
  self.updateSessionPreset(preset: delegate.pictureSize.toCapturePreset(), withSessionConfiguration: false)
135
+ if let photoOutput {
136
+ self.configureResponsiveCapture(photoOutput)
137
+ }
135
138
  }
136
139
  }
137
140
 
@@ -329,10 +332,15 @@ class CameraSessionManager: NSObject, DeviceDiscoveryDelegate {
329
332
  return
330
333
  }
331
334
 
335
+ if captureDeviceInput?.device.uniqueID == device.uniqueID {
336
+ return
337
+ }
338
+
332
339
  session.beginConfiguration()
333
340
  defer {
334
341
  session.commitConfiguration()
335
342
  delegate.emitAvailableLenses()
343
+ delegate.configurePreviewRotation()
336
344
  }
337
345
  if let captureDeviceInput {
338
346
  session.removeInput(captureDeviceInput)
@@ -360,6 +368,16 @@ class CameraSessionManager: NSObject, DeviceDiscoveryDelegate {
360
368
  return AVCaptureDevice.default(for: .video) != nil
361
369
  }
362
370
 
371
+ private func configureResponsiveCapture(_ photoOutput: AVCapturePhotoOutput) {
372
+ guard #available(iOS 17.0, *), photoOutput.isResponsiveCaptureSupported else {
373
+ return
374
+ }
375
+ photoOutput.isResponsiveCaptureEnabled = true
376
+ if photoOutput.isFastCapturePrioritizationSupported {
377
+ photoOutput.isFastCapturePrioritizationEnabled = true
378
+ }
379
+ }
380
+
363
381
  private func startSession() {
364
382
  guard hasAvailableCameraDevice else {
365
383
  return
@@ -390,14 +408,12 @@ class CameraSessionManager: NSObject, DeviceDiscoveryDelegate {
390
408
  : delegate.pictureSize.toCapturePreset()
391
409
  updateSessionPreset(preset: preset, withSessionConfiguration: false)
392
410
 
411
+ configureResponsiveCapture(photoOutput)
412
+
393
413
  session.commitConfiguration()
394
414
  addErrorNotification()
395
- delegate.changePreviewOrientation()
415
+ delegate.configurePreviewRotation()
396
416
  delegate.barcodeScanner?.maybeStartBarcodeScanning()
397
- updateCameraIsActive()
398
- DispatchQueue.main.async { [weak delegate] in
399
- delegate?.onCameraReady()
400
- }
401
417
  enableTorch()
402
418
  }
403
419
  }
@@ -17,9 +17,21 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
17
17
  internal var permissionsManager: EXPermissionsInterface?
18
18
 
19
19
  internal var barcodeScanner: BarcodeScanner?
20
- internal lazy var previewLayer = AVCaptureVideoPreviewLayer(session: self.session)
20
+
21
+ public override class var layerClass: AnyClass {
22
+ AVCaptureVideoPreviewLayer.self
23
+ }
24
+
25
+ internal var previewLayer: AVCaptureVideoPreviewLayer {
26
+ // swiftlint:disable:next force_cast
27
+ layer as! AVCaptureVideoPreviewLayer
28
+ }
21
29
 
22
30
  internal var physicalOrientation: UIDeviceOrientation = .unknown
31
+ // Typed as Any? because AVCaptureDevice.RotationCoordinator is iOS 17+.
32
+ private var rotationCoordinator: Any?
33
+ private var previewRotationObservation: NSKeyValueObservation?
34
+ private var didStartSession = false
23
35
  private var motionManager: CMMotionManager = {
24
36
  let mm = CMMotionManager()
25
37
  mm.accelerometerUpdateInterval = 0.2
@@ -86,7 +98,7 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
86
98
  }
87
99
  }
88
100
 
89
- var pictureSize = PictureSize.high {
101
+ var pictureSize = PictureSize.photo {
90
102
  didSet {
91
103
  updatePictureSize()
92
104
  }
@@ -173,11 +185,27 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
173
185
  }
174
186
 
175
187
  private func setupPreview() {
176
- previewLayer = AVCaptureVideoPreviewLayer(session: sessionManager.session)
188
+ previewLayer.session = sessionManager.session
177
189
  previewLayer.videoGravity = .resizeAspectFill
178
190
  previewLayer.needsDisplayOnBoundsChange = true
179
191
  }
180
192
 
193
+ func startSessionIfNeeded() {
194
+ guard !didStartSession else {
195
+ return
196
+ }
197
+ didStartSession = true
198
+ sessionQueue.async { [weak self] in
199
+ guard let self else {
200
+ return
201
+ }
202
+ self.sessionManager.updateCameraIsActive()
203
+ DispatchQueue.main.async {
204
+ self.onCameraReady()
205
+ }
206
+ }
207
+ }
208
+
181
209
  public func onAppForegrounded() {
182
210
  sessionQueue.async { [weak self] in
183
211
  guard let self else {
@@ -288,15 +316,11 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
288
316
  videoRecording.toggleRecording(videoFileOutput: videoFileOutput)
289
317
  }
290
318
 
291
- public override func layoutSubviews() {
292
- super.layoutSubviews()
293
- self.backgroundColor = .black
294
- previewLayer.frame = self.bounds
295
- if previewLayer.superlayer == nil {
296
- self.layer.insertSublayer(previewLayer, at: 0)
297
- } else if previewLayer.superlayer !== self.layer {
298
- previewLayer.removeFromSuperlayer()
299
- self.layer.insertSublayer(previewLayer, at: 0)
319
+ public override func didMoveToWindow() {
320
+ super.didMoveToWindow()
321
+ if window != nil {
322
+ configurePreviewRotation()
323
+ startSessionIfNeeded()
300
324
  }
301
325
  }
302
326
 
@@ -309,6 +333,9 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
309
333
  lifecycleManager?.unregisterAppLifecycleListener(self)
310
334
  UIDevice.current.endGeneratingDeviceOrientationNotifications()
311
335
  NotificationCenter.default.removeObserver(self, name: UIDevice.orientationDidChangeNotification, object: nil)
336
+ previewRotationObservation?.invalidate()
337
+ previewRotationObservation = nil
338
+ rotationCoordinator = nil
312
339
  }
313
340
 
314
341
  func stopRecording() {
@@ -324,10 +351,58 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
324
351
  }
325
352
 
326
353
  @objc func orientationChanged() {
327
- changePreviewOrientation()
354
+ // On iOS 17+ the RotationCoordinator's KVO drives preview rotation; the legacy
355
+ // notification path is only needed on iOS 16.
356
+ if #available(iOS 17.0, *) {
357
+ return
358
+ }
359
+ applyLegacyPreviewOrientation()
360
+ }
361
+
362
+ func configurePreviewRotation() {
363
+ if #available(iOS 17.0, *) {
364
+ Task { @MainActor in
365
+ self.setUpRotationCoordinator()
366
+ }
367
+ } else {
368
+ applyLegacyPreviewOrientation()
369
+ }
370
+ }
371
+
372
+ @available(iOS 17.0, *)
373
+ private func setUpRotationCoordinator() {
374
+ previewRotationObservation?.invalidate()
375
+ previewRotationObservation = nil
376
+
377
+ guard let device = sessionManager.currentDevice else {
378
+ rotationCoordinator = nil
379
+ return
380
+ }
381
+
382
+ let coordinator = AVCaptureDevice.RotationCoordinator(device: device, previewLayer: previewLayer)
383
+ rotationCoordinator = coordinator
384
+ applyPreviewRotationAngle(from: coordinator)
385
+
386
+ previewRotationObservation = coordinator.observe(
387
+ \.videoRotationAngleForHorizonLevelPreview,
388
+ options: [.new]
389
+ ) { [weak self] coordinator, _ in
390
+ self?.applyPreviewRotationAngle(from: coordinator)
391
+ }
392
+ }
393
+
394
+ @available(iOS 17.0, *)
395
+ private func applyPreviewRotationAngle(from coordinator: AVCaptureDevice.RotationCoordinator) {
396
+ guard let connection = previewLayer.connection else {
397
+ return
398
+ }
399
+ let angle = coordinator.videoRotationAngleForHorizonLevelPreview
400
+ if connection.isVideoRotationAngleSupported(angle) {
401
+ connection.videoRotationAngle = angle
402
+ }
328
403
  }
329
404
 
330
- func changePreviewOrientation() {
405
+ private func applyLegacyPreviewOrientation() {
331
406
  // We shouldn't access the device orientation anywhere but on the main thread
332
407
  Task { @MainActor in
333
408
  let videoOrientation = ExpoCameraUtils.videoOrientation(for: deviceOrientation)
@@ -355,6 +430,7 @@ public class CameraView: ExpoView, EXAppLifecycleListener, EXCameraInterface, Ca
355
430
  }
356
431
 
357
432
  deinit {
433
+ previewRotationObservation?.invalidate()
358
434
  motionManager.stopAccelerometerUpdates()
359
435
  photoCapture.cleanup()
360
436
  videoRecording.cleanup()
@@ -3,7 +3,7 @@
3
3
  "component": {
4
4
  "group": "host.exp.exponent",
5
5
  "module": "expo.modules.camera",
6
- "version": "57.0.0",
6
+ "version": "57.0.1",
7
7
  "attributes": {
8
8
  "org.gradle.status": "release"
9
9
  }
@@ -40,8 +40,8 @@
40
40
  ],
41
41
  "files": [
42
42
  {
43
- "name": "expo.modules.camera-57.0.0.aar",
44
- "url": "expo.modules.camera-57.0.0.aar",
43
+ "name": "expo.modules.camera-57.0.1.aar",
44
+ "url": "expo.modules.camera-57.0.1.aar",
45
45
  "size": 270633,
46
46
  "sha512": "637c03d540b89884662202f29d475469ed5ee0b807134c899289652c9ae03ef5fca3d69c0eb15da09d8b13765b12b21bbb7bdf41a234aace6c7cd546b9ed427b",
47
47
  "sha256": "fe2ac229ce3e52d901327cb9ac77de52dd63c2d7cb60776006ce9c8db390006a",
@@ -167,8 +167,8 @@
167
167
  ],
168
168
  "files": [
169
169
  {
170
- "name": "expo.modules.camera-57.0.0.aar",
171
- "url": "expo.modules.camera-57.0.0.aar",
170
+ "name": "expo.modules.camera-57.0.1.aar",
171
+ "url": "expo.modules.camera-57.0.1.aar",
172
172
  "size": 270633,
173
173
  "sha512": "637c03d540b89884662202f29d475469ed5ee0b807134c899289652c9ae03ef5fca3d69c0eb15da09d8b13765b12b21bbb7bdf41a234aace6c7cd546b9ed427b",
174
174
  "sha256": "fe2ac229ce3e52d901327cb9ac77de52dd63c2d7cb60776006ce9c8db390006a",
@@ -187,8 +187,8 @@
187
187
  },
188
188
  "files": [
189
189
  {
190
- "name": "expo.modules.camera-57.0.0-sources.jar",
191
- "url": "expo.modules.camera-57.0.0-sources.jar",
190
+ "name": "expo.modules.camera-57.0.1-sources.jar",
191
+ "url": "expo.modules.camera-57.0.1-sources.jar",
192
192
  "size": 28209,
193
193
  "sha512": "9ed0d19dd71703067089542f01795ddf07b581cd745cda6bd89d4125c3a31e19fd283f9e7ce47d83a2ee13470ef37ca0a3ff688796ad9970e7805a3e0c1fb42c",
194
194
  "sha256": "a200687bd96e181fe03a9b208c5fcd35d98e8924c9e170f242c8048be21bc21e",
@@ -0,0 +1 @@
1
+ 7e8aa1c8801fdf284d6e830073406f81402c87d3f33b8836299630645a59a77d
@@ -0,0 +1 @@
1
+ 90edd0b4c2f73993f002f51674cf5a96cbf41af6f6ec790066eba8873bdfd6c97e1317cda6ef910b8edaa7056d81e373e6e30fdf28b05dcc691f5380019d81b1
@@ -9,7 +9,7 @@
9
9
  <modelVersion>4.0.0</modelVersion>
10
10
  <groupId>host.exp.exponent</groupId>
11
11
  <artifactId>expo.modules.camera</artifactId>
12
- <version>57.0.0</version>
12
+ <version>57.0.1</version>
13
13
  <packaging>aar</packaging>
14
14
  <name>expo.modules.camera</name>
15
15
  <url>https://github.com/expo/expo</url>
@@ -0,0 +1 @@
1
+ 572822db7a11fa392a7ae21b71364c3242ef7a398e321cda8fcca177cf3f3efa
@@ -0,0 +1 @@
1
+ d9a287ae9cbd40546b8c6db4fe8d5fbda63b448e90a271c7461066aa252d16219044b3a9b806138d5c6bb28c7a4709b10fa6ff04d03b5a0cb197ac5b1c00ba1e
@@ -3,11 +3,11 @@
3
3
  <groupId>host.exp.exponent</groupId>
4
4
  <artifactId>expo.modules.camera</artifactId>
5
5
  <versioning>
6
- <latest>57.0.0</latest>
7
- <release>57.0.0</release>
6
+ <latest>57.0.1</latest>
7
+ <release>57.0.1</release>
8
8
  <versions>
9
- <version>57.0.0</version>
9
+ <version>57.0.1</version>
10
10
  </versions>
11
- <lastUpdated>20260625191740</lastUpdated>
11
+ <lastUpdated>20260707083422</lastUpdated>
12
12
  </versioning>
13
13
  </metadata>
@@ -1 +1 @@
1
- 1d8357cfaf97ba731e347e6f2d7115e4
1
+ af7e2f7927c2be9404264c336134d0f0
@@ -1 +1 @@
1
- 293c89b0b1f5463fe5a3f5365952f7c601f279e9
1
+ 453151f63b7aeb2e9f61257dedddd901d78a8861
@@ -1 +1 @@
1
- 37935afbddffe32241e08d0e42e88a4adc68d9449d6078d0c25ded51a22dc26a
1
+ e4020c150b6dacc73ab00b193a07cc1c823118494b08daef59683a906fbb2141
@@ -1 +1 @@
1
- 0d79a3c3bce76249faae797050c8d52649c85af2fc74c9e77c425258639c74efd9487e41802f0f185c2e6573ea3866ad04766beb1385dc5cdf0852fe5dd6e1c6
1
+ d0b95fca46fe8a612d4b1e4080f15be80744c010548d5a90d6a1598df8b7223b0d42474ee3c46fd798e941707f9d6c98ff832ec1047c5152e67ff85336e4822b
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-camera",
3
- "version": "57.0.0",
3
+ "version": "57.0.1",
4
4
  "description": "A React component that renders a preview for the device's either front or back camera. Camera's parameters like zoom, auto focus, white balance and flash mode are adjustable. With expo-camera, one can also take photos and record videos that are saved to the app's cache. Morever, the component is also capable of detecting faces and bar codes appearing on the preview.",
5
5
  "main": "build/index.js",
6
6
  "types": "build/index.d.ts",
@@ -30,8 +30,8 @@
30
30
  "devDependencies": {
31
31
  "@types/react": "~19.2.0",
32
32
  "@types/node": "^22.14.0",
33
- "expo": "57.0.0-preview.0",
34
- "expo-module-scripts": "56.0.3"
33
+ "expo-module-scripts": "56.0.3",
34
+ "expo": "57.0.3"
35
35
  },
36
36
  "peerDependencies": {
37
37
  "expo": "*",
@@ -44,7 +44,7 @@
44
44
  "optional": true
45
45
  }
46
46
  },
47
- "gitHead": "e3eb896c5fdcd89e0cded98ff4e35c9db12cc9c0",
47
+ "gitHead": "6ffed84381e2d2bb80c2fc713d99724f707d6c06",
48
48
  "scripts": {
49
49
  "build": "expo-module build",
50
50
  "clean": "expo-module clean",
@@ -8,32 +8,32 @@
8
8
  <key>BinaryPath</key>
9
9
  <string>ZXingObjC.framework/ZXingObjC</string>
10
10
  <key>LibraryIdentifier</key>
11
- <string>ios-arm64_x86_64-simulator</string>
11
+ <string>ios-arm64</string>
12
12
  <key>LibraryPath</key>
13
13
  <string>ZXingObjC.framework</string>
14
14
  <key>SupportedArchitectures</key>
15
15
  <array>
16
16
  <string>arm64</string>
17
- <string>x86_64</string>
18
17
  </array>
19
18
  <key>SupportedPlatform</key>
20
19
  <string>ios</string>
21
- <key>SupportedPlatformVariant</key>
22
- <string>simulator</string>
23
20
  </dict>
24
21
  <dict>
25
22
  <key>BinaryPath</key>
26
23
  <string>ZXingObjC.framework/ZXingObjC</string>
27
24
  <key>LibraryIdentifier</key>
28
- <string>ios-arm64</string>
25
+ <string>ios-arm64_x86_64-simulator</string>
29
26
  <key>LibraryPath</key>
30
27
  <string>ZXingObjC.framework</string>
31
28
  <key>SupportedArchitectures</key>
32
29
  <array>
33
30
  <string>arm64</string>
31
+ <string>x86_64</string>
34
32
  </array>
35
33
  <key>SupportedPlatform</key>
36
34
  <string>ios</string>
35
+ <key>SupportedPlatformVariant</key>
36
+ <string>simulator</string>
37
37
  </dict>
38
38
  </array>
39
39
  <key>CFBundlePackageType</key>
@@ -1 +0,0 @@
1
- caaef682cc2f439d66f39358196b51a3c0650289d985d798d46a974dbd1642f0
@@ -1 +0,0 @@
1
- 35c89cf048bb959655efa1b64d2923b305607fa7e7f2aa10f51d528c6b29abdebebaea93ce739b3b090deae5c15ea1f123a3c52b1d31f505340355a6261d2b0b
@@ -1 +0,0 @@
1
- a769ae9333c84ab8ada191db2fddc53a27fe827c
@@ -1 +0,0 @@
1
- ce51ea4003d5a68783b1340ce0a63da894106b3a00db63f495aa9c37aac4e321
@@ -1 +0,0 @@
1
- 486714bbc50e5de8f1aff4388f2af8d1008667afc3ca1907a8b0f0281fd391c976b4d3cdb5152fea5654e50574fe631040ca200bb9cb1396746486474fa70860