expo-mail-composer 14.0.1 → 14.0.2

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.
package/CHANGELOG.md CHANGED
@@ -10,6 +10,12 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 14.0.2 — 2025-01-10
14
+
15
+ ### 🐛 Bug fixes
16
+
17
+ - [iOS] Fix mail modal callback when dismissing the composer through multitasking controls on iPad. ([#34040](https://github.com/expo/expo/pull/34040) by [@gabrieldonadel](https://github.com/gabrieldonadel))
18
+
13
19
  ## 14.0.1 — 2024-10-22
14
20
 
15
21
  _This version does not introduce any user-facing changes._
@@ -1,7 +1,7 @@
1
1
  apply plugin: 'com.android.library'
2
2
 
3
3
  group = 'host.exp.exponent'
4
- version = '14.0.1'
4
+ version = '14.0.2'
5
5
 
6
6
  def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
7
7
  apply from: expoModulesCorePlugin
@@ -14,7 +14,7 @@ android {
14
14
  namespace "expo.modules.mailcomposer"
15
15
  defaultConfig {
16
16
  versionCode 17
17
- versionName "14.0.1"
17
+ versionName "14.0.2"
18
18
  }
19
19
  }
20
20
 
@@ -4,7 +4,7 @@ import MessageUI
4
4
  import MobileCoreServices
5
5
  import ExpoModulesCore
6
6
 
7
- internal final class MailComposingSession: NSObject, MFMailComposeViewControllerDelegate {
7
+ internal final class MailComposingSession: NSObject, MFMailComposeViewControllerDelegate, UIAdaptivePresentationControllerDelegate {
8
8
  typealias ComposingCallback = (Result<[String: String], Exception>) -> ()
9
9
 
10
10
  let appContext: AppContext
@@ -47,6 +47,9 @@ internal final class MailComposingSession: NSObject, MFMailComposeViewController
47
47
  return
48
48
  }
49
49
  self.callback = callback
50
+ if let presentationController = composeController.presentationController {
51
+ presentationController.delegate = self
52
+ }
50
53
  currentViewController.present(composeController, animated: true)
51
54
  }
52
55
 
@@ -71,6 +74,14 @@ internal final class MailComposingSession: NSObject, MFMailComposeViewController
71
74
  }
72
75
  }
73
76
  }
77
+
78
+ // MARK: - UIAdaptivePresentationControllerDelegate
79
+ func presentationControllerDidDismiss(_ presentationController: UIPresentationController) {
80
+ guard let callback = self.callback else {
81
+ return
82
+ }
83
+ callback(.success(["status": "cancelled"]))
84
+ }
74
85
  }
75
86
 
76
87
  private func findMimeType(forAttachment attachment: URL) -> String {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-mail-composer",
3
- "version": "14.0.1",
3
+ "version": "14.0.2",
4
4
  "description": "Provides an API to compose mails using OS specific UI",
5
5
  "main": "build/MailComposer.js",
6
6
  "types": "build/MailComposer.d.ts",
@@ -35,10 +35,10 @@
35
35
  "preset": "expo-module-scripts"
36
36
  },
37
37
  "devDependencies": {
38
- "expo-module-scripts": "^4.0.0"
38
+ "expo-module-scripts": "^4.0.3"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "expo": "*"
42
42
  },
43
- "gitHead": "f7adac0a6b82ab484a8254a68c3808ba6f2afde5"
43
+ "gitHead": "986a4689b91f3efc527f7178a320b987c0005842"
44
44
  }