From 5a0200b283ead14b335e87747cc30b84c4abbcf7 Mon Sep 17 00:00:00 2001 From: Daniel Edwards Date: Thu, 7 Sep 2023 13:15:52 -0400 Subject: [PATCH] Changes logic of file checks to include kUTTypeFileURL for sharing in iOS --- ios/Modules/ShareMenuReactView.swift | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ios/Modules/ShareMenuReactView.swift b/ios/Modules/ShareMenuReactView.swift index e290ccec..b9f60ccd 100644 --- a/ios/Modules/ShareMenuReactView.swift +++ b/ios/Modules/ShareMenuReactView.swift @@ -106,7 +106,16 @@ public class ShareMenuReactView: NSObject { } for provider in attachments { - if provider.hasItemConformingToTypeIdentifier(kUTTypeURL as String) { + if provider.hasItemConformingToTypeIdentifier(kUTTypeFileURL as String) { + provider.loadItem(forTypeIdentifier: kUTTypeFileURL as String, options: nil) { (item, error) in + let url: URL! = item as? URL + + results.append([DATA_KEY: url.absoluteString, MIME_TYPE_KEY: self.extractMimeType(from: url)]) + + semaphore.signal() + } + semaphore.wait() + } else if provider.hasItemConformingToTypeIdentifier(kUTTypeURL as String) { provider.loadItem(forTypeIdentifier: kUTTypeURL as String, options: nil) { (item, error) in let url: URL! = item as? URL @@ -117,7 +126,7 @@ public class ShareMenuReactView: NSObject { semaphore.wait() } else if provider.hasItemConformingToTypeIdentifier(kUTTypeText as String) { provider.loadItem(forTypeIdentifier: kUTTypeText as String, options: nil) { (item, error) in - let text:String! = item as? String + let text: String! = item as? String results.append([DATA_KEY: text, MIME_TYPE_KEY: "text/plain"])